diff --git a/nsd/nsd.patch b/nsd/nsd.patch new file mode 100644 index 0000000000..2e6cc0378d --- /dev/null +++ b/nsd/nsd.patch @@ -0,0 +1,38 @@ +--- nsd.c 17 Dec 2002 14:42:06 -0000 1.56.2.10 ++++ nsd.c 12 Feb 2003 09:19:50 -0000 +@@ -159,6 +159,7 @@ + signal(SIGINT, &sig_handler); + signal(SIGILL, &sig_handler); + signal(SIGALRM, &sig_handler); ++ signal(SIGPIPE, SIG_IGN); + + + /* Are we a tcp child? */ +@@ -566,6 +567,7 @@ + signal(SIGINT, &sig_handler); + signal(SIGILL, &sig_handler); + signal(SIGALRM, &sig_handler); ++ signal(SIGPIPE, SIG_IGN); + + /* Get our process id */ + nsd.pid[0] = getpid(); +diff -u -r1.83 query.c +--- query.c 14 Oct 2002 13:12:16 -0000 1.83 ++++ query.c 18 Feb 2003 10:46:11 -0000 +@@ -145,11 +145,13 @@ + + /* Truncate */ + if(d && DOMAIN_FLAGS(d) & NAMEDB_DELEGATION) { +- ANCOUNT(q) = NSCOUNT(q); ++ ANCOUNT(q) = htons(ntohs(NSCOUNT(q)) + ntohs(ARCOUNT(q))); ++ } else { ++ q->iobufptr = qptr + ANSWER_RRS(a, ntohs(ANCOUNT(q))); + } +- NSCOUNT(q) = 0; ++ + ARCOUNT(q) = 0; +- q->iobufptr = qptr + ANSWER_RRS(a, ntohs(ANCOUNT(q))); ++ NSCOUNT(q) = 0; + + /* More data... */ + return 1; diff --git a/nsd/nsd.spec b/nsd/nsd.spec index 8f82930e67..fc0e926e5f 100644 --- a/nsd/nsd.spec +++ b/nsd/nsd.spec @@ -36,7 +36,7 @@ Distribution: OpenPKG [EVAL] Group: DNS License: GPL Version: 1.0.2 -Release: 20030227 +Release: 20030413 # list of sources Source0: http://www.nlnetlabs.nl/downloads/nsd/nsd-%{version}.tar.gz @@ -45,6 +45,7 @@ Source2: nsd.zones Source3: nsdc.conf Source4: example.com Source5: fsl.nsd +Patch0: nsd.patch # build information Prefix: %{l_prefix} @@ -63,6 +64,7 @@ AutoReqProv: no %prep %setup -q + %patch -p0 %build # build programs