[BACK]Return to kexdh.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / ssh

Diff for /src/usr.bin/ssh/kexdh.c between version 1.23 and 1.24

version 1.23, 2006/08/03 03:34:42 version 1.24, 2014/01/09 23:20:00
Line 34 
Line 34 
 #include "key.h"  #include "key.h"
 #include "cipher.h"  #include "cipher.h"
 #include "kex.h"  #include "kex.h"
   #include "digest.h"
   #include "log.h"
   
 void  void
 kex_dh_hash(  kex_dh_hash(
Line 48 
Line 50 
     u_char **hash, u_int *hashlen)      u_char **hash, u_int *hashlen)
 {  {
         Buffer b;          Buffer b;
         static u_char digest[EVP_MAX_MD_SIZE];          static u_char digest[SSH_DIGEST_MAX_LENGTH];
         const EVP_MD *evp_md = EVP_sha1();  
         EVP_MD_CTX md;  
   
         buffer_init(&b);          buffer_init(&b);
         buffer_put_cstring(&b, client_version_string);          buffer_put_cstring(&b, client_version_string);
Line 72 
Line 72 
 #ifdef DEBUG_KEX  #ifdef DEBUG_KEX
         buffer_dump(&b);          buffer_dump(&b);
 #endif  #endif
         EVP_DigestInit(&md, evp_md);          if (ssh_digest_buffer(SSH_DIGEST_SHA1, &b, digest, sizeof(digest)) != 0)
         EVP_DigestUpdate(&md, buffer_ptr(&b), buffer_len(&b));                  fatal("%s: ssh_digest_buffer failed", __func__);
         EVP_DigestFinal(&md, digest, NULL);  
   
         buffer_free(&b);          buffer_free(&b);
   
 #ifdef DEBUG_KEX  #ifdef DEBUG_KEX
         dump_digest("hash", digest, EVP_MD_size(evp_md));          dump_digest("hash", digest, ssh_digest_bytes(SSH_DIGEST_SHA1));
 #endif  #endif
         *hash = digest;          *hash = digest;
         *hashlen = EVP_MD_size(evp_md);          *hashlen = ssh_digest_bytes(SSH_DIGEST_SHA1);
 }  }

Legend:
Removed from v.1.23  
changed lines
  Added in v.1.24