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

Diff for /src/usr.bin/ssh/sftp-server.c between version 1.11 and 1.12

version 1.11, 2001/01/15 21:45:29 version 1.12, 2001/01/15 21:46:38
Line 720 
Line 720 
 }  }
   
 /*  /*
  * XXX, draft-ietf-secsh-filexfer-00.txt says:   * drwxr-xr-x    5 markus   markus       1024 Jan 13 18:39 .ssh
  * The recommended format for the longname field is as follows:  
  * -rwxr-xr-x   1 mjos     staff      348911 Mar 25 14:29 t-filexfer  
  * 1234567890 123 12345678 12345678 12345678 123456789012  
  */   */
 char *  char *
 ls_file(char *name, struct stat *st)  ls_file(char *name, struct stat *st)
 {  {
         char buf[1024];          int sz = 0;
         snprintf(buf, sizeof buf, "0%o %d %d %qd %d %s",          struct passwd *pw;
             st->st_mode, st->st_uid, st->st_gid, (long long)st->st_size,          struct group *gr;
             (int)st->st_mtime, name);          struct tm *ltime = localtime(&st->st_mtime);
           char *user, *group;
           char buf[1024], mode[11+1], tbuf[12+1], ubuf[11+1], gbuf[11+1];
   
           strmode(st->st_mode, mode);
           if ((pw = getpwuid(st->st_uid)) != NULL) {
                   user = pw->pw_name;
           } else {
                   snprintf(ubuf, sizeof ubuf, "%d", st->st_uid);
                   user = ubuf;
           }
           if ((gr = getgrgid(st->st_gid)) != NULL) {
                   group = gr->gr_name;
           } else {
                   snprintf(gbuf, sizeof gbuf, "%d", st->st_gid);
                   group = gbuf;
           }
           if (ltime != NULL) {
                   if (time(NULL) - st->st_mtime < (365*24*60*60)/2)
                           sz = strftime(tbuf, sizeof tbuf, "%b %e %H:%M", ltime);
                   else
                           sz = strftime(tbuf, sizeof tbuf, "%b %e  %Y", ltime);
           }
           if (sz == 0)
                   tbuf[0] = '\0';
           snprintf(buf, sizeof buf, "%s %3d %-8.8s %-8.8s %8qd %s %s", mode,
               st->st_nlink, user, group, (long long)st->st_size, tbuf, name);
         return xstrdup(buf);          return xstrdup(buf);
 }  }
   

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