Index: head/security/i2pd/Makefile =================================================================== --- head/security/i2pd/Makefile (revision 415950) +++ head/security/i2pd/Makefile (revision 415951) @@ -1,51 +1,50 @@ # Created by: Dmitry Marakasov # $FreeBSD$ PORTNAME= i2pd -PORTVERSION= 2.3.0 +PORTVERSION= 2.7.0 CATEGORIES= security net-p2p MAINTAINER= amdmi3@FreeBSD.org 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 GH_ACCOUNT= PurpleI2P USES= cmake compiler:c++11-lib CMAKE_SOURCE_PATH=${WRKSRC}/build USE_OPENSSL= yes PLIST_FILES= bin/${PORTNAME} \ man/man1/${PORTNAME}.1.gz PORTDOCS= * OPTIONS_DEFINE= AESNI UPNP DOCS AESNI_DESC= Use AES-NI instructions set AESNI_CMAKE_ON= -DWITH_AESNI=ON AESNI_CMAKE_OFF=-DWITH_AESNI=OFF UPNP_DESC= Include support for UPnP client UPNP_CMAKE_ON= -DWITH_UPNP=ON UPNP_CMAKE_OFF= -DWITH_UPNP=OFF UPNP_LIB_DEPENDS=libminiupnpc.so:net/miniupnpc do-install: ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin ${INSTALL_MAN} ${WRKSRC}/debian/${PORTNAME}.1 ${STAGEDIR}${MAN1PREFIX}/man/man1 do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/docs/configuration.md ${STAGEDIR}${DOCSDIR}/ .include Index: head/security/i2pd/distinfo =================================================================== --- head/security/i2pd/distinfo (revision 415950) +++ head/security/i2pd/distinfo (revision 415951) @@ -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 Index: head/security/i2pd/files/patch-build_CMakeLists.txt =================================================================== --- head/security/i2pd/files/patch-build_CMakeLists.txt (revision 415950) +++ head/security/i2pd/files/patch-build_CMakeLists.txt (nonexistent) @@ -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 "---------------------------------------") Property changes on: head/security/i2pd/files/patch-build_CMakeLists.txt ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/security/i2pd/files/patch-httpparser =================================================================== --- head/security/i2pd/files/patch-httpparser (nonexistent) +++ head/security/i2pd/files/patch-httpparser (revision 415951) @@ -0,0 +1,49 @@ +commit 43a90d7b98b1b317022f468bcf23027e039142fe +Author: hagen +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 & 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; Property changes on: head/security/i2pd/files/patch-httpparser ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property