From 41b7dd1e72660c6398b8c44977837f5befc134c3 Mon Sep 17 00:00:00 2001 From: wiz Date: Mon, 16 Dec 2002 11:39:00 +0000 Subject: Update to 1.8.2, with the recently discovered security problem already fixed (patches from RedHat RPM). Note: this package does not support IPv6 any longer, since no updated IPv6 patch for wget-1.8.2 exists (to my knowledge). The next major wget release is expected to contain IPv6 support. Uservisible changes since 1.7: ** A new progress indicator is now available and used by default. You can choose the progress bar type with `--progress=TYPE'. Two types are available, "bar" (the new default), and "dot" (the old dotted indicator). You can permanently revert to the old progress indicator by putting `progress = dot' in your `.wgetrc'. ** You can limit the download rate of the retrieval using the `--limit-rate' option. For example, `wget --limit-rate=15k URL' will tell Wget not to download the body of the URL faster than 15 kilobytes per second. ** Recursive retrieval and link conversion have been revamped: *** Wget now traverses links breadth-first. This makes the calculation of depth much more reliable than before. Also, recursive downloads are faster and consume *significantly* less memory than before. *** Links are converted only when the entire retrieval is complete. This is the only safe thing to do, as only then is it known what URLs have been downloaded. *** BASE tags are handled correctly when converting links. Since Wget already resolves when resolving handling URLs, link conversion now makes the BASE tags point to an empty string. *** HTML anchors are now handled correctly. Links to an anchor in the same document (), which used to confuse Wget, are now converted correctly. *** When in page-requisites (-p) mode, no-parent (-np) is ignored when retrieving for inline images, stylesheets, and other documents needed to display the page. *** Page-requisites (-p) mode now works with frames. In other words, `wget -p URL-THAT-USES-FRAMES' will now download the frame HTML files, and all the files that they need to be displayed properly. ** `--base' now works conjunction with `--input-file', providing a base for each URL and thereby allowing the URLs in the file to be relative. ** If a host has more than one IP address, Wget uses the other addresses when accessing the first one fails. ** Host directories now contain port information if the URL is at a non-standard port. ** Wget now supports the robots.txt directives specified in . ** URL parser has been fixed, especially the infamous overzealous quoting. Wget no longer dequotes reserved characters, e.g. `%3F' is no longer translated to `?', nor `%2B' to `+'. Unsafe characters which are not reserved are still escaped, of course. ** No more than 20 successive redirections are allowed. --- net/wget/Makefile | 21 ++------------------ net/wget/PLIST | 8 ++++++-- net/wget/distinfo | 17 ++++++++-------- net/wget/patches/patch-ac | 22 +++++++++++++++++++++ net/wget/patches/patch-ad | 50 ++++++++++++++++++++++++++++++++++++----------- net/wget/patches/patch-ae | 25 ++++++++++++------------ net/wget/patches/patch-af | 10 +++++----- net/wget/patches/patch-ag | 12 ++++++------ 8 files changed, 101 insertions(+), 64 deletions(-) create mode 100644 net/wget/patches/patch-ac (limited to 'net/wget') diff --git a/net/wget/Makefile b/net/wget/Makefile index 5b2eaafc20c..6ea3a33cc32 100644 --- a/net/wget/Makefile +++ b/net/wget/Makefile @@ -1,14 +1,9 @@ -# $NetBSD: Makefile,v 1.53 2002/12/01 01:04:03 grant Exp $ +# $NetBSD: Makefile,v 1.54 2002/12/16 11:39:00 wiz Exp $ -DISTNAME= wget-1.7 -PKGREVISION= 2 +DISTNAME= wget-1.8.2 CATEGORIES= net MASTER_SITES= ${MASTER_SITE_GNU:=wget/} -PATCH_SITES= ftp://ftp.kame.net/pub/kame/misc/ -PATCHFILES= wget-17-v6-20010716a.diff.gz -PATCH_DIST_STRIP=-p1 - MAINTAINER= packages@netbsd.org HOMEPAGE= http://www.gnu.org/software/wget/wget.html COMMENT= Retrieve files from the 'net via HTTP and FTP @@ -28,18 +23,6 @@ CONF_FILES= ${EGDIR}/wgetrc ${PKG_SYSCONFDIR}/wgetrc INFO_FILES= wget.info -BUILD_DEFS+= USE_INET6 - -# to get USE_INET6 -.include "../../mk/bsd.prefs.mk" - -# IPv6 support -.if (${OPSYS} != SunOS) && defined(USE_INET6) && ${USE_INET6} == YES -CONFIGURE_ARGS+= --enable-ipv6 -.else -CONFIGURE_ARGS+= --disable-ipv6 -.endif - WGET_USE_SSL?= YES .if ${WGET_USE_SSL} == YES diff --git a/net/wget/PLIST b/net/wget/PLIST index 63fe864c42a..ebd14e52a87 100644 --- a/net/wget/PLIST +++ b/net/wget/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.5 2002/11/21 11:05:56 grant Exp $ +@comment $NetBSD: PLIST,v 1.6 2002/12/16 11:39:00 wiz Exp $ bin/wget man/man1/wget.1 @unexec ${INSTALL_INFO} --delete %D/info/wget.info %D/info/dir @@ -8,6 +8,8 @@ info/wget.info-2 info/wget.info-3 info/wget.info-4 @exec ${INSTALL_INFO} %D/info/wget.info %D/info/dir +${PKGLOCALEDIR}/locale/bg/LC_MESSAGES/wget.mo +${PKGLOCALEDIR}/locale/ca/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/cs/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/da/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/de/LC_MESSAGES/wget.mo @@ -16,7 +18,9 @@ ${PKGLOCALEDIR}/locale/es/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/et/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/fr/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/gl/LC_MESSAGES/wget.mo +${PKGLOCALEDIR}/locale/he/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/hr/LC_MESSAGES/wget.mo +${PKGLOCALEDIR}/locale/hu/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/it/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/ja/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/nl/LC_MESSAGES/wget.mo @@ -28,7 +32,7 @@ ${PKGLOCALEDIR}/locale/sk/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/sl/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/sv/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/tr/LC_MESSAGES/wget.mo -${PKGLOCALEDIR}/locale/zh/LC_MESSAGES/wget.mo +${PKGLOCALEDIR}/locale/uk/LC_MESSAGES/wget.mo ${PKGLOCALEDIR}/locale/zh_TW/LC_MESSAGES/wget.mo share/examples/wget/wgetrc @dirrm share/examples/wget diff --git a/net/wget/distinfo b/net/wget/distinfo index 119ce822033..db8e1d28d11 100644 --- a/net/wget/distinfo +++ b/net/wget/distinfo @@ -1,10 +1,9 @@ -$NetBSD: distinfo,v 1.14 2002/12/01 01:04:03 grant Exp $ +$NetBSD: distinfo,v 1.15 2002/12/16 11:39:01 wiz Exp $ -SHA1 (wget-1.7.tar.gz) = b44118972c11a410b81ad3d306861b370071e611 -Size (wget-1.7.tar.gz) = 945138 bytes -SHA1 (wget-17-v6-20010716a.diff.gz) = 02ddc575dc2cd33b38a2b111662198b77ef67491 -Size (wget-17-v6-20010716a.diff.gz) = 49827 bytes -SHA1 (patch-ad) = 8994c291eb3e06c87a6c83dfc2b02fbf9f318c34 -SHA1 (patch-ae) = 1400b747cb0b2cd4311e566941cbc8ff3e59c76d -SHA1 (patch-af) = 99947fe7a56611cd0c949ddd7736971e96627731 -SHA1 (patch-ag) = 76f6bee3384e99375ea1249bfd054f904d5b9750 +SHA1 (wget-1.8.2.tar.gz) = cb14189c47f281b33fd1ef37c4c8df39250fa7d5 +Size (wget-1.8.2.tar.gz) = 1154648 bytes +SHA1 (patch-ac) = c1dc89799a58775709fd7b7abe0dc1b46ca62d89 +SHA1 (patch-ad) = ecd764d96e1d0646ab0b6dbce5b2aad606979d43 +SHA1 (patch-ae) = 200b93efcbea69292dd62559a90116c379aa6e0d +SHA1 (patch-af) = 3921360a2986004063ded15f9eaa5a6290a54bfc +SHA1 (patch-ag) = ea1e64523b8a6dcf5976840863ca995a7d4c755b diff --git a/net/wget/patches/patch-ac b/net/wget/patches/patch-ac new file mode 100644 index 00000000000..4811fa21110 --- /dev/null +++ b/net/wget/patches/patch-ac @@ -0,0 +1,22 @@ +$NetBSD: patch-ac,v 1.5 2002/12/16 11:39:01 wiz Exp $ + +--- src/fnmatch.c.orig Sat May 18 05:05:15 2002 ++++ src/fnmatch.c +@@ -198,6 +198,17 @@ fnmatch (const char *pattern, const char + return (FNM_NOMATCH); + } + ++/* Return non-zero if S has a leading '/' or contains '../' */ ++int ++has_invalid_name (const char *s) ++{ ++ if (*s == '/') ++ return 1; ++ if (strstr(s, "../") != 0) ++ return 1; ++ return 0; ++} ++ + /* Return non-zero if S contains globbing wildcards (`*', `?', `[' or + `]'). */ + int diff --git a/net/wget/patches/patch-ad b/net/wget/patches/patch-ad index 9a7bd3bac8b..ba744efe708 100644 --- a/net/wget/patches/patch-ad +++ b/net/wget/patches/patch-ad @@ -1,14 +1,42 @@ -$NetBSD: patch-ad,v 1.5 2002/03/30 13:57:03 pooka Exp $ +$NetBSD: patch-ad,v 1.6 2002/12/16 11:39:02 wiz Exp $ ---- src/host.c.orig Sun Jul 22 17:33:22 2001 -+++ src/host.c Sun Jul 22 17:34:47 2001 -@@ -206,7 +206,9 @@ - memset(sa, 0, *len); - *len = sizeof(struct sockaddr_in); - sa->sa_family = AF_INET; -+#ifndef __sun__ - sa->sa_len = *len; /*XXX*/ -+#endif +--- src/ftp.c.orig Sat May 18 05:05:16 2002 ++++ src/ftp.c +@@ -1551,6 +1551,8 @@ ftp_retrieve_glob (struct url *u, ccon * + { + struct fileinfo *orig, *start; + uerr_t res; ++ struct fileinfo *f; ++ - where = (char *)&((struct sockaddr_in *)sa)->sin_addr; + con->cmd |= LEAVE_PENDING; +@@ -1562,8 +1564,7 @@ ftp_retrieve_glob (struct url *u, ccon * + opt.accepts and opt.rejects. */ + if (opt.accepts || opt.rejects) + { +- struct fileinfo *f = orig; +- ++ f = orig; + while (f) + { + if (f->type != FT_DIRECTORY && !acceptable (f->name)) +@@ -1575,6 +1576,18 @@ ftp_retrieve_glob (struct url *u, ccon * + f = f->next; + } + } ++ /* Remove all files with possible harmful names */ ++ f = orig; ++ while (f) ++ { ++ if (has_invalid_name(f->name)) ++ { ++ logprintf (LOG_VERBOSE, _("Rejecting `%s'.\n"), f->name); ++ f = delelement (f, &start); ++ } ++ else ++ f = f->next; ++ } + /* Now weed out the files that do not match our globbing pattern. + If we are dealing with a globbing pattern, that is. */ + if (*u->file && (action == GLOBALL || action == GETONE)) diff --git a/net/wget/patches/patch-ae b/net/wget/patches/patch-ae index eed7606406f..23f2737c172 100644 --- a/net/wget/patches/patch-ae +++ b/net/wget/patches/patch-ae @@ -1,13 +1,14 @@ -$NetBSD: patch-ae,v 1.5 2002/03/30 13:57:03 pooka Exp $ +$NetBSD: patch-ae,v 1.6 2002/12/16 11:39:02 wiz Exp $ ---- configure.orig Thu Jul 26 06:52:57 2001 -+++ configure -@@ -3715,7 +3715,7 @@ - cat conftest.$ac_ext >&5 - fi - rm -f conftest* -- LDFLAGS=$ODL_LDFLAGS -+ LDFLAGS=$OLD_LDFLAGS - test -n "$dash_r" && break - done ;; - esac +--- src/recur.c.orig Mon May 27 16:00:06 2002 ++++ src/recur.c +@@ -254,7 +254,8 @@ retrieve_tree (const char *start_url) + DEBUGP (("Already downloaded \"%s\", reusing it from \"%s\".\n", + url, file)); + +- if (string_set_contains (downloaded_html_set, file)) ++ if (downloaded_html_set ++ && string_set_contains (downloaded_html_set, file)) + descend = 1; + } + else diff --git a/net/wget/patches/patch-af b/net/wget/patches/patch-af index a5c788a772c..ae3903688cc 100644 --- a/net/wget/patches/patch-af +++ b/net/wget/patches/patch-af @@ -1,8 +1,8 @@ -$NetBSD: patch-af,v 1.3 2002/10/21 14:46:27 mycroft Exp $ +$NetBSD: patch-af,v 1.4 2002/12/16 11:39:02 wiz Exp $ ---- src/cookies.c.orig Sun May 27 19:34:56 2001 -+++ src/cookies.c Mon Oct 21 14:27:38 2002 -@@ -474,7 +474,12 @@ +--- src/cookies.c.orig Sun May 19 05:04:53 2002 ++++ src/cookies.c +@@ -491,7 +491,12 @@ parse_set_cookies (const char *sc) { case S_NAME_PRE: if (ISSPACE (c)) @@ -16,7 +16,7 @@ $NetBSD: patch-af,v 1.3 2002/10/21 14:46:27 mycroft Exp $ else if (ATTR_NAME_CHAR (c)) { name_b = p - 1; -@@ -605,7 +610,11 @@ +@@ -622,7 +627,11 @@ parse_set_cookies (const char *sc) } } if (state == S_DONE) diff --git a/net/wget/patches/patch-ag b/net/wget/patches/patch-ag index 90f2d9e2f08..1eaec96debd 100644 --- a/net/wget/patches/patch-ag +++ b/net/wget/patches/patch-ag @@ -1,6 +1,6 @@ -$NetBSD: patch-ag,v 1.3 2002/11/21 11:05:57 grant Exp $ +$NetBSD: patch-ag,v 1.4 2002/12/16 11:39:02 wiz Exp $ ---- doc/Makefile.in.orig Thu Apr 12 14:25:22 2001 +--- doc/Makefile.in.orig Sat Nov 17 00:23:22 2001 +++ doc/Makefile.in @@ -40,6 +40,7 @@ prefix = @prefix@ infodir = @infodir@ @@ -11,7 +11,7 @@ $NetBSD: patch-ag,v 1.3 2002/11/21 11:05:57 grant Exp $ DESTDIR = @@ -51,7 +52,7 @@ RM = rm -f - TEXI2POD = ./texi2pod.pl + TEXI2POD = $(srcdir)/texi2pod.pl POD2MAN = @POD2MAN@ MAN = wget.$(manext) -WGETRC = $(sysconfdir)/wgetrc @@ -19,12 +19,12 @@ $NetBSD: patch-ag,v 1.3 2002/11/21 11:05:57 grant Exp $ SAMPLERCTEXI = sample.wgetrc.munged_for_texi_inclusion # -@@ -119,7 +120,7 @@ install.man: $(MAN) +@@ -127,7 +128,7 @@ install.man: $(MAN) # install sample.wgetrc install.wgetrc: $(srcdir)/sample.wgetrc -- $(top_srcdir)/mkinstalldirs $(sysconfdir) +- $(top_srcdir)/mkinstalldirs $(DESTDIR)$(sysconfdir) + $(top_srcdir)/mkinstalldirs $(DESTDIR)$(datadir)/examples/@PACKAGE@ - @if test -f $(WGETRC); then \ + @if test -f $(DESTDIR)$(WGETRC); then \ if cmp -s $(srcdir)/sample.wgetrc $(DESTDIR)$(WGETRC); then echo ""; \ else \ -- cgit v1.2.3