SCCS-vsn: libexec/ftpd/ftpd.c 5.25
#endif /* not lint */
#ifndef lint
#endif /* not lint */
#ifndef lint
-static char sccsid[] = "@(#)ftpd.c 5.24 (Berkeley) %G%";
+static char sccsid[] = "@(#)ftpd.c 5.25 (Berkeley) %G%";
struct stat st;
int (*closefunc)(), tmp;
struct stat st;
int (*closefunc)(), tmp;
fin = fopen(name, "r"), closefunc = fclose;
fin = fopen(name, "r"), closefunc = fclose;
+ st.st_size = 0;
+ } else {
char line[BUFSIZ];
(void) sprintf(line, cmd, name), name = line;
fin = ftpd_popen(line, "r"), closefunc = ftpd_pclose;
char line[BUFSIZ];
(void) sprintf(line, cmd, name), name = line;
fin = ftpd_popen(line, "r"), closefunc = ftpd_pclose;
}
if (fin == NULL) {
if (errno != 0)
perror_reply(550, name);
return;
}
}
if (fin == NULL) {
if (errno != 0)
perror_reply(550, name);
return;
}
if (cmd == 0 &&
(stat(name, &st) < 0 || (st.st_mode&S_IFMT) != S_IFREG)) {
reply(550, "%s: not a plain file.", name);
if (cmd == 0 &&
(stat(name, &st) < 0 || (st.st_mode&S_IFMT) != S_IFREG)) {
reply(550, "%s: not a plain file.", name);