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

Diff for /src/usr.bin/ssh/Attic/sshconnect1.c between version 1.11 and 1.12

version 1.11, 2000/11/25 16:42:53 version 1.12, 2000/12/10 17:01:53
Line 604 
Line 604 
         int type, i;          int type, i;
         int payload_len;          int payload_len;
         unsigned int clen;          unsigned int clen;
           char prompt[1024];
         char *challenge, *response;          char *challenge, *response;
   
         debug("Doing skey authentication.");          debug("Doing skey authentication.");
   
         /* request a challenge */  
         packet_start(SSH_CMSG_AUTH_TIS);  
         packet_send();  
         packet_write_wait();  
   
         type = packet_read(&payload_len);  
         if (type != SSH_SMSG_FAILURE &&  
             type != SSH_SMSG_AUTH_TIS_CHALLENGE) {  
                 packet_disconnect("Protocol error: got %d in response "  
                                   "to skey-auth", type);  
         }  
         if (type != SSH_SMSG_AUTH_TIS_CHALLENGE) {  
                 debug("No challenge for skey authentication.");  
                 return 0;  
         }  
         challenge = packet_get_string(&clen);  
         packet_integrity_check(payload_len, (4 + clen), type);  
         if (options.cipher == SSH_CIPHER_NONE)  
                 log("WARNING: Encryption is disabled! "  
                     "Reponse will be transmitted in clear text.");  
         fprintf(stderr, "%s\n", challenge);  
         xfree(challenge);  
         fflush(stderr);  
         for (i = 0; i < options.number_of_password_prompts; i++) {          for (i = 0; i < options.number_of_password_prompts; i++) {
                   /* request a challenge */
                   packet_start(SSH_CMSG_AUTH_TIS);
                   packet_send();
                   packet_write_wait();
   
                   type = packet_read(&payload_len);
                   if (type != SSH_SMSG_FAILURE &&
                       type != SSH_SMSG_AUTH_TIS_CHALLENGE) {
                           packet_disconnect("Protocol error: got %d in response "
                               "to skey-auth", type);
                   }
                   if (type != SSH_SMSG_AUTH_TIS_CHALLENGE) {
                           debug("No challenge for skey authentication.");
                           return 0;
                   }
                   challenge = packet_get_string(&clen);
                   packet_integrity_check(payload_len, (4 + clen), type);
                   snprintf(prompt, sizeof prompt, "%s\nResponse: ", challenge);
                   xfree(challenge);
                 if (i != 0)                  if (i != 0)
                         error("Permission denied, please try again.");                          error("Permission denied, please try again.");
                 response = read_passphrase("Response: ", 0);                  if (options.cipher == SSH_CIPHER_NONE)
                           log("WARNING: Encryption is disabled! "
                               "Reponse will be transmitted in clear text.");
                   response = read_passphrase(prompt, 0);
                   if (strcmp(response, "") == 0) {
                           xfree(response);
                           break;
                   }
                 packet_start(SSH_CMSG_AUTH_TIS_RESPONSE);                  packet_start(SSH_CMSG_AUTH_TIS_RESPONSE);
                 packet_put_string(response, strlen(response));                  packet_put_string(response, strlen(response));
                 memset(response, 0, strlen(response));                  memset(response, 0, strlen(response));
Line 646 
Line 650 
                         return 1;                          return 1;
                 if (type != SSH_SMSG_FAILURE)                  if (type != SSH_SMSG_FAILURE)
                         packet_disconnect("Protocol error: got %d in response "                          packet_disconnect("Protocol error: got %d in response "
                                           "to skey-auth-reponse", type);                              "to skey-auth-reponse", type);
         }          }
         /* failure */          /* failure */
         return 0;          return 0;

Legend:
Removed from v.1.11  
changed lines
  Added in v.1.12