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

Diff for /src/usr.bin/ssh/Attic/auth-rh-rsa.c between version 1.25 and 1.25.2.2

version 1.25, 2001/06/23 03:04:42 version 1.25.2.2, 2002/03/07 17:37:46
Line 16 
Line 16 
 RCSID("$OpenBSD$");  RCSID("$OpenBSD$");
   
 #include "packet.h"  #include "packet.h"
 #include "xmalloc.h"  
 #include "uidswap.h"  #include "uidswap.h"
 #include "log.h"  #include "log.h"
 #include "servconf.h"  #include "servconf.h"
Line 24 
Line 23 
 #include "hostfile.h"  #include "hostfile.h"
 #include "pathnames.h"  #include "pathnames.h"
 #include "auth.h"  #include "auth.h"
 #include "tildexpand.h"  
 #include "canohost.h"  #include "canohost.h"
   
 /*  /*
Line 33 
Line 31 
  */   */
   
 int  int
 auth_rhosts_rsa(struct passwd *pw, const char *client_user, RSA *client_host_key)  auth_rhosts_rsa(struct passwd *pw, const char *client_user, Key *client_host_key)
 {  {
         extern ServerOptions options;          extern ServerOptions options;
         const char *canonical_hostname;          const char *canonical_hostname;
         HostStatus host_status;          HostStatus host_status;
         Key *client_key;  
   
         debug("Trying rhosts with RSA host authentication for client user %.100s", client_user);          debug("Trying rhosts with RSA host authentication for client user %.100s", client_user);
   
         if (pw == NULL || client_host_key == NULL)          if (pw == NULL || client_host_key == NULL || client_host_key->rsa == NULL)
                 return 0;                  return 0;
   
         /* Check if we would accept it using rhosts authentication. */          /* Check if we would accept it using rhosts authentication. */
Line 50 
Line 47 
                 return 0;                  return 0;
   
         canonical_hostname = get_canonical_hostname(          canonical_hostname = get_canonical_hostname(
             options.reverse_mapping_check);              options.verify_reverse_mapping);
   
         debug("Rhosts RSA authentication: canonical host %.900s", canonical_hostname);          debug("Rhosts RSA authentication: canonical host %.900s", canonical_hostname);
   
         /* wrap the RSA key into a 'generic' key */          host_status = check_key_in_hostfiles(pw, client_host_key,
         client_key = key_new(KEY_RSA1);              canonical_hostname, _PATH_SSH_SYSTEM_HOSTFILE,
         BN_copy(client_key->rsa->e, client_host_key->e);  
         BN_copy(client_key->rsa->n, client_host_key->n);  
   
         host_status = check_key_in_hostfiles(pw, client_key, canonical_hostname,  
             _PATH_SSH_SYSTEM_HOSTFILE,  
             options.ignore_user_known_hosts ? NULL : _PATH_SSH_USER_HOSTFILE);              options.ignore_user_known_hosts ? NULL : _PATH_SSH_USER_HOSTFILE);
   
         key_free(client_key);  
   
         if (host_status != HOST_OK) {          if (host_status != HOST_OK) {
                 debug("Rhosts with RSA host authentication denied: unknown or invalid host key");                  debug("Rhosts with RSA host authentication denied: unknown or invalid host key");
                 packet_send_debug("Your host key cannot be verified: unknown or invalid host key.");                  packet_send_debug("Your host key cannot be verified: unknown or invalid host key.");
Line 73 
Line 63 
         /* A matching host key was found and is known. */          /* A matching host key was found and is known. */
   
         /* Perform the challenge-response dialog with the client for the host key. */          /* Perform the challenge-response dialog with the client for the host key. */
         if (!auth_rsa_challenge_dialog(client_host_key)) {          if (!auth_rsa_challenge_dialog(client_host_key->rsa)) {
                 log("Client on %.800s failed to respond correctly to host authentication.",                  log("Client on %.800s failed to respond correctly to host authentication.",
                     canonical_hostname);                      canonical_hostname);
                 return 0;                  return 0;

Legend:
Removed from v.1.25  
changed lines
  Added in v.1.25.2.2