#include <stdio.h>
#include <openssl/ssl.h>
static const char *list[] = {
"HIGH:!SHA256:!SHA384", "HIGH:-SHA256:!SHA384", "HIGH:+SHA256:!SHA384",
"HIGH:!SHA256:-SHA384", "HIGH:-SHA256:-SHA384", "HIGH:+SHA256:-SHA384",
"HIGH:!SHA256:+SHA384", "HIGH:-SHA256:+SHA384", "HIGH:+SHA256:+SHA384",
"HIGH:!SHA1:!SHA384", "HIGH:-SHA1:!SHA384", "HIGH:+SHA1:!SHA384",
"HIGH:!SHA1:-SHA384", "HIGH:-SHA1:-SHA384", "HIGH:+SHA1:-SHA384",
"HIGH:!SHA1:+SHA384", "HIGH:-SHA1:+SHA384", "HIGH:+SHA1:+SHA384",
"HIGH:!OwO:!SHA384", "HIGH:-OwO:!SHA384", "HIGH:+OwO:!SHA384",
"HIGH:!OwO:-SHA384", "HIGH:-OwO:-SHA384", "HIGH:+OwO:-SHA384",
"HIGH:!OwO:+SHA384", "HIGH:-OwO:+SHA384", "HIGH:+OwO:+SHA384",
};
int
main() {
__auto_type ctx = SSL_CTX_new(TLS_client_method());
for (__auto_type i = 0; i < 27; i++) {
if (SSL_CTX_set_cipher_list(ctx, list[i]) != 1) {
fprintf(stderr, "%s\n", list[i]);
}
}
}
HIGH:!SHA256:!SHA384
HIGH:-SHA256:!SHA384
HIGH:!SHA256:-SHA384
HIGH:-SHA256:-SHA384
Problem:
When using
SSL_CTX_set_cipher_list, AWS-LC fails if bothSHA256andSHA384aliases are either killed or removed.Considering the following code:
With AWS-LC, I get the following output whereas it should've been empty:
Requirements / Acceptance Criteria: