-
Notifications
You must be signed in to change notification settings - Fork 2
/
deleak.c
45 lines (35 loc) · 1.12 KB
/
deleak.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/* de-leak a thing */
#include <stdio.h>
#include <openssl/ssl.h>
#include <openssl/ech.h>
int main(int argc, char **argv)
{
SSL_CONF_CTX *cctx = NULL;
SSL_CTX *ctx = NULL;
const SSL_METHOD *meth = TLS_server_method();
char *echkeyfile = "/home/stephen/code/openssl/esnistuff/echconfig.pem";
// char *echkeyfile = "/home/stephen/code/openssl/esnistuff/echkeydir/d13.pem";
// char *echkeyfile = "/home/stephen/code/openssl/esnistuff/echkeydir/dext.pem";
char *echdir = "/home/stephen/code/openssl/esnistuff/echkeydir";
int nloaded = 0;
if (argc == 2) {
echkeyfile = argv[1];
}
ctx = SSL_CTX_new(meth);
if (ctx == NULL) {
printf("Failed to init ctx - exiting\n");
return 0;
}
if (SSL_CTX_ech_server_enable(ctx,echkeyfile) != 1) {
printf("Failed to load: %s\n",echkeyfile);
} else {
printf("Loaded: %s\n",echkeyfile);
}
if (SSL_CTX_ech_readpemdir(ctx,echdir,&nloaded) != 1 ) {
printf("Failed to read dir: %s\n",echdir);
} else {
printf("Read dir: %s\n",echdir);
}
SSL_CTX_free(ctx);
return 1;
}