Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/net/ossl.cc
Original file line number Diff line number Diff line change
Expand Up @@ -1858,7 +1858,7 @@ SEASTAR_INTERNAL_END_IGNORE_DEPRECATIONS
char buf[256];
ERR_error_string_n(err, buf, sizeof(buf));
tls_log.warn("{} stale error on queue before {}: {}", *this, operation, buf);
SEASTAR_ASSERT(0 && "stale errors on OpenSSL error queue");
assert(0 && "stale errors on OpenSSL error queue");
Comment thread
pgellert marked this conversation as resolved.
}
Comment on lines 1858 to 1862
Copy link

Copilot AI Apr 29, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In release builds (when NDEBUG is defined), assert(...) compiles out, so this function will only log a warning and then continue without clearing the OpenSSL error queue. That leaves the queue dirty, which contradicts the function’s contract and can still poison subsequent SSL_get_error classifications (as noted in the comment above). Consider draining/clearing the error queue here in all builds, and making the termination behavior conditional on a debug-only define (e.g., SEASTAR_DEBUG) rather than relying on assert disappearing.

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


std::vector<subject_alt_name> do_get_alt_name_information(const x509_ptr &peer_cert,
Expand Down
Loading