*/
#include <string.h>
-#include <sys/socket.h>
#include <openssl/ssl.h>
#include <openssl/bio.h>
#include <openssl/err.h>
#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 */
};
/* 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 */
};
/* 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 */
};
/* 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 */
};
/* 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 */
};
/* 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 */
/* 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 */
};
/* 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 */
};
/* 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 */
0x0D, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13 /* Cookie */
};
-struct {
+static struct {
const unsigned char *in;
unsigned int inlen;
/*
int ret, success = 0;
size_t i;
- /* Initialise libssl */
- SSL_load_error_strings();
- SSL_library_init();
-
ctx = SSL_CTX_new(DTLS_server_method());
if (ctx == NULL || peer == NULL)
goto err;
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