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

Diff for /src/usr.bin/ssh/Attic/sftp-int.c between version 1.15 and 1.16

version 1.15, 2001/02/07 22:55:47 version 1.16, 2001/02/08 15:02:01
Line 171 
Line 171 
         if (!args || !*args)          if (!args || !*args)
                 local_do_shell("ls");                  local_do_shell("ls");
         else {          else {
                 char *buf = xmalloc(8 + strlen(args) + 1);                  int len = sizeof("/bin/ls ") + strlen(args) + 1;
                   char *buf = xmalloc(len);
   
                 /* XXX: quoting - rip quoting code from ftp? */                  /* XXX: quoting - rip quoting code from ftp? */
                 sprintf(buf, "/bin/ls %s", args);                  snprintf(buf, len, "/bin/ls %s", args);
                 local_do_shell(buf);                  local_do_shell(buf);
                   xfree(buf);
         }          }
 }  }
   
Line 227 
Line 229 
         if (!*cp) {          if (!*cp) {
                 *cpp = cp;                  *cpp = cp;
                 *path = NULL;                  *path = NULL;
   
                 return (0);                  return (0);
         }          }
   
Line 240 
Line 241 
                         error("Unterminated quote");                          error("Unterminated quote");
                         goto fail;                          goto fail;
                 }                  }
   
                 if (cp == end) {                  if (cp == end) {
                         error("Empty quotes");                          error("Empty quotes");
                         goto fail;                          goto fail;
                 }                  }
   
                 *cpp = end + 1 + strspn(end + 1, WHITESPACE);                  *cpp = end + 1 + strspn(end + 1, WHITESPACE);
         } else {          } else {
                 /* Read to end of filename */                  /* Read to end of filename */
                 end = strpbrk(cp, WHITESPACE);                  end = strpbrk(cp, WHITESPACE);
                 if (end == NULL)                  if (end == NULL)
                         end = strchr(cp, '\0');                          end = strchr(cp, '\0');
   
                 *cpp = end + strspn(end, WHITESPACE);                  *cpp = end + strspn(end, WHITESPACE);
         }          }
   
Line 261 
Line 259 
         *path = xmalloc(i + 1);          *path = xmalloc(i + 1);
         memcpy(*path, cp, i);          memcpy(*path, cp, i);
         (*path)[i] = '\0';          (*path)[i] = '\0';
   
         return(0);          return(0);
   
  fail:   fail:
         *path = NULL;          *path = NULL;
   
         return (-1);          return (-1);
 }  }
   
Line 278 
Line 274 
         debug("XXX: P = \"%s\"", p);          debug("XXX: P = \"%s\"", p);
   
         cp = strrchr(p, '/');          cp = strrchr(p, '/');
   
         if (cp == NULL) {          if (cp == NULL) {
                 *ifp = xstrdup(p);                  *ifp = xstrdup(p);
                 return(0);                  return(0);
Line 429 
Line 424 
         }          }
   
         *cpp = cp;          *cpp = cp;
   
         return(cmdnum);          return(cmdnum);
 }  }
   
Line 590 
Line 584 
                 xfree(path1);                  xfree(path1);
         if (path2)          if (path2)
                 xfree(path2);                  xfree(path2);
   
         return(0);          return(0);
 }  }
   

Legend:
Removed from v.1.15  
changed lines
  Added in v.1.16