Implement new multi-threading API
[openssl.git] / test / dtlsv1listentest.c
index 28b493e091b3b06860986a2f27d307840fd13e61..6eef1b5e4ebd7e7c5e0517fb069c52ac3d8a9a5f 100644 (file)
  */
 
 #include <string.h>
-#include <sys/socket.h>
 #include <openssl/ssl.h>
 #include <openssl/bio.h>
 #include <openssl/err.h>
 #include <openssl/conf.h>
-#include <openssl/engine.h>
+#ifndef OPENSSL_NO_ENGINE
+ #include <openssl/engine.h>
+#endif
 #include "e_os.h"
 
 /* Just a ClientHello without a cookie */
-const unsigned char clienthello_nocookie[] = {
+static const unsigned char clienthello_nocookie[] = {
     0x16, /* Handshake */
     0xFE, 0xFF, /* DTLSv1.0 */
     0x00, 0x00, /* Epoch */
@@ -91,7 +92,7 @@ const unsigned char clienthello_nocookie[] = {
 };
 
 /* First fragment of a ClientHello without a cookie */
-const unsigned char clienthello_nocookie_frag[] = {
+static const unsigned char clienthello_nocookie_frag[] = {
     0x16, /* Handshake */
     0xFE, 0xFF, /* DTLSv1.0 */
     0x00, 0x00, /* Epoch */
@@ -111,7 +112,7 @@ const unsigned char clienthello_nocookie_frag[] = {
 };
 
 /* First fragment of a ClientHello which is too short */
-const unsigned char clienthello_nocookie_short[] = {
+static const unsigned char clienthello_nocookie_short[] = {
     0x16, /* Handshake */
     0xFE, 0xFF, /* DTLSv1.0 */
     0x00, 0x00, /* Epoch */
@@ -130,7 +131,7 @@ const unsigned char clienthello_nocookie_short[] = {
 };
 
 /* Second fragment of a ClientHello */
-const unsigned char clienthello_2ndfrag[] = {
+static const unsigned char clienthello_2ndfrag[] = {
     0x16, /* Handshake */
     0xFE, 0xFF, /* DTLSv1.0 */
     0x00, 0x00, /* Epoch */
@@ -156,7 +157,7 @@ const unsigned char clienthello_2ndfrag[] = {
 };
 
 /* A ClientHello with a good cookie */
-const unsigned char clienthello_cookie[] = {
+static const unsigned char clienthello_cookie[] = {
     0x16, /* Handshake */
     0xFE, 0xFF, /* DTLSv1.0 */
     0x00, 0x00, /* Epoch */
@@ -184,7 +185,7 @@ const unsigned char clienthello_cookie[] = {
 };
 
 /* A fragmented ClientHello with a good cookie */
-const unsigned char clienthello_cookie_frag[] = {
+static const unsigned char clienthello_cookie_frag[] = {
     0x16, /* Handshake */
     0xFE, 0xFF, /* DTLSv1.0 */
     0x00, 0x00, /* Epoch */
@@ -207,7 +208,7 @@ const unsigned char clienthello_cookie_frag[] = {
 
 
 /* A ClientHello with a bad cookie */
-const unsigned char clienthello_badcookie[] = {
+static const unsigned char clienthello_badcookie[] = {
     0x16, /* Handshake */
     0xFE, 0xFF, /* DTLSv1.0 */
     0x00, 0x00, /* Epoch */
@@ -235,7 +236,7 @@ const unsigned char clienthello_badcookie[] = {
 };
 
 /* A fragmented ClientHello with the fragment boundary mid cookie */
-const unsigned char clienthello_cookie_short[] = {
+static const unsigned char clienthello_cookie_short[] = {
     0x16, /* Handshake */
     0xFE, 0xFF, /* DTLSv1.0 */
     0x00, 0x00, /* Epoch */
@@ -257,14 +258,14 @@ const unsigned char clienthello_cookie_short[] = {
 };
 
 /* Bad record - too short */
-const unsigned char record_short[] = {
+static const unsigned char record_short[] = {
     0x16, /* Handshake */
     0xFE, 0xFF, /* DTLSv1.0 */
     0x00, 0x00, /* Epoch */
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00 /* Record sequence number */
 };
 
-const unsigned char verify[] = {
+static const unsigned char verify[] = {
     0x16, /* Handshake */
     0xFE, 0xFF, /* DTLSv1.0 */
     0x00, 0x00, /* Epoch */
@@ -281,7 +282,7 @@ const unsigned char verify[] = {
     0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13 /* Cookie */
 };
 
-struct {
+static struct {
     const unsigned char *in;
     unsigned int inlen;
     /*
@@ -378,11 +379,7 @@ int main(void)
     char *data;
     long datalen;
     int ret, success = 0;
-    size_t i;
-
-    /* Initialise libssl */
-    SSL_load_error_strings();
-    SSL_library_init();
+    long i;
 
     ctx = SSL_CTX_new(DTLS_server_method());
     if (ctx == NULL || peer == NULL)
@@ -402,7 +399,7 @@ int main(void)
     SSL_set_wbio(ssl, outbio);
 
     success = 1;
-    for (i = 0; i < OSSL_NELEM(testpackets) && success; i++) {
+    for (i = 0; i < (long)OSSL_NELEM(testpackets) && success; i++) {
         inbio = BIO_new_mem_buf((char *)testpackets[i].in,
                                 testpackets[i].inlen);
         if (inbio == NULL) {
@@ -461,15 +458,7 @@ int main(void)
     SSL_free(ssl);
     SSL_CTX_free(ctx);
     BIO_free(inbio);
-    /* Unitialise libssl */
-#ifndef OPENSSL_NO_ENGINE
-    ENGINE_cleanup();
-#endif
-    CONF_modules_unload(1);
-    CRYPTO_cleanup_all_ex_data();
-    EVP_cleanup();
-    ERR_remove_thread_state(NULL);
-    ERR_free_strings();
+    OPENSSL_free(peer);
 #ifndef OPENSSL_NO_CRYPTO_MDEBUG
     CRYPTO_mem_leaks_fp(stderr);
 #endif