diff options
author | Richard Levitte <levitte@openssl.org> | 2005-05-30 22:34:28 +0000 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2005-05-30 22:34:28 +0000 |
commit | e2ac4732cd4f0efc3dff3261d19aed0ced2c4dde (patch) | |
tree | 8fdcd150176cbbd3f5b16d9e731b561300c31030 /ssl/s3_lib.c | |
parent | e8f665b495ab460341f9aeb7c7962b277d9adc2a (diff) |
pqueue and dtls uses 64-bit values. Unfortunately, OpenSSL doesn't
have a uniform representation for those over all architectures, so a
little bit of hackery is needed.
Contributed by nagendra modadugu <nagendra@cs.stanford.edu>
Diffstat (limited to 'ssl/s3_lib.c')
-rw-r--r-- | ssl/s3_lib.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c index 2b2d2bdade..4585ac3014 100644 --- a/ssl/s3_lib.c +++ b/ssl/s3_lib.c @@ -128,6 +128,7 @@ #include "kssl_lcl.h" #include <openssl/md5.h> #include <openssl/dh.h> +#include <openssl/pq_compat.h> const char *ssl3_version_str="SSLv3" OPENSSL_VERSION_PTEXT; @@ -1441,6 +1442,8 @@ int ssl3_new(SSL *s) memset(s3,0,sizeof *s3); EVP_MD_CTX_init(&s3->finish_dgst1); EVP_MD_CTX_init(&s3->finish_dgst2); + pq_64bit_init(&(s3->rrec.seq_num)); + pq_64bit_init(&(s3->wrec.seq_num)); s->s3=s3; @@ -1475,6 +1478,9 @@ void ssl3_free(SSL *s) sk_X509_NAME_pop_free(s->s3->tmp.ca_names,X509_NAME_free); EVP_MD_CTX_cleanup(&s->s3->finish_dgst1); EVP_MD_CTX_cleanup(&s->s3->finish_dgst2); + pq_64bit_free(&(s->s3->rrec.seq_num)); + pq_64bit_free(&(s->s3->wrec.seq_num)); + OPENSSL_cleanse(s->s3,sizeof *s->s3); OPENSSL_free(s->s3); s->s3=NULL; |