aboutsummaryrefslogtreecommitdiff
path: root/security/i2pd
diff options
context:
space:
mode:
authorDmitry Marakasov <amdmi3@FreeBSD.org>2016-05-27 17:38:21 +0000
committerDmitry Marakasov <amdmi3@FreeBSD.org>2016-05-27 17:38:21 +0000
commitd1f02ea01c94890cabcd82283e16b9f1feb3c813 (patch)
tree31909152ddb2458bf134a4ad683e36a80bf61190 /security/i2pd
parentc7126434a49c907f631746954936e11d6679cfb4 (diff)
Notes
Diffstat (limited to 'security/i2pd')
-rw-r--r--security/i2pd/Makefile5
-rw-r--r--security/i2pd/distinfo5
-rw-r--r--security/i2pd/files/patch-build_CMakeLists.txt35
-rw-r--r--security/i2pd/files/patch-httpparser49
4 files changed, 54 insertions, 40 deletions
diff --git a/security/i2pd/Makefile b/security/i2pd/Makefile
index aca0d628159e..218b40d3b0f6 100644
--- a/security/i2pd/Makefile
+++ b/security/i2pd/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= i2pd
-PORTVERSION= 2.3.0
+PORTVERSION= 2.7.0
CATEGORIES= security net-p2p
MAINTAINER= amdmi3@FreeBSD.org
@@ -11,10 +11,9 @@ COMMENT= C++ implementation of I2P client
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
-BROKEN_powerpc64= Does not build
-
LIB_DEPENDS= libboost_thread.so:devel/boost-libs
+BROKEN_powerpc64= Does not build
BROKEN_FreeBSD_9= does not build
USE_GITHUB= yes
diff --git a/security/i2pd/distinfo b/security/i2pd/distinfo
index 7f4250f39ce7..e9e4082f4f8a 100644
--- a/security/i2pd/distinfo
+++ b/security/i2pd/distinfo
@@ -1,2 +1,3 @@
-SHA256 (PurpleI2P-i2pd-2.3.0_GH0.tar.gz) = 2397311cb10b04b843d136d9afe01b57f92bfaff72324cfa370f2d0fd74ae7dd
-SIZE (PurpleI2P-i2pd-2.3.0_GH0.tar.gz) = 367391
+TIMESTAMP = 1464019672
+SHA256 (PurpleI2P-i2pd-2.7.0_GH0.tar.gz) = e4a3e192e424492962092f65a04fe12cac10f267ba2c99e2e62ca917741fba7e
+SIZE (PurpleI2P-i2pd-2.7.0_GH0.tar.gz) = 410922
diff --git a/security/i2pd/files/patch-build_CMakeLists.txt b/security/i2pd/files/patch-build_CMakeLists.txt
deleted file mode 100644
index 727126e7f886..000000000000
--- a/security/i2pd/files/patch-build_CMakeLists.txt
+++ /dev/null
@@ -1,35 +0,0 @@
---- build/CMakeLists.txt.orig 2016-01-12 15:14:22 UTC
-+++ build/CMakeLists.txt
-@@ -209,7 +209,7 @@ else()
- endif ()
-
- if (WITH_PCH)
-- include_directories(${CMAKE_BINARY_DIR})
-+ include_directories( BEFORE ${CMAKE_BINARY_DIR})
- add_library(stdafx STATIC "${CMAKE_SOURCE_DIR}/stdafx.cpp")
- if(MSVC)
- target_compile_options(stdafx PRIVATE /Ycstdafx.h /Zm155)
-@@ -246,11 +246,9 @@ if(NOT DEFINED OPENSSL_INCLUDE_DIR)
- message(SEND_ERROR "Could not find OpenSSL. Please download and install it first!")
- endif()
-
--find_package ( MiniUPnPc )
--if (MINIUPNPC_FOUND)
-- include_directories( ${MINIUPNPC_INCLUDE_DIR} )
--else ()
-- set(WITH_UPNP OFF)
-+if (WITH_UPNP)
-+ find_package ( MiniUPnPc REQUIRED )
-+ include_directories( SYSTEM ${MINIUPNPC_INCLUDE_DIR} )
- endif()
-
- find_package ( ZLIB )
-@@ -289,7 +287,7 @@ endif ()
- link_directories(${CMAKE_CURRENT_BINARY_DIR}/zlib/lib ${ZLIB_ROOT}/lib)
-
- # load includes
--include_directories( ${Boost_INCLUDE_DIRS} ${OPENSSL_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR} )
-+include_directories( SYSTEM ${Boost_INCLUDE_DIRS} ${OPENSSL_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR} )
-
- # show summary
- message(STATUS "---------------------------------------")
diff --git a/security/i2pd/files/patch-httpparser b/security/i2pd/files/patch-httpparser
new file mode 100644
index 000000000000..a48fee8952a2
--- /dev/null
+++ b/security/i2pd/files/patch-httpparser
@@ -0,0 +1,49 @@
+commit 43a90d7b98b1b317022f468bcf23027e039142fe
+Author: hagen <hagen@mail.i2p>
+Date: Thu May 26 00:00:00 2016 +0000
+
+ * HTTP.cpp : fix parse_header_line (#501)
+
+diff --git HTTP.cpp HTTP.cpp
+index 83f1ac3..66dbc76 100644
+--- HTTP.cpp
++++ HTTP.cpp
+@@ -45,9 +45,10 @@ namespace http {
+ bool parse_header_line(const std::string & line, std::map<std::string, std::string> & headers) {
+ std::size_t pos = 0;
+ std::size_t len = 2; /* strlen(": ") */
++ std::size_t max = line.length();
+ if ((pos = line.find(": ", pos)) == std::string::npos)
+ return false;
+- while (isspace(line.at(pos + len)))
++ while ((pos + len) < max && isspace(line.at(pos + len)))
+ len++;
+ std::string name = line.substr(0, pos);
+ std::string value = line.substr(pos + len);
+diff --git tests/test-http-req.cpp tests/test-http-req.cpp
+index 10ea621..d536262 100644
+--- tests/test-http-req.cpp
++++ tests/test-http-req.cpp
+@@ -68,6 +68,7 @@ int main() {
+ buf =
+ "GET http://inr.i2p HTTP/1.1\r\n"
+ "Host: stats.i2p\r\n"
++ "Accept-Encoding: \r\n"
+ "Accept: */*\r\n"
+ "\r\n";
+ len = strlen(buf);
+@@ -76,9 +77,13 @@ int main() {
+ assert(req->method == "GET");
+ assert(req->uri == "http://inr.i2p");
+ assert(req->host == "stats.i2p");
+- assert(req->headers.size() == 2);
++ assert(req->headers.size() == 3);
+ assert(req->headers.count("Host") == 1);
+ assert(req->headers.count("Accept") == 1);
++ assert(req->headers.count("Accept-Encoding") == 1);
++ assert(req->headers["Host"] == "stats.i2p");
++ assert(req->headers["Accept"] == "*/*");
++ assert(req->headers["Accept-Encoding"] == "");
+ delete req;
+
+ return 0;