[Pdns-users] pdns_recursor: Solaris-8 compile problems, no root hints
Juergen Georgi
georgi at belwue.de
Wed Mar 22 13:17:04 UTC 2006
Hi,
in order to get pdns_recursor 2.9.20 compile on Solaris-8 (Sparc),
I applied the attached patch. However pdns_recursor isn't able
to resolve any queries at all. On start it outputs:
Mar 22 14:02:28 PowerDNS recursor 2.9.20 (C) 2001-2006 PowerDNS.COM BV (Mar 22 2006, 09:00:51, gcc 3.3.2) starting up
Mar 22 14:02:28 Operating in 32 bits mode
Mar 22 14:02:28 PowerDNS comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it according to the terms of the GPL version 2.
Mar 22 14:02:28 Sending UDP queries from 0.0.0.0:16838
Mar 22 14:02:28 Listening for UDP queries on 127.0.0.1:53
Mar 22 14:02:28 Listening for TCP queries on 127.0.0.1:53
Mar 22 14:02:28 Done priming cache with root hints
Mar 22 14:02:28 Set effective group id to 111
Mar 22 14:02:28 Set effective user id to 111
Mar 22 14:02:28 : No cache hit for '|NS', trying to find an appropriate NS record
Mar 22 14:02:28 : Checking if we have NS in cache for ''
Mar 22 14:02:28 : our root expired, repriming from hints and retrying
Mar 22 14:02:28 : Checking if we have NS in cache for ''
Mar 22 14:02:28 : our root expired, repriming from hints and retrying
Mar 22 14:02:28 : Cache consultations done, have 0 NS to contact
Mar 22 14:02:28 : Nameservers:
Mar 22 14:02:28 : Failed to resolve via any of the 0 offered NS
Mar 22 14:02:28 : failed
Mar 22 14:02:28 Failed to update . records, RCODE=2
It doesn't matter if I configure a hint-file or not, pdns_recursor
thinks it hasn't any root hints.
Maybe the patch broke something. But the same modifications
did work with 2.9.19, with a severe memory leak though.
Is anyone out there who has pdns_recursor successfully running
on Solaris 8? Any hints are welcome!
Thanks,
-Juergen Georgi
-------------- next part --------------
--- pdns/sillyrecords.cc.orig Wed Mar 15 19:29:38 2006
+++ pdns/sillyrecords.cc Thu Mar 16 09:26:54 2006
@@ -99,10 +99,10 @@
/* converts ascii size/precision X * 10**Y(cm) to 0xXY. moves pointer.*/
-static u_int8_t precsize_aton(const char **strptr)
+static uint8_t precsize_aton(const char **strptr)
{
unsigned int mval = 0, cmval = 0;
- u_int8_t retval = 0;
+ uint8_t retval = 0;
const char *cp;
int exponent;
int mantissa;
@@ -243,9 +243,9 @@
uint32_t latit = 0, longit = 0, alt = 0;
uint32_t lltemp1 = 0, lltemp2 = 0;
int altmeters = 0, altfrac = 0, altsign = 1;
- u_int8_t hp = 0x16; /* default = 1e6 cm = 10000.00m = 10km */
- u_int8_t vp = 0x13; /* default = 1e3 cm = 10.00m */
- u_int8_t siz = 0x12; /* default = 1e2 cm = 1.00m */
+ uint8_t hp = 0x16; /* default = 1e6 cm = 10000.00m = 10km */
+ uint8_t vp = 0x13; /* default = 1e3 cm = 10.00m */
+ uint8_t siz = 0x12; /* default = 1e2 cm = 1.00m */
int which1 = 0, which2 = 0;
cp = content.c_str();
--- pdns/dnswriter.hh.orig Wed Mar 15 19:29:38 2006
+++ pdns/dnswriter.hh Thu Mar 16 13:33:53 2006
@@ -4,7 +4,6 @@
#include <string>
#include <vector>
#include <map>
-#include <stdint.h>
#include <netinet/in.h>
#include <arpa/nameser.h>
--- pdns/rcpgenerator.hh.orig Thu Mar 16 13:34:24 2006
+++ pdns/rcpgenerator.hh Thu Mar 16 13:36:53 2006
@@ -22,7 +22,6 @@
#include <string>
#include <stdexcept>
-#include <stdint.h>
using namespace std;
--- pdns/dnsparser.cc.orig Wed Mar 15 19:29:38 2006
+++ pdns/dnsparser.cc Thu Mar 16 13:45:27 2006
@@ -305,7 +305,7 @@
return ret;
}
-u_int8_t PacketReader::get8BitInt()
+uint8_t PacketReader::get8BitInt()
{
return d_content.at(d_pos++);
}
@@ -330,7 +330,7 @@
return ret;
}
-void PacketReader::getLabelFromContent(const vector<u_int8_t>& content, uint16_t& frompos, string& ret, int recurs)
+void PacketReader::getLabelFromContent(const vector<uint8_t>& content, uint16_t& frompos, string& ret, int recurs)
{
if(recurs > 10)
throw MOADNSException("Loop");
--- pdns/dnspcap.hh.orig Wed Mar 15 19:29:38 2006
+++ pdns/dnspcap.hh Tue Mar 21 16:27:33 2006
@@ -10,7 +10,7 @@
#include <netinet/in_systm.h>
#include <netinet/ip.h>
#include <netinet/udp.h>
-#include <net/ethernet.h>
+#include <sys/ethernet.h>
#include <vector>
#include <boost/format.hpp>
using namespace std;
More information about the Pdns-users
mailing list