@@ -334,50 +334,64 @@ def generate_libwolfssl():
334334)
335335
336336cdef = """
337- /**
337+ /*
338338 * Constants
339339 */
340340 static const long SOCKET_PEER_CLOSED_E;
341341
342- /**
342+ /*
343343 * Types
344344 */
345345 typedef unsigned char byte;
346346 typedef unsigned int word32;
347347
348348 extern int OLDTLS_ENABLED;
349349
350+ /*
351+ * Opaque structs.
352+ */
350353 typedef ... WOLFSSL_CTX;
351354 typedef ... WOLFSSL;
352355 typedef ... WOLFSSL_X509;
353356 typedef ... WOLFSSL_X509_EXTENSION;
354357 typedef ... WOLFSSL_X509_STORE_CTX;
355358 typedef ... WOLFSSL_X509_NAME;
356359 typedef ... WOLFSSL_X509_NAME_ENTRY;
357- typedef ... WOLFSSL_ALERT_HISTORY;
358360 typedef ... WOLFSSL_METHOD;
359361 typedef ... WOLFSSL_ASN1_TIME;
360362 typedef ... WOLFSSL_ASN1_GENERALIZEDTIME;
361363 typedef ... WOLFSSL_ASN1_STRING;
362364 typedef ... WOLFSSL_ASN1_OBJECT;
363365
366+ /*
367+ * Non-opaque structs, where we need access to fields.
368+ */
369+ typedef struct WOLFSSL_ALERT {
370+ int code;
371+ int level;
372+ } WOLFSSL_ALERT;
373+ typedef struct WOLFSSL_ALERT_HISTORY {
374+ WOLFSSL_ALERT last_rx;
375+ WOLFSSL_ALERT last_tx;
376+ } WOLFSSL_ALERT_HISTORY;
377+
364378 typedef int (*VerifyCallback)(int, WOLFSSL_X509_STORE_CTX*);
365379 typedef int pem_password_cb(char*, int, int, void*);
366380 typedef int (*CallbackSniRecv)(WOLFSSL*, int*, void*);
367381
368- /**
382+ /*
369383 * Memory
370384 */
371385 void wolfSSL_Free(void*);
372386 void wolfSSL_OPENSSL_free(void*);
373387
374- /**
388+ /*
375389 * Debugging
376390 */
377391 void wolfSSL_Debugging_ON();
378392 void wolfSSL_Debugging_OFF();
379393
380- /**
394+ /*
381395 * SSL/TLS Method functions
382396 */
383397"""
@@ -417,7 +431,7 @@ def generate_libwolfssl():
417431cdef += """
418432 WOLFSSL_METHOD* wolfTLSv1_2_method(void);
419433
420- /**
434+ /*
421435 * SSL/TLS Context functions
422436 */
423437 WOLFSSL_CTX* wolfSSL_CTX_new(WOLFSSL_METHOD*);
@@ -440,7 +454,7 @@ def generate_libwolfssl():
440454 CallbackSniRecv);
441455 long wolfSSL_CTX_set_mode(WOLFSSL_CTX*, long);
442456
443- /**
457+ /*
444458 * SSL/TLS Session functions
445459 */
446460 void wolfSSL_Init();
@@ -472,7 +486,7 @@ def generate_libwolfssl():
472486 int wolfSSL_dtls_free_peer(void*);
473487 int wolfSSL_dtls_set_peer(WOLFSSL*, void*, unsigned int);
474488
475- /**
489+ /*
476490 * WOLFSSL_X509 functions
477491 */
478492 char* wolfSSL_X509_get_subjectCN(void*);
@@ -515,7 +529,7 @@ def generate_libwolfssl():
515529 WOLFSSL_X509_EXTENSION*);
516530 WOLFSSL_X509* wolfSSL_X509_dup(WOLFSSL_X509*);
517531
518- /**
532+ /*
519533 * ASN.1
520534 */
521535 int wolfSSL_ASN1_STRING_length(WOLFSSL_ASN1_STRING*);
@@ -531,7 +545,7 @@ def generate_libwolfssl():
531545 int wolfSSL_ASN1_STRING_to_UTF8(unsigned char **,
532546 WOLFSSL_ASN1_STRING*);
533547
534- /**
548+ /*
535549 * Misc.
536550 */
537551 int wolfSSL_library_init(void);
0 commit comments