Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 27 May 2020 12:11:02 +0000 (UTC)
From:      Hiroki Tagato <tagattie@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r536690 - in head/dns/powerdns-recursor: . files
Message-ID:  <202005271211.04RCB200026206@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: tagattie
Date: Wed May 27 12:11:01 2020
New Revision: 536690
URL: https://svnweb.freebsd.org/changeset/ports/536690

Log:
  - Update to 4.3.1
  - Mark broken on i386
  - Updated hostnamemax patch
  
  PR:		246655
  Submitted by:	Ralf van der Enden <tremere@cainites.net> (maintainer)
  Approved by:	ehaupt (mentor)
  MFH:		2020Q2 (blanket, security fixes)
  Security:	f9c5a410-9b4e-11ea-ac3f-6805ca2fa271
  Changelog:	https://doc.powerdns.com/recursor/changelog/4.3.html#change-4.3.1

Added:
  head/dns/powerdns-recursor/files/patch-hostnamemax   (contents, props changed)
Deleted:
  head/dns/powerdns-recursor/files/patch-dns_random.cc
Modified:
  head/dns/powerdns-recursor/Makefile
  head/dns/powerdns-recursor/distinfo
  head/dns/powerdns-recursor/files/patch-configure
  head/dns/powerdns-recursor/files/patch-dnsname.hh
  head/dns/powerdns-recursor/files/patch-pdns_recursor.cc

Modified: head/dns/powerdns-recursor/Makefile
==============================================================================
--- head/dns/powerdns-recursor/Makefile	Wed May 27 12:08:46 2020	(r536689)
+++ head/dns/powerdns-recursor/Makefile	Wed May 27 12:11:01 2020	(r536690)
@@ -2,7 +2,7 @@
 # $FreeBSD$
 
 PORTNAME=	recursor
-DISTVERSION=	4.3.0
+DISTVERSION=	4.3.1
 CATEGORIES=	dns
 MASTER_SITES=	http://downloads.powerdns.com/releases/
 PKGNAMEPREFIX=	powerdns-
@@ -16,6 +16,7 @@ LICENSE_FILE=	${WRKSRC}/COPYING
 
 BROKEN_armv6=	fails to compile: use of overloaded operator << is ambiguous
 BROKEN_armv7=	fails to compile: use of overloaded operator << is ambiguous
+BROKEN_i386=	crashes on startup (SIGSEGV)
 BROKEN_sparc64=	fails to compile: json11.cpp: undefined reference to std::__throw_out_of_range_fmt
 
 BUILD_DEPENDS=	${LOCALBASE}/include/boost/shared_ptr.hpp:devel/boost-libs

Modified: head/dns/powerdns-recursor/distinfo
==============================================================================
--- head/dns/powerdns-recursor/distinfo	Wed May 27 12:08:46 2020	(r536689)
+++ head/dns/powerdns-recursor/distinfo	Wed May 27 12:11:01 2020	(r536690)
@@ -1,3 +1,3 @@
-TIMESTAMP = 1583454090
-SHA256 (pdns-recursor-4.3.0.tar.bz2) = 2bc130f287dfdb32e03d0b38a4ac24baf1117f96eca9b407611c847fa08a628f
-SIZE (pdns-recursor-4.3.0.tar.bz2) = 1349359
+TIMESTAMP = 1589879472
+SHA256 (pdns-recursor-4.3.1.tar.bz2) = 54230852fcad3c6291651069c383f7ea88c5d29ce3c561decb2f40a063f52fd9
+SIZE (pdns-recursor-4.3.1.tar.bz2) = 1334817

Modified: head/dns/powerdns-recursor/files/patch-configure
==============================================================================
--- head/dns/powerdns-recursor/files/patch-configure	Wed May 27 12:08:46 2020	(r536689)
+++ head/dns/powerdns-recursor/files/patch-configure	Wed May 27 12:11:01 2020	(r536690)
@@ -1,6 +1,6 @@
---- configure.orig	2020-03-02 07:50:20.000000000 -0500
-+++ configure	2020-03-02 07:50:20.000000000 -0500
-@@ -21139,8 +21139,10 @@
+--- configure.orig	2020-05-08 09:56:25 UTC
++++ configure
+@@ -21467,8 +21467,10 @@ fi
              { $as_echo "$as_me:${as_lineno-$LINENO}: checking for openssl/crypto.h in $ssldir" >&5
  $as_echo_n "checking for openssl/crypto.h in $ssldir... " >&6; }
              if test -f "$ssldir/include/openssl/crypto.h"; then

Modified: head/dns/powerdns-recursor/files/patch-dnsname.hh
==============================================================================
--- head/dns/powerdns-recursor/files/patch-dnsname.hh	Wed May 27 12:08:46 2020	(r536689)
+++ head/dns/powerdns-recursor/files/patch-dnsname.hh	Wed May 27 12:11:01 2020	(r536690)
@@ -1,5 +1,5 @@
---- dnsname.hh.orig	2020-03-02 07:49:54.000000000 -0500
-+++ dnsname.hh	2020-03-02 07:49:54.000000000 -0500
+--- dnsname.hh.orig	2020-05-08 09:31:59 UTC
++++ dnsname.hh
 @@ -33,7 +33,7 @@
  #include <boost/version.hpp>
  
@@ -9,7 +9,7 @@
  #include <boost/container/string.hpp>
  #endif
  
-@@ -138,7 +138,7 @@
+@@ -138,7 +138,7 @@ class DNSName (public)
    inline bool canonCompare(const DNSName& rhs) const;
    bool slowCanonCompare(const DNSName& rhs) const;  
  

Added: head/dns/powerdns-recursor/files/patch-hostnamemax
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/dns/powerdns-recursor/files/patch-hostnamemax	Wed May 27 12:11:01 2020	(r536690)
@@ -0,0 +1,90 @@
+diff --git misc.cc misc.cc
+index f9248af42a..5cb4dbe812 100644
+--- misc.cc
++++ misc.cc
+@@ -57,6 +57,7 @@
+ #include <sys/types.h>
+ #include <pwd.h>
+ #include <grp.h>
++#include <limits.h>
+ #ifdef __FreeBSD__
+ #  include <pthread_np.h>
+ #endif
+@@ -1563,3 +1564,39 @@ bool setPipeBufferSize(int fd, size_t size)
+   return false;
+ #endif /* F_SETPIPE_SZ */
+ }
++
++static size_t getMaxHostNameSize()
++{
++#if defined(HOST_NAME_MAX)
++  return HOST_NAME_MAX;
++#endif
++
++#if defined(_SC_HOST_NAME_MAX)
++  auto tmp = sysconf(_SC_HOST_NAME_MAX);
++  if (tmp != -1) {
++    return tmp;
++  }
++#endif
++
++  /* _POSIX_HOST_NAME_MAX */
++  return 255;
++}
++
++std::string getCarbonHostName()
++{
++  std::string hostname;
++  hostname.resize(getMaxHostNameSize() + 1, 0);
++
++  if (gethostname(const_cast<char*>(hostname.c_str()), hostname.size()) != 0) {
++    throw std::runtime_error(stringerror());
++  }
++
++  auto pos = hostname.find(".");
++  if (pos != std::string::npos) {
++    hostname.resize(pos);
++  }
++
++  boost::replace_all(hostname, ".", "_");
++
++  return hostname;
++}
+diff --git misc.hh misc.hh
+index 4bd9439a87..795e8ec855 100644
+--- misc.hh
++++ misc.hh
+@@ -607,3 +607,5 @@ bool isSettingThreadCPUAffinitySupported();
+ int mapThreadToCPUList(pthread_t tid, const std::set<int>& cpus);
+ 
+ std::vector<ComboAddress> getResolvers(const std::string& resolvConfPath);
++
++std::string getCarbonHostName();
+diff --git rec-carbon.cc rec-carbon.cc
+index 4e0cedb00f..458a25d5ca 100644
+--- rec-carbon.cc
++++ rec-carbon.cc
+@@ -32,17 +32,13 @@ try
+   if(namespace_name.empty()) {
+     namespace_name="pdns";
+   }
+-  if(hostname.empty()) {
+-    char tmp[HOST_NAME_MAX+1];
+-    memset(tmp, 0, sizeof(tmp));
+-    if (gethostname(tmp, sizeof(tmp)) != 0) {
+-      throw std::runtime_error("The 'carbon-ourname' setting has not been set and we are unable to determine the system's hostname: " + stringerror());
++  if (hostname.empty()) {
++    try {
++      hostname = getCarbonHostName();
++    }
++    catch(const std::exception& e) {
++      throw std::runtime_error(std::string("The 'carbon-ourname' setting has not been set and we are unable to determine the system's hostname: ") + e.what());
+     }
+-    char *p = strchr(tmp, '.');
+-    if(p) *p=0;
+-
+-    hostname=tmp;
+-    boost::replace_all(hostname, ".", "_");    
+   }
+   if(instance_name.empty()) {
+     instance_name="recursor";

Modified: head/dns/powerdns-recursor/files/patch-pdns_recursor.cc
==============================================================================
--- head/dns/powerdns-recursor/files/patch-pdns_recursor.cc	Wed May 27 12:08:46 2020	(r536689)
+++ head/dns/powerdns-recursor/files/patch-pdns_recursor.cc	Wed May 27 12:11:01 2020	(r536690)
@@ -1,6 +1,6 @@
---- pdns_recursor.cc.orig	2020-03-02 07:49:54.000000000 -0500
-+++ pdns_recursor.cc	2020-03-02 07:49:54.000000000 -0500
-@@ -4639,12 +4639,12 @@
+--- pdns_recursor.cc.orig	2020-05-08 09:31:59 UTC
++++ pdns_recursor.cc
+@@ -4640,12 +4640,12 @@ int main(int argc, char **argv)
  #define SYSTEMD_SETID_MSG ". When running inside systemd, use the User and Group settings in the unit-file!"
          SYSTEMD_SETID_MSG
  #endif



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202005271211.04RCB200026206>