diff options
author | bjs <bjs> | 2007-11-16 08:06:33 +0000 |
---|---|---|
committer | bjs <bjs> | 2007-11-16 08:06:33 +0000 |
commit | cbe980497d6c073e42adeedc9ad082077cf2ad5f (patch) | |
tree | 83a6b0bd3d0c9593d37ebb4d12916af0e76f2a7d /net/aria2 | |
parent | 662fcfad08a25bacadde17d8ebdc3c2a6b6f514f (diff) | |
download | pkgsrc-cbe980497d6c073e42adeedc9ad082077cf2ad5f.tar.gz |
Sync with stable-0.11 branch. Bump rev.
Diffstat (limited to 'net/aria2')
-rw-r--r-- | net/aria2/Makefile | 4 | ||||
-rw-r--r-- | net/aria2/distinfo | 9 | ||||
-rw-r--r-- | net/aria2/patches/patch-ag | 31 | ||||
-rw-r--r-- | net/aria2/patches/patch-ah | 53 | ||||
-rw-r--r-- | net/aria2/patches/patch-ai | 25 | ||||
-rw-r--r-- | net/aria2/patches/patch-aj | 13 | ||||
-rw-r--r-- | net/aria2/patches/patch-ak | 40 | ||||
-rw-r--r-- | net/aria2/patches/patch-al | 13 | ||||
-rw-r--r-- | net/aria2/patches/patch-am | 88 |
9 files changed, 273 insertions, 3 deletions
diff --git a/net/aria2/Makefile b/net/aria2/Makefile index b88fb5463b9..ab8db54c674 100644 --- a/net/aria2/Makefile +++ b/net/aria2/Makefile @@ -1,8 +1,8 @@ -# $NetBSD: Makefile,v 1.4 2007/11/07 08:08:18 bjs Exp $ +# $NetBSD: Makefile,v 1.5 2007/11/16 08:06:33 bjs Exp $ # DISTNAME= aria2-0.11.4 -PKGREVISION= 1 +PKGREVISION= 2 CATEGORIES= net MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=aria2/} EXTRACT_SUFX= .tar.bz2 diff --git a/net/aria2/distinfo b/net/aria2/distinfo index 9813302b89c..e150ca54041 100644 --- a/net/aria2/distinfo +++ b/net/aria2/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.3 2007/11/07 08:08:19 bjs Exp $ +$NetBSD: distinfo,v 1.4 2007/11/16 08:06:33 bjs Exp $ SHA1 (aria2-0.11.4.tar.bz2) = 76144a9525c005ea39ceda82da8f61883ab4ac6f RMD160 (aria2-0.11.4.tar.bz2) = 1a9807ed2b24448062e78818a59e51eccdb822cc @@ -9,3 +9,10 @@ SHA1 (patch-ac) = 64b43e0b75d82c0602d1c53764ab8e2896a35c69 SHA1 (patch-ad) = 037d1cc28a45fc636487dcddc5e014ca43df66c4 SHA1 (patch-ae) = 80a2c165130282b893c39ed6428689c14f7b08bc SHA1 (patch-af) = 5a045331fc27ced85571ff59e03ed562ad3901fe +SHA1 (patch-ag) = d60d9bd458f1543b2f47eafadae328d9e1862afb +SHA1 (patch-ah) = 54d31f1b33848d044b4492700401589193bb6d60 +SHA1 (patch-ai) = d8c0ee2c70c0f49999ef67d760d24074120aa0b5 +SHA1 (patch-aj) = 8c2df42e035b7cff88f09ade6bceba46f8ce8f4d +SHA1 (patch-ak) = bda3c3c70ae2da15bc2d02245db741798e3e7159 +SHA1 (patch-al) = 6fa61faedf017f1adce4354e09171db39a2e9fb7 +SHA1 (patch-am) = 806211d4e3990ebc411c14ec5b7662d0a332d9ac diff --git a/net/aria2/patches/patch-ag b/net/aria2/patches/patch-ag new file mode 100644 index 00000000000..c6ec71e8b95 --- /dev/null +++ b/net/aria2/patches/patch-ag @@ -0,0 +1,31 @@ +$NetBSD: patch-ag,v 1.3 2007/11/16 08:06:33 bjs Exp $ + +--- ChangeLog.orig 2007-10-28 06:26:51.000000000 -0400 ++++ ChangeLog +@@ -1,3 +1,19 @@ ++2007-11-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com> ++ ++ urlencode the given url inside Request::parseUrl(...) ++ * src/Request.{h, cc} ++ * src/Util.{h, cc} ++ * test/RequestTest.cc ++ ++ Removed #!metalink3! notation support because it is deleted from ++ the metalink specification. ++ * src/Request.{h, cc} ++ * test/RequestTest.cc ++ ++2007-11-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com> ++ ++ * src/SocketCore.cc (writeData): Fixed send error with GnuTLS. ++ + 2007-10-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com> + + * po/LINGUAS: Added nl for Dutch translation. +@@ -6974,4 +6990,4 @@ + 2006-02-17 Tatsuhiro Tsujikawa <tsujikawa at rednoah dot com> + + * Release 0.1.0 +- +\ No newline at end of file ++ diff --git a/net/aria2/patches/patch-ah b/net/aria2/patches/patch-ah new file mode 100644 index 00000000000..ef9515a0cd0 --- /dev/null +++ b/net/aria2/patches/patch-ah @@ -0,0 +1,53 @@ +$NetBSD: patch-ah,v 1.3 2007/11/16 08:06:33 bjs Exp $ + +--- src/Request.cc.orig 2007-10-11 12:48:21.000000000 -0400 ++++ src/Request.cc +@@ -68,14 +68,9 @@ bool Request::parseUrl(const string& url + string tempUrl; + string::size_type sharpIndex = url.find("#"); + if(sharpIndex != string::npos) { +- if(FeatureConfig::getInstance()->isSupported("metalink") && +- url.find(METALINK_MARK) == sharpIndex) { +- tempUrl = url.substr(sharpIndex+strlen(METALINK_MARK)); +- } else { +- tempUrl = url.substr(0, sharpIndex); +- } ++ tempUrl = urlencode(url.substr(0, sharpIndex)); + } else { +- tempUrl = url; ++ tempUrl = urlencode(url); + } + + currentUrl = tempUrl; +@@ -145,3 +140,31 @@ AuthConfigHandle Request::resolveHttpPro + { + return _httpProxyAuthResolver->resolveAuthConfig(getHost()); + } ++ ++bool Request::isHexNumber(const char c) const ++{ ++ return '0' <= c && c <= '9' || 'A' <= c && c <= 'F' || 'a' <= c && c <= 'f'; ++} ++ ++string Request::urlencode(const string& src) const ++{ ++ int32_t lastIndex = src.size()-1; ++ string result = src+" "; ++ for(int32_t index = lastIndex; index >= 0; --index) { ++ const char c = result[index]; ++ // '/' is not urlencoded because src is expected to be a path. ++ if(Util::shouldUrlencode(c)) { ++ if(c == '%') { ++ if(!isHexNumber(result[index+1]) || !isHexNumber(result[index+2])) { ++ result.replace(index, 1, "%25"); ++ } ++ } else { ++ char temp[4]; ++ sprintf(temp, "%%%02x", c); ++ temp[3] = '\0'; ++ result.replace(index, 1, temp); ++ } ++ } ++ } ++ return result.substr(0, result.size()-2); ++} diff --git a/net/aria2/patches/patch-ai b/net/aria2/patches/patch-ai new file mode 100644 index 00000000000..30ccf25876e --- /dev/null +++ b/net/aria2/patches/patch-ai @@ -0,0 +1,25 @@ +$NetBSD: patch-ai,v 1.3 2007/11/16 08:06:33 bjs Exp $ + +--- src/Request.h.orig 2007-08-28 12:36:33.000000000 -0400 ++++ src/Request.h +@@ -48,8 +48,6 @@ + "%"\ + "#" + +-#define METALINK_MARK "#!metalink3!" +- + class Request { + public: + enum TRACKER_EVENT { +@@ -87,6 +85,11 @@ private: + AuthResolverHandle _ftpAuthResolver; + + bool parseUrl(const string& url); ++ ++ bool isHexNumber(const char c) const; ++ ++ string urlencode(const string& src) const; ++ + public: + CookieBoxHandle cookieBox; + public: diff --git a/net/aria2/patches/patch-aj b/net/aria2/patches/patch-aj new file mode 100644 index 00000000000..5ca789ec39f --- /dev/null +++ b/net/aria2/patches/patch-aj @@ -0,0 +1,13 @@ +$NetBSD: patch-aj,v 1.3 2007/11/16 08:06:33 bjs Exp $ + +--- src/SocketCore.cc.orig 2007-08-28 12:36:33.000000000 -0400 ++++ src/SocketCore.cc +@@ -331,7 +331,7 @@ void SocketCore::writeData(const char* d + } + #endif // HAVE_LIBSSL + #ifdef HAVE_LIBGNUTLS +- if((ret = gnutls_record_send(sslSession, data, len)) == len) { ++ if((ret = gnutls_record_send(sslSession, data, len)) != len) { + throw new DlRetryEx(EX_SOCKET_SEND, gnutls_strerror(ret)); + } + #endif // HAVE_LIBGNUTLS diff --git a/net/aria2/patches/patch-ak b/net/aria2/patches/patch-ak new file mode 100644 index 00000000000..3bb5a2a73f3 --- /dev/null +++ b/net/aria2/patches/patch-ak @@ -0,0 +1,40 @@ +$NetBSD: patch-ak,v 1.3 2007/11/16 08:06:33 bjs Exp $ + +--- src/Util.cc.orig 2007-08-28 12:36:33.000000000 -0400 ++++ src/Util.cc +@@ -238,18 +238,26 @@ string Util::replace(const string& targe + return result; + } + ++bool Util::shouldUrlencode(const char c) ++{ ++ return !(// ALPHA ++ 'A' <= c && c <= 'Z' || 'a' <= c && c <= 'z' || ++ // DIGIT ++ '0' <= c && c <= '9' || ++ // safe ++ '$' == c || '-' == c || '_' == c || '.' == c || ++ // extra ++ '!' == c || '*' == c || '\'' == c ||'(' == c || ++ ')' == c || ',' == c || ++ // reserved ++ ';' == c || '/' == c || '?' == c || ':' == c || ++ '@' == c || '&' == c || '=' == c || '+' == c); ++} ++ + string Util::urlencode(const unsigned char* target, int32_t len) { + string dest; + for(int32_t i = 0; i < len; i++) { +- if(!('0' <= target[i] && target[i] <= '9' || +- 'A' <= target[i] && target[i] <= 'Z' || +- 'a' <= target[i] && target[i] <= 'z' || +- '$' == target[i] || '-' == target[i] || +- '_' == target[i] || '.' == target[i] || +- '+' == target[i] || '!' == target[i] || +- '*' == target[i] || '\'' == target[i] || +- '(' == target[i] || ')' == target[i] || +- ',' == target[i])) { ++ if(shouldUrlencode(target[i])) { + char temp[4]; + sprintf(temp, "%%%02x", target[i]); + temp[sizeof(temp)-1] = '\0'; diff --git a/net/aria2/patches/patch-al b/net/aria2/patches/patch-al new file mode 100644 index 00000000000..e2845b361ba --- /dev/null +++ b/net/aria2/patches/patch-al @@ -0,0 +1,13 @@ +$NetBSD: patch-al,v 1.3 2007/11/16 08:06:34 bjs Exp $ + +--- src/Util.h.orig 2007-08-28 12:36:33.000000000 -0400 ++++ src/Util.h +@@ -76,6 +76,8 @@ public: + + static string replace(const string& target, const string& oldstr, const string& newstr); + ++ static bool shouldUrlencode(const char c); ++ + static string urlencode(const unsigned char* target, int32_t len); + + static string urlencode(const string& target) diff --git a/net/aria2/patches/patch-am b/net/aria2/patches/patch-am new file mode 100644 index 00000000000..0e3a4cd8ca4 --- /dev/null +++ b/net/aria2/patches/patch-am @@ -0,0 +1,88 @@ +$NetBSD: patch-am,v 1.3 2007/11/16 08:06:34 bjs Exp $ + +--- test/RequestTest.cc.orig 2007-10-11 12:48:21.000000000 -0400 ++++ test/RequestTest.cc +@@ -21,12 +21,11 @@ class RequestTest:public CppUnit::TestFi + CPPUNIT_TEST(testSetUrl12); + CPPUNIT_TEST(testSetUrl13); + CPPUNIT_TEST(testSetUrl14); ++ CPPUNIT_TEST(testSetUrl17); + CPPUNIT_TEST(testRedirectUrl); + CPPUNIT_TEST(testRedirectUrl2); + CPPUNIT_TEST(testResetUrl); +- CPPUNIT_TEST(testSafeChar); + CPPUNIT_TEST(testInnerLink); +- CPPUNIT_TEST(testMetalink); + CPPUNIT_TEST(testResolveHttpAuthConfig); + CPPUNIT_TEST(testResolveHttpAuthConfig_noCandidate); + CPPUNIT_TEST(testResolveHttpProxyAuthConfig); +@@ -48,12 +47,11 @@ public: + void testSetUrl12(); + void testSetUrl13(); + void testSetUrl14(); ++ void testSetUrl17(); + void testRedirectUrl(); + void testRedirectUrl2(); + void testResetUrl(); +- void testSafeChar(); + void testInnerLink(); +- void testMetalink(); + void testResolveHttpAuthConfig(); + void testResolveHttpAuthConfig_noCandidate(); + void testResolveHttpProxyAuthConfig(); +@@ -217,6 +215,17 @@ void RequestTest::testSetUrl14() { + CPPUNIT_ASSERT_EQUAL(string("abc?query"), req.getFile()); + } + ++void RequestTest::testSetUrl17() ++{ ++ Request req; ++ bool v = req.setUrl("http://host:80/file<with%2 %20space/file with space;param?a=/?"); ++ CPPUNIT_ASSERT(v); ++ CPPUNIT_ASSERT_EQUAL(string("http"), req.getProtocol()); ++ CPPUNIT_ASSERT_EQUAL(string("host"), req.getHost()); ++ CPPUNIT_ASSERT_EQUAL(string("/file%3cwith%252%20%20space"), req.getDir()); ++ CPPUNIT_ASSERT_EQUAL(string("file%20with%20space;param?a=/?"), req.getFile()); ++} ++ + void RequestTest::testRedirectUrl() { + Request req; + bool v = req.setUrl("http://aria.rednoah.com:8080/aria2/index.html"); +@@ -279,12 +288,6 @@ void RequestTest::testResetUrl() { + CPPUNIT_ASSERT_EQUAL(string("index.html"), req.getFile()); + } + +-void RequestTest::testSafeChar() { +- Request req; +- bool v = req.setUrl("http://aria.rednoah.com/|<>"); +- CPPUNIT_ASSERT(!v); +-} +- + void RequestTest::testInnerLink() { + Request req; + bool v = req.setUrl("http://aria.rednoah.com/index.html#download"); +@@ -292,24 +295,6 @@ void RequestTest::testInnerLink() { + CPPUNIT_ASSERT_EQUAL(string("index.html"), req.getFile()); + } + +-void RequestTest::testMetalink() { +- Request req; +- bool v = req.setUrl("http://aria.rednoah.com/download/aria.tar.bz2#!metalink3!http://aria2.sourceforge.net/download/aria.metalink"); +- CPPUNIT_ASSERT(v); +-#ifdef ENABLE_METALINK +- CPPUNIT_ASSERT_EQUAL(string("aria2.sourceforge.net"), req.getHost()); +- CPPUNIT_ASSERT_EQUAL(string("/download"), req.getDir()); +- CPPUNIT_ASSERT_EQUAL(string("aria.metalink"), req.getFile()); +- +- bool v2 = req.setUrl("http://aria.rednoah.com/download/aria.tar.bz2#!metalink3!"); +- CPPUNIT_ASSERT(!v2); +-#else +- CPPUNIT_ASSERT_EQUAL(string("aria.rednoah.com"), req.getHost()); +- CPPUNIT_ASSERT_EQUAL(string("/download"), req.getDir()); +- CPPUNIT_ASSERT_EQUAL(string("aria.tar.bz2"), req.getFile()); +-#endif // ENABLE_METALINK +-} +- + void RequestTest::testResolveHttpAuthConfig() + { + Request req; |