Date: Sat, 29 Dec 2001 20:01:10 +0200 (SAT) From: John Hay <jhay@icomtek.csir.co.za> To: ume@mahoroba.org (Hajimu UMEMOTO) Cc: jhay@icomtek.csir.co.za (John Hay), mheffner@vt.edu (Mike Heffner), mikeh@FreeBSD.ORG (Mike Heffner), cvs-all@FreeBSD.ORG, cvs-committers@FreeBSD.ORG, FreeBSD-current@FreeBSD.ORG (FreeBSD-current) Subject: Re: cvs commit: src/usr.bin/ftp Makefile cmds.c cmdtab.c complet Message-ID: <200112291801.fBTI1AA55652@zibbi.icomtek.csir.co.za> In-Reply-To: <yge8zbvb8ng.wl@fiva.mahoroba.org> from Hajimu UMEMOTO at "Dec 23, 2001 00:02:11 am"
next in thread | previous in thread | raw e-mail | index | archive | help
This patch works just fine here, thanks. Any chance of getting it as part of lukem distribution or ours? John -- John Hay -- John.Hay@icomtek.csir.co.za > > Differences/Losses: > > > > *) FTP_PASSIVE_MODE vs. FTP_MODE > > *) -4/-6 for forcing IPV4/IPV6 > > jhay> Any chance of getting -4/-6 or something like it, back? It is very useful > jhay> here in our environment that have a lot of dual-stack machines. > > I think it is still useful in the environment where IPv6 link is > relatively slow than IPv4 link. > How about this patch? > > Index: contrib/lukemftp/src/fetch.c > =================================================================== > RCS file: /home/ncvs/src/contrib/lukemftp/src/fetch.c,v > retrieving revision 1.1.1.1 > diff -u -u -r1.1.1.1 fetch.c > --- contrib/lukemftp/src/fetch.c 19 Jul 2001 16:26:13 -0000 1.1.1.1 > +++ contrib/lukemftp/src/fetch.c 22 Dec 2001 14:47:28 -0000 > @@ -617,7 +617,7 @@ > > memset(&hints, 0, sizeof(hints)); > hints.ai_flags = 0; > - hints.ai_family = AF_UNSPEC; > + hints.ai_family = family; > hints.ai_socktype = SOCK_STREAM; > hints.ai_protocol = 0; > error = getaddrinfo(host, NULL, &hints, &res0); > Index: contrib/lukemftp/src/ftp.1 > =================================================================== > RCS file: /home/ncvs/src/contrib/lukemftp/src/ftp.1,v > retrieving revision 1.1.1.1 > diff -u -u -r1.1.1.1 ftp.1 > --- contrib/lukemftp/src/ftp.1 19 Jul 2001 16:26:13 -0000 1.1.1.1 > +++ contrib/lukemftp/src/ftp.1 22 Dec 2001 14:47:29 -0000 > @@ -77,7 +77,7 @@ > Internet file transfer program > .Sh SYNOPSIS > .Nm "" > -.Op Fl AadefginpRtvV > +.Op Fl 46AadefginpRtvV > .Bk -words > .Op Fl o Ar output > .Ek > @@ -146,6 +146,14 @@ > Options may be specified at the command line, or to the > command interpreter. > .Bl -tag -width "port " > +.It Fl 4 > +Forces > +.Nm > +to use IPv4 addresses only. > +.It Fl 6 > +Forces > +.Nm > +to use IPv6 addresses only. > .It Fl A > Force active mode ftp. > By default, > Index: contrib/lukemftp/src/ftp.c > =================================================================== > RCS file: /home/ncvs/src/contrib/lukemftp/src/ftp.c,v > retrieving revision 1.1.1.1 > diff -u -u -r1.1.1.1 ftp.c > --- contrib/lukemftp/src/ftp.c 19 Jul 2001 16:26:14 -0000 1.1.1.1 > +++ contrib/lukemftp/src/ftp.c 22 Dec 2001 14:47:31 -0000 > @@ -149,7 +149,7 @@ > memset(&hints, 0, sizeof(hints)); > portnum = parseport(port, FTP_PORT); > hints.ai_flags = AI_CANONNAME; > - hints.ai_family = AF_UNSPEC; > + hints.ai_family = family; > hints.ai_socktype = SOCK_STREAM; > hints.ai_protocol = 0; > error = getaddrinfo(host, NULL, &hints, &res0); > Index: contrib/lukemftp/src/ftp_var.h > =================================================================== > RCS file: /home/ncvs/src/contrib/lukemftp/src/ftp_var.h,v > retrieving revision 1.1.1.1 > diff -u -u -r1.1.1.1 ftp_var.h > --- contrib/lukemftp/src/ftp_var.h 19 Jul 2001 16:26:14 -0000 1.1.1.1 > +++ contrib/lukemftp/src/ftp_var.h 22 Dec 2001 14:47:31 -0000 > @@ -279,6 +279,8 @@ > GLOBAL char remotepwd[MAXPATHLEN]; /* remote dir */ > GLOBAL char *username; /* name of user logged in as. (dynamic) */ > > +GLOBAL sa_family_t family; /* address family to use for connections */ > + > GLOBAL char *ftpport; /* port number to use for FTP connections */ > GLOBAL char *httpport; /* port number to use for HTTP connections */ > GLOBAL char *gateport; /* port number to use for gateftp connections */ > Index: contrib/lukemftp/src/main.c > =================================================================== > RCS file: /home/ncvs/src/contrib/lukemftp/src/main.c,v > retrieving revision 1.1.1.1 > diff -u -u -r1.1.1.1 main.c > --- contrib/lukemftp/src/main.c 19 Jul 2001 16:26:14 -0000 1.1.1.1 > +++ contrib/lukemftp/src/main.c 22 Dec 2001 14:47:32 -0000 > @@ -171,6 +171,7 @@ > upload_path = NULL; > isupload = 0; > reply_callback = NULL; > + family = AF_UNSPEC; > > /* > * Get the default socket buffer sizes if we don't already have them. > @@ -255,8 +256,16 @@ > } > } > > - while ((ch = getopt(argc, argv, "Aadefgino:pP:r:RtT:u:vV")) != -1) { > + while ((ch = getopt(argc, argv, "46Aadefgino:pP:r:RtT:u:vV")) != -1) { > switch (ch) { > + case '4': > + family = AF_INET; > + break; > + > + case '6': > + family = AF_INET6; > + break; > + > case 'A': > activefallback = 0; > passivemode = 0; > > -- > Hajimu UMEMOTO @ Internet Mutual Aid Society Yokohama, Japan > ume@mahoroba.org ume@bisd.hitachi.co.jp ume@{,jp.}FreeBSD.org > http://www.imasy.org/~ume/ > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200112291801.fBTI1AA55652>