diff options
Diffstat (limited to 'src/appl/gssftp')
-rw-r--r-- | src/appl/gssftp/ChangeLog | 10 | ||||
-rw-r--r-- | src/appl/gssftp/configure.in | 14 | ||||
-rw-r--r-- | src/appl/gssftp/ftp/ChangeLog | 13 | ||||
-rw-r--r-- | src/appl/gssftp/ftp/cmds.c | 10 | ||||
-rw-r--r-- | src/appl/gssftp/ftp/ftp.c | 8 | ||||
-rw-r--r-- | src/appl/gssftp/ftp/ftp_var.h | 2 | ||||
-rw-r--r-- | src/appl/gssftp/ftp/pclose.c | 5 | ||||
-rw-r--r-- | src/appl/gssftp/ftpd/ChangeLog | 8 | ||||
-rw-r--r-- | src/appl/gssftp/ftpd/Makefile.in | 3 | ||||
-rw-r--r-- | src/appl/gssftp/ftpd/ftpd.c | 5 | ||||
-rw-r--r-- | src/appl/gssftp/ftpd/popen.c | 5 |
11 files changed, 44 insertions, 39 deletions
diff --git a/src/appl/gssftp/ChangeLog b/src/appl/gssftp/ChangeLog index 9f184f7..2a6a5fd 100644 --- a/src/appl/gssftp/ChangeLog +++ b/src/appl/gssftp/ChangeLog @@ -1,3 +1,13 @@ +2003-06-05 Sam Hartman <hartmans@mit.edu> + + * configure.in: Don't check for vfork as we no longer use it + +2003-05-23 Ken Raeburn <raeburn@mit.edu> + + * configure.in: Don't use libkrb524.a any more. + * ftpd.c: Don't include krb524.h. + (main): Don't call krb524_init_ets. + 2003-01-10 Ken Raeburn <raeburn@mit.edu> * configure.in: Use V5_AC_OUTPUT_MAKEFILE instead of diff --git a/src/appl/gssftp/configure.in b/src/appl/gssftp/configure.in index 35ca40e..bf6d3b8 100644 --- a/src/appl/gssftp/configure.in +++ b/src/appl/gssftp/configure.in @@ -12,7 +12,6 @@ DECLARE_SYS_ERRLIST AC_CHECK_SIZEOF(short) AC_CHECK_SIZEOF(int) AC_CHECK_SIZEOF(long) -AC_FUNC_VFORK AC_HEADER_STDARG AC_CHECK_HEADER(termios.h,[AC_CHECK_FUNC(cfsetispeed,AC_DEFINE(POSIX_TERMIOS))]) AC_CHECK_HEADERS(unistd.h stdlib.h string.h sys/select.h sys/sockio.h paths.h) @@ -53,19 +52,6 @@ AC_MSG_RESULT($krb5_cv_shadow_pwd) if test $krb5_cv_shadow_pwd = yes; then AC_DEFINE(HAVE_SHADOW) fi -AC_ARG_WITH([krb4], -[ --without-krb4 don't include Kerberos V4 backwards compatibility - --with-krb4 use V4 libraries included with V5 (default) - --with-krb4=KRB4DIR use preinstalled V4 libraries], -, -withval=yes -)dnl -if test $withval = no; then - AC_MSG_RESULT(no krb4 support) -else - AC_MSG_RESULT(Adding in krb4 support) - FTPD_LIBS="../../../krb524/libkrb524.a" -fi case $krb5_cv_host in alpha*-dec-osf*) AC_CHECK_LIB(security,setluid, diff --git a/src/appl/gssftp/ftp/ChangeLog b/src/appl/gssftp/ftp/ChangeLog index ba67eb5..445734f 100644 --- a/src/appl/gssftp/ftp/ChangeLog +++ b/src/appl/gssftp/ftp/ChangeLog @@ -1,3 +1,16 @@ +2003-06-16 Ken Raeburn <raeburn@mit.edu> + + * ftp.c (recvrequest): Add new argument indicating whether "-" and + "|..." special treatment should be disabled. + * ftp_var.h (recvrequest): Update declaration. + * cmds.c (remglob, ls, mls): Pass 0 as the extra argument. + (mget): Pass 1. + (getit): Pass 1 iff only one filename was supplied. + +2003-06-05 Sam Hartman <hartmans@mit.edu> + + * pclose.c (mypopen): use fork not vfork + 2003-01-09 Ken Raeburn <raeburn@mit.edu> * ftp.c (hookup, initconn, dataconn): Use socklen_t when passing diff --git a/src/appl/gssftp/ftp/cmds.c b/src/appl/gssftp/ftp/cmds.c index 38d7214..b9cb2a2 100644 --- a/src/appl/gssftp/ftp/cmds.c +++ b/src/appl/gssftp/ftp/cmds.c @@ -940,7 +940,7 @@ usage: } recvrequest("RETR", argv[2], argv[1], rmode, - argv[1] != oldargv1 || argv[2] != oldargv2); + argv[1] != oldargv1 || argv[2] != oldargv2, loc); restart_point = 0; return (0); } @@ -1017,7 +1017,7 @@ void mget(argc, argv) tp = domap(tp); } recvrequest("RETR", tp, cp, "w", - tp != cp || !interactive); + tp != cp || !interactive, 1); if (!mflag && fromatty) { ointer = interactive; interactive = 1; @@ -1085,7 +1085,7 @@ remglob(argv,doswitch) pswitch(!proxy); } for (rmode = "w"; *++argv != NULL; rmode = "a") - recvrequest ("NLST", temp, *argv, rmode, 0); + recvrequest ("NLST", temp, *argv, rmode, 0, 0); if (doswitch) { pswitch(!proxy); } @@ -1455,7 +1455,7 @@ void ls(argc, argv) code = -1; return; } - recvrequest(cmd, argv[2], argv[1], "w", 0); + recvrequest(cmd, argv[2], argv[1], "w", 0, 0); } /* @@ -1493,7 +1493,7 @@ usage: (void) setjmp(jabort); for (i = 1; mflag && i < argc-1; ++i) { *rmode = (i == 1) ? 'w' : 'a'; - recvrequest(cmd, dest, argv[i], rmode, 0); + recvrequest(cmd, dest, argv[i], rmode, 0, 0); if (!mflag && fromatty) { ointer = interactive; interactive = 1; diff --git a/src/appl/gssftp/ftp/ftp.c b/src/appl/gssftp/ftp/ftp.c index ffbb42c..155f857 100644 --- a/src/appl/gssftp/ftp/ftp.c +++ b/src/appl/gssftp/ftp/ftp.c @@ -1103,7 +1103,7 @@ abortrecv(int sig) } void recvrequest(char *cmd, char *volatile local, char *remote, char *lmode, - int printnames) + int printnames, int fnameonly) { FILE *volatile fout, *volatile din = 0, *popen(); int (*volatile closefunc)(), pclose(), fclose(); @@ -1149,7 +1149,7 @@ void recvrequest(char *cmd, char *volatile local, char *remote, char *lmode, return; } oldintr = signal(SIGINT, abortrecv); - if (strcmp(local, "-") && *local != '|') { + if (fnameonly || (strcmp(local, "-") && *local != '|')) { if (access(local, 2) < 0) { char *dir = strrchr(local, '/'); @@ -1223,9 +1223,9 @@ void recvrequest(char *cmd, char *volatile local, char *remote, char *lmode, din = dataconn("r"); if (din == NULL) goto die; - if (strcmp(local, "-") == 0) + if (strcmp(local, "-") == 0 && !fnameonly) fout = stdout; - else if (*local == '|') { + else if (*local == '|' && !fnameonly) { #ifdef SIGPIPE oldintp = signal(SIGPIPE, SIG_IGN); #endif diff --git a/src/appl/gssftp/ftp/ftp_var.h b/src/appl/gssftp/ftp/ftp_var.h index 4448448..9baa047 100644 --- a/src/appl/gssftp/ftp/ftp_var.h +++ b/src/appl/gssftp/ftp/ftp_var.h @@ -249,7 +249,7 @@ void setpassive (void); /* ftp.c */ void sendrequest (char *, char *, char *, int); -void recvrequest (char *, char *volatile, char *, char *, int); +void recvrequest (char *, char *volatile, char *, char *, int, int); int login (char *); void setpbsz (unsigned int); void pswitch (int); diff --git a/src/appl/gssftp/ftp/pclose.c b/src/appl/gssftp/ftp/pclose.c index 04e481b..5d6a5aa 100644 --- a/src/appl/gssftp/ftp/pclose.c +++ b/src/appl/gssftp/ftp/pclose.c @@ -15,9 +15,6 @@ static char sccsid[] = "@(#)pclose.c 1.1 90/04/28 SMI"; /* from UCB 1.2 3/7/86 * #include <signal.h> #include <sys/param.h> #include <sys/wait.h> -#ifdef HAVE_VFORK_H -#include <vfork.h> -#endif #define sig_t my_sig_t #define sigtype krb5_sigtype typedef sigtype (*sig_t)(); @@ -60,7 +57,7 @@ mypopen(cmd,mode) return (NULL); myside = tst(p[WTR], p[RDR]); hisside = tst(p[RDR], p[WTR]); - if ((pid = vfork()) == 0) { + if ((pid = fork()) == 0) { /* myside and hisside reverse roles in child */ (void) close(myside); if (hisside != tst(0, 1)) { diff --git a/src/appl/gssftp/ftpd/ChangeLog b/src/appl/gssftp/ftpd/ChangeLog index c940e01..7381476 100644 --- a/src/appl/gssftp/ftpd/ChangeLog +++ b/src/appl/gssftp/ftpd/ChangeLog @@ -1,3 +1,11 @@ +2003-06-05 Sam Hartman <hartmans@mit.edu> + + * popen.c (ftpd_popen): Use fork not vfork + +2003-04-23 Ken Raeburn <raeburn@mit.edu> + + * ftpd.c: Don't declare errno. + 2003-01-03 Ken Raeburn <raeburn@mit.edu> * ftpd.c (auth_data): Kerberos v4 checksum must be a 32-bit diff --git a/src/appl/gssftp/ftpd/Makefile.in b/src/appl/gssftp/ftpd/Makefile.in index e62ae10..ba68b22 100644 --- a/src/appl/gssftp/ftpd/Makefile.in +++ b/src/appl/gssftp/ftpd/Makefile.in @@ -85,8 +85,7 @@ $(OUTPRE)ftpd.$(OBJEXT): ftpd.c $(srcdir)/../arpa/ftp.h \ $(BUILDTOP)/include/krb5/autoconf.h $(SRCTOP)/include/port-sockets.h \ $(BUILDTOP)/include/krb5.h $(COM_ERR_DEPS) $(SRCTOP)/include/kerberosIV/krb.h \ $(SRCTOP)/include/kerberosIV/des.h $(KRB_ERR_H_DEP) \ - $(BUILDTOP)/include/profile.h $(KRB524_H_DEP) $(KRB524_ERR_H_DEP) \ - $(SRCTOP)/include/socket-utils.h $(BUILDTOP)/include/gssapi/gssapi.h \ + $(BUILDTOP)/include/profile.h $(BUILDTOP)/include/gssapi/gssapi.h \ $(BUILDTOP)/include/gssapi/gssapi_generic.h $(BUILDTOP)/include/gssapi/gssapi_krb5.h \ ftpd_var.h secure.h $(OUTPRE)ftpcmd.$(OBJEXT): ftpcmd.c $(srcdir)/../arpa/ftp.h \ diff --git a/src/appl/gssftp/ftpd/ftpd.c b/src/appl/gssftp/ftpd/ftpd.c index 7fd7899..2a09bf3 100644 --- a/src/appl/gssftp/ftpd/ftpd.c +++ b/src/appl/gssftp/ftpd/ftpd.c @@ -130,7 +130,6 @@ extern int yyparse(void); #ifdef KRB5_KRB4_COMPAT #include <krb5.h> #include <krb.h> -#include <krb524.h> AUTH_DAT kdata; KTEXT_ST ticket; @@ -170,7 +169,6 @@ int have_creds; /* User has credentials on disk */ #include "ftpd_var.h" #include "secure.h" -extern int errno; extern char *crypt(); extern char version[]; extern char *home; /* pointer to home directory for glob */ @@ -315,9 +313,6 @@ main(argc, argv, envp) #ifdef GSSAPI krb5_init_context(&kcontext); -#ifdef KRB5_KRB4_COMPAT - krb524_init_ets(kcontext); -#endif #endif while ((c = getopt(argc, argv, option_string)) != -1) { diff --git a/src/appl/gssftp/ftpd/popen.c b/src/appl/gssftp/ftpd/popen.c index 317b6fa..e9e5895 100644 --- a/src/appl/gssftp/ftpd/popen.c +++ b/src/appl/gssftp/ftpd/popen.c @@ -46,9 +46,6 @@ static char sccsid[] = "@(#)popen.c 5.9 (Berkeley) 2/25/91"; #include <stdio.h> #include <stdlib.h> #include <string.h> -#ifdef HAVE_VFORK_H -#include <vfork.h> -#endif #include "ftpd_var.h" /* @@ -109,7 +106,7 @@ ftpd_popen(program, type) gargv[gargc] = NULL; iop = NULL; - switch(pid = vfork()) { + switch(pid = fork()) { case -1: /* error */ (void)close(pdes[0]); (void)close(pdes[1]); |