Lots of Win32 fixes for DTLS. 1. "unsigned long long" isn't portable changed: to BN_ULLONG. 2. The LL prefix isn't allowed in VC++ but it isn't needed where it is used. 2. Avoid lots of compiler warnings about signed/unsigned mismatches. 3. Include new library directory pqueue in mk1mf build system. 4. Update symbols.
diff --git a/crypto/pqueue/pqueue.c b/crypto/pqueue/pqueue.c index 4cd9987..f4fa37f 100644 --- a/crypto/pqueue/pqueue.c +++ b/crypto/pqueue/pqueue.c
@@ -57,8 +57,9 @@ * */ +#include "cryptlib.h" +#include <openssl/bn.h> #include "pqueue.h" -#include "crypto.h" typedef struct _pqueue { @@ -67,7 +68,7 @@ } pqueue_s; pitem * -pitem_new(unsigned long long priority, void *data) +pitem_new(BN_ULLONG priority, void *data) { pitem *item = (pitem *) OPENSSL_malloc(sizeof(pitem)); if (item == NULL) return NULL; @@ -160,7 +161,7 @@ } pitem * -pqueue_find(pqueue_s *pq, unsigned long long priority) +pqueue_find(pqueue_s *pq, BN_ULLONG priority) { pitem *next, *prev = NULL; pitem *found = NULL;
diff --git a/crypto/pqueue/pqueue.h b/crypto/pqueue/pqueue.h index 2245950..2ac31e2 100644 --- a/crypto/pqueue/pqueue.h +++ b/crypto/pqueue/pqueue.h
@@ -68,14 +68,14 @@ typedef struct _pitem { - unsigned long long priority; + BN_ULLONG priority; void *data; struct _pitem *next; } pitem; typedef struct _pitem *piterator; -pitem *pitem_new(unsigned long long priority, void *data); +pitem *pitem_new(BN_ULLONG priority, void *data); void pitem_free(pitem *item); pqueue pqueue_new(void); @@ -84,7 +84,7 @@ pitem *pqueue_insert(pqueue pq, pitem *item); pitem *pqueue_peek(pqueue pq); pitem *pqueue_pop(pqueue pq); -pitem *pqueue_find(pqueue pq, unsigned long long priority); +pitem *pqueue_find(pqueue pq, BN_ULLONG priority); pitem *pqueue_iterator(pqueue pq); pitem *pqueue_next(piterator *iter);