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

Diff for /src/usr.bin/ssh/authfd.c between version 1.59 and 1.60

version 1.59, 2003/04/08 20:21:28 version 1.60, 2003/06/11 11:18:38
Line 589 
Line 589 
 }  }
   
 int  int
 ssh_update_card(AuthenticationConnection *auth, int add, const char *reader_id, const char *pin)  ssh_update_card(AuthenticationConnection *auth, int add,
       const char *reader_id, const char *pin, u_int life, u_int confirm)
 {  {
         Buffer msg;          Buffer msg;
         int type;          int type, constrained = (life || confirm);
   
           if (add) {
                   type = constrained ?
                       SSH_AGENTC_ADD_SMARTCARD_KEY_CONSTRAINED :
                       SSH_AGENTC_ADD_SMARTCARD_KEY;
           } else
                   type = SSH_AGENTC_REMOVE_SMARTCARD_KEY;
   
         buffer_init(&msg);          buffer_init(&msg);
         buffer_put_char(&msg, add ? SSH_AGENTC_ADD_SMARTCARD_KEY :          buffer_put_char(&msg, type);
             SSH_AGENTC_REMOVE_SMARTCARD_KEY);  
         buffer_put_cstring(&msg, reader_id);          buffer_put_cstring(&msg, reader_id);
         buffer_put_cstring(&msg, pin);          buffer_put_cstring(&msg, pin);
   
           if (constrained) {
                   if (life != 0) {
                           buffer_put_char(&msg, SSH_AGENT_CONSTRAIN_LIFETIME);
                           buffer_put_int(&msg, life);
                   }
                   if (confirm != 0)
                           buffer_put_char(&msg, SSH_AGENT_CONSTRAIN_CONFIRM);
           }
   
         if (ssh_request_reply(auth, &msg, &msg) == 0) {          if (ssh_request_reply(auth, &msg, &msg) == 0) {
                 buffer_free(&msg);                  buffer_free(&msg);
                 return 0;                  return 0;

Legend:
Removed from v.1.59  
changed lines
  Added in v.1.60