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

Diff for /src/usr.bin/ssh/Attic/kexc25519s.c between version 1.3 and 1.4

version 1.3, 2014/01/09 23:20:00 version 1.4, 2014/01/12 08:13:13
Line 40 
Line 40 
 void  void
 kexc25519_server(Kex *kex)  kexc25519_server(Kex *kex)
 {  {
         BIGNUM *shared_secret;  
         Key *server_host_private, *server_host_public;          Key *server_host_private, *server_host_public;
         u_char *server_host_key_blob = NULL, *signature = NULL;          u_char *server_host_key_blob = NULL, *signature = NULL;
         u_char server_key[CURVE25519_SIZE];          u_char server_key[CURVE25519_SIZE];
Line 48 
Line 47 
         u_char server_pubkey[CURVE25519_SIZE];          u_char server_pubkey[CURVE25519_SIZE];
         u_char *hash;          u_char *hash;
         u_int slen, sbloblen, hashlen;          u_int slen, sbloblen, hashlen;
           Buffer shared_secret;
   
         /* generate private key */          /* generate private key */
         kexc25519_keygen(server_key, server_pubkey);          kexc25519_keygen(server_key, server_pubkey);
Line 74 
Line 74 
         dump_digest("client public key:", client_pubkey, CURVE25519_SIZE);          dump_digest("client public key:", client_pubkey, CURVE25519_SIZE);
 #endif  #endif
   
         shared_secret = kexc25519_shared_key(server_key, client_pubkey);          buffer_init(&shared_secret);
           kexc25519_shared_key(server_key, client_pubkey, &shared_secret);
   
         /* calc H */          /* calc H */
         key_to_blob(server_host_public, &server_host_key_blob, &sbloblen);          key_to_blob(server_host_public, &server_host_key_blob, &sbloblen);
Line 87 
Line 88 
             server_host_key_blob, sbloblen,              server_host_key_blob, sbloblen,
             client_pubkey,              client_pubkey,
             server_pubkey,              server_pubkey,
             shared_secret,              buffer_ptr(&shared_secret), buffer_len(&shared_secret),
             &hash, &hashlen              &hash, &hashlen
         );          );
   
Line 115 
Line 116 
         free(server_host_key_blob);          free(server_host_key_blob);
         /* have keys, free server key */          /* have keys, free server key */
         free(client_pubkey);          free(client_pubkey);
         kex_derive_keys(kex, hash, hashlen, shared_secret);  
         BN_clear_free(shared_secret);          kex_derive_keys(kex, hash, hashlen,
               buffer_ptr(&shared_secret), buffer_len(&shared_secret));
           buffer_free(&shared_secret);
         kex_finish(kex);          kex_finish(kex);
 }  }

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4