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

Diff for /src/usr.bin/ssh/ssh.c between version 1.325 and 1.326

version 1.325, 2009/03/17 21:37:00 version 1.326, 2009/07/02 02:11:47
Line 42 
Line 42 
   
 #include <sys/types.h>  #include <sys/types.h>
 #include <sys/ioctl.h>  #include <sys/ioctl.h>
   #include <sys/param.h>
 #include <sys/queue.h>  #include <sys/queue.h>
 #include <sys/resource.h>  #include <sys/resource.h>
 #include <sys/socket.h>  #include <sys/socket.h>
Line 195 
Line 196 
 int  int
 main(int ac, char **av)  main(int ac, char **av)
 {  {
         int i, opt, exit_status, use_syslog;          int i, r, opt, exit_status, use_syslog;
         char *p, *cp, *line, *argv0, buf[256];          char *p, *cp, *line, *argv0, buf[MAXPATHLEN];
         struct stat st;          struct stat st;
         struct passwd *pw;          struct passwd *pw;
         int dummy, timeout_ms;          int dummy, timeout_ms;
Line 601 
Line 602 
                         fatal("Can't open user config file %.100s: "                          fatal("Can't open user config file %.100s: "
                             "%.100s", config, strerror(errno));                              "%.100s", config, strerror(errno));
         } else {          } else {
                 snprintf(buf, sizeof buf, "%.100s/%.100s", pw->pw_dir,                  r = snprintf(buf, sizeof buf, "%s/%s", pw->pw_dir,
                     _PATH_SSH_USER_CONFFILE);                      _PATH_SSH_USER_CONFFILE);
                 (void)read_config_file(buf, host, &options, 1);                  if (r > 0 && (size_t)r < sizeof(buf))
                           (void)read_config_file(buf, host, &options, 1);
   
                 /* Read systemwide configuration file after use config. */                  /* Read systemwide configuration file after use config. */
                 (void)read_config_file(_PATH_HOST_CONFIG_FILE, host,                  (void)read_config_file(_PATH_HOST_CONFIG_FILE, host,
Line 748 
Line 750 
          * Now that we are back to our own permissions, create ~/.ssh           * Now that we are back to our own permissions, create ~/.ssh
          * directory if it doesn't already exist.           * directory if it doesn't already exist.
          */           */
         snprintf(buf, sizeof buf, "%.100s%s%.100s", pw->pw_dir,          r = snprintf(buf, sizeof buf, "%s%s%s", pw->pw_dir,
             strcmp(pw->pw_dir, "/") ? "/" : "", _PATH_SSH_USER_DIR);              strcmp(pw->pw_dir, "/") ? "/" : "", _PATH_SSH_USER_DIR);
         if (stat(buf, &st) < 0)          if (r > 0 && (size_t)r < sizeof(buf) && stat(buf, &st) < 0)
                 if (mkdir(buf, 0700) < 0)                  if (mkdir(buf, 0700) < 0)
                         error("Could not create directory '%.200s'.", buf);                          error("Could not create directory '%.200s'.", buf);
   

Legend:
Removed from v.1.325  
changed lines
  Added in v.1.326