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

Diff for /src/usr.bin/ssh/ssh-agent.c between version 1.105.2.1 and 1.105.2.2

version 1.105.2.1, 2003/04/01 00:12:14 version 1.105.2.2, 2003/09/16 21:20:27
Line 257 
Line 257 
                 /* The response is MD5 of decrypted challenge plus session id. */                  /* The response is MD5 of decrypted challenge plus session id. */
                 len = BN_num_bytes(challenge);                  len = BN_num_bytes(challenge);
                 if (len <= 0 || len > 32) {                  if (len <= 0 || len > 32) {
                         log("process_authentication_challenge: bad challenge length %d", len);                          logit("process_authentication_challenge: bad challenge length %d", len);
                         goto failure;                          goto failure;
                 }                  }
                 memset(buf, 0, 32);                  memset(buf, 0, 32);
Line 346 
Line 346 
                 buffer_get_bignum(&e->request, key->rsa->n);                  buffer_get_bignum(&e->request, key->rsa->n);
   
                 if (bits != key_size(key))                  if (bits != key_size(key))
                         log("Warning: identity keysize mismatch: actual %u, announced %u",                          logit("Warning: identity keysize mismatch: actual %u, announced %u",
                             key_size(key), bits);                              key_size(key), bits);
                 break;                  break;
         case 2:          case 2:
Line 576 
Line 576 
 process_add_smartcard_key (SocketEntry *e)  process_add_smartcard_key (SocketEntry *e)
 {  {
         char *sc_reader_id = NULL, *pin;          char *sc_reader_id = NULL, *pin;
         int i, version, success = 0;          int i, version, success = 0, death = 0, confirm = 0;
         Key **keys, *k;          Key **keys, *k;
         Identity *id;          Identity *id;
         Idtab *tab;          Idtab *tab;
   
         sc_reader_id = buffer_get_string(&e->request, NULL);          sc_reader_id = buffer_get_string(&e->request, NULL);
         pin = buffer_get_string(&e->request, NULL);          pin = buffer_get_string(&e->request, NULL);
   
           while (buffer_len(&e->request)) {
                   switch (buffer_get_char(&e->request)) {
                   case SSH_AGENT_CONSTRAIN_LIFETIME:
                           death = time(NULL) + buffer_get_int(&e->request);
                           break;
                   case SSH_AGENT_CONSTRAIN_CONFIRM:
                           confirm = 1;
                           break;
                   default:
                           break;
                   }
           }
           if (lifetime && !death)
                   death = time(NULL) + lifetime;
   
         keys = sc_get_keys(sc_reader_id, pin);          keys = sc_get_keys(sc_reader_id, pin);
         xfree(sc_reader_id);          xfree(sc_reader_id);
         xfree(pin);          xfree(pin);
Line 598 
Line 614 
                 if (lookup_identity(k, version) == NULL) {                  if (lookup_identity(k, version) == NULL) {
                         id = xmalloc(sizeof(Identity));                          id = xmalloc(sizeof(Identity));
                         id->key = k;                          id->key = k;
                         id->comment = xstrdup("smartcard key");                          id->comment = sc_get_key_label(k);
                         id->death = 0;                          id->death = death;
                         id->confirm = 0;                          id->confirm = confirm;
                         TAILQ_INSERT_TAIL(&tab->idlist, id, next);                          TAILQ_INSERT_TAIL(&tab->idlist, id, next);
                         tab->nentries++;                          tab->nentries++;
                         success = 1;                          success = 1;
Line 744 
Line 760 
                 break;                  break;
 #ifdef SMARTCARD  #ifdef SMARTCARD
         case SSH_AGENTC_ADD_SMARTCARD_KEY:          case SSH_AGENTC_ADD_SMARTCARD_KEY:
           case SSH_AGENTC_ADD_SMARTCARD_KEY_CONSTRAINED:
                 process_add_smartcard_key(e);                  process_add_smartcard_key(e);
                 break;                  break;
         case SSH_AGENTC_REMOVE_SMARTCARD_KEY:          case SSH_AGENTC_REMOVE_SMARTCARD_KEY:

Legend:
Removed from v.1.105.2.1  
changed lines
  Added in v.1.105.2.2