]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
cleanups
authorBert Hubert <bert.hubert@netherlabs.nl>
Mon, 16 Dec 2002 13:04:27 +0000 (13:04 +0000)
committerBert Hubert <bert.hubert@netherlabs.nl>
Mon, 16 Dec 2002 13:04:27 +0000 (13:04 +0000)
git-svn-id: svn://svn.powerdns.com/pdns/trunk/pdns@77 d19b8d6e-7fed-0310-83ef-9ca221ded41b

14 files changed:
ChangeLog
README
TODO
configure.in
debian/changelog
debian/control
debian/rules
modules/pipebackend/Makefile.am
modules/pipebackend/coprocess.cc
modules/pipebackend/pipebackend.cc
modules/xdbbackend/Makefile.in
pdns.spec
pdns/acconfig.h [deleted file]
rpm-build-instruction

index 89b150ddb74e285ac928ad406917bc3e7bd4a5bc..343e5bf1ce2c7ba260bd7854e29effec0384a810 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Changes since 2.9.2:
+       - windows compilation patches
+       - tiny improvements in win98 error messages
+
 Changes since 2.9.1:
        - removed debugging output from the webserver (found by Paul Wouters)
        - due to Solaris portability fixes, qtypes>127 were broken. 
diff --git a/README b/README
index 10baa7d8e8655ec1470a8c75845581dc6f66813a..da732f5a9e68e193ca3d470000481688a345f9cb 100644 (file)
--- a/README
+++ b/README
@@ -8,7 +8,7 @@ $ make
 
 This generates a PowerDNS binary with no modules, except the bind backend,
 built in. When ./configure is run without --with-modules, the mysql and
-pgmysql modules is built by default, with the latter only supporting mysql.
+pgmysql modules are built by default, with the latter only supporting mysql.
 
 To add multiple modules, try:
 
@@ -33,6 +33,9 @@ FREEBSD NOTES
 gcc 2.95.x works. You need to compile using gmake - regular make only appears to
 work, but doesn't in fact. Use gmake, not make.
 
+pipebackend does not work due to bad interaction between fork and pthreads.
+Amazingly, running the Linux version under the linuxulator DOES work!
+
 LINUX NOTES
 -----------
 None really.
diff --git a/TODO b/TODO
index e4f09cc9408a609f32b8695341e484b9ba0246c3..2e6f81165df5356cb38b2506e414c884f87e98a8 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,16 +1,5 @@
 bugs:
-fixed  bind backend ANY queries don't work
-fixed  records of unknown type are reported as -1?
-fixed  pdns/pdns should be +x
        pdns.conf-dist contains old descriptions
-       redhat does not find postgresql includes by default
-       redhat does not find postgresql libraries by default
-
-
-immediate issues:
-       make install installs libraries with a static build which it should
-               not
-
 
 Things we will not do but hope other people will:
        - Ports to NetBSD, OpenBSD, AIX
@@ -25,6 +14,7 @@ Big things:
 
 Medium size things:
        - 64 bit cleanliness
+               compiles on 64 bit, but does it work?
        - Improve bind 'workalike' mode so we are a drop-in replacement for
          non-resolving bind. We're 90% there.
                Add support for being master/slave in bind mode
@@ -32,8 +22,6 @@ Medium size things:
        - get PDNS into Red Hat 8.x 
                needs very good RPMS    
                need to get Red Hat interested
-       - get PDNS into Debian Sid
-               Wichert Akkerman is working on this
        - get PDNS into FreeBSD ports
        - and other architectures       
        - test powerdns in a windows environment!
@@ -58,27 +46,3 @@ int SPgSQL::doQuery(const string &query)
   d_count=0;
   return 0;
 }
-
-
-
-Mostly polish on the build process:
-       - add support for building dynamic modules again
-               .so files that can be loaded at runtime and distributed
-               separately
-
-
-$ export CVSROOT=:pserver:anon@outpost.ds9a.nl:/var/cvsroot
-$ cvs login
-CVS password: [enter 'cvs' (without 's)]
-$ cvs co pdns
-cvs server: Updating pdns
-...
-
-       - In ./modules you will find a number of exciting modules that need to
-         be tought to add themselves to the 'distdir', so they appear in
-         'make dist', the PowerDNS distribution.
-
-       
-Real work:
-       - Mac OS X version (has been done, partly)
-       - resurrect W2K version
\ No newline at end of file
index ac8e235b1d66fea037166299f24b03a82c5366c2..1140b240cb1d65c442107785701c4c1fb4fc0faf 100644 (file)
@@ -54,7 +54,7 @@ fi
 LIBS=$ac_save_LIBS
 
 # pthread_create is in standard libraries (As in BSDI 3.0)
-AC_MSG_CHECKING("for pthread_create in -libc");
+AC_MSG_CHECKING([for pthread_create in -libc]);
 AC_TRY_LINK(
 [#include <pthread.h>],
 [ (void) pthread_create((pthread_t*) 0,(pthread_attr_t*) 0, 0, 0); ],
@@ -62,7 +62,7 @@ with_posix_threads=yes, with_posix_threads=no)
 AC_MSG_RESULT("$with_posix_threads")
 if test "$with_posix_threads" = "no"
 then
-  AC_MSG_CHECKING("for pthread_create in -lpthread");
+  AC_MSG_CHECKING([for pthread_create in -lpthread]);
   ac_save_LIBS="$LIBS"
   LIBS="$LIBS -lpthread"
   AC_TRY_LINK(
@@ -73,7 +73,7 @@ then
   if test "$with_posix_threads" = "no"
   then
     LIBS=" $ac_save_LIBS -lpthreads"
-    AC_MSG_CHECKING("for pthread_create in -lpthreads");
+    AC_MSG_CHECKING([for pthread_create in -lpthreads]);
     AC_TRY_LINK(
     [#include <pthread.h>],
     [ pthread_create((pthread_t*) 0,(pthread_attr_t*) 0, 0, 0); ],
@@ -83,7 +83,7 @@ then
     then
          # This is for FreeBSD
          LIBS="$ac_save_LIBS -pthread"
-         AC_MSG_CHECKING("for pthread_create in -pthread");
+         AC_MSG_CHECKING([for pthread_create in -pthread]);
          AC_TRY_LINK(
          [#include <pthread.h>],
          [ pthread_create((pthread_t*) 0,(pthread_attr_t*) 0, 0, 0); ],
index 3fd0de94834e378c1ed52c498330a30683303901..79a8acee77bf48b282cc3604cba5c85ebb372c59 100644 (file)
@@ -1,8 +1,10 @@
 pdns (2.9.2-1) unstable; urgency=low
 
-  * upstream updates
+  * New upstream release
+  * bind backend fully merged in the main pdns package now
+  * Add new pipe, pgmysql and xdb backends
 
- -- bert hubert <bert@powerdns.com>  Wed, 11 Dec 2002 15:04:52 +0100
+ -- Wichert Akkerman <wakkerma@debian.org>  Fri, 13 Dec 2002 16:39:29 +0100
 
 pdns (2.9-1) unstable; urgency=low
 
index 648449825bb6d0879ee3741c1d77eedcb85fb7e9..216fa97fe20cfcc5c322f3af5f89bb49629df76c 100644 (file)
@@ -3,7 +3,7 @@ Section: net
 Priority: extra
 Standards-Version: 3.5.8
 Maintainer: Wichert Akkerman <wakkerma@debian.org>
-Build-Depends: automake1.5, autoconf, libtool, flex, bison, docbook-utils, libmysqlclient10-dev, postgresql-dev, tdb-dev
+Build-Depends: automake1.5, autoconf, libtool, flex, bison, docbook-utils, libmysqlclient10-dev, postgresql-dev, tdb-dev, libgdbmg1-dev
 
 Package: pdns
 Architecture: any
@@ -16,6 +16,7 @@ Description: extremely powerful and versatile nameserver
  databases and load balancing/failover algorithms.
 
 Package: pdns-doc
+Section: doc
 Architecture: all
 Description: PowerDNS manual
  This is the complete manual for PowerDNS, documenting both
index 1a0657a9300bd703ebdba7281aecdc92e9e58145..c9c5a6f80632972c5222193e50f6703ac924012a 100755 (executable)
@@ -63,6 +63,7 @@ binary-main: stamp-build
        make DESTDIR="$(tmpdir)" install
 
        rm -f "$(tmpdir)"/usr/bin/binpatch
+       rm -f "$(tmpdir)"/usr/bin/xdb-fill
        rm -rf "$(tmpdir)"/usr/lib
 
        strip --remove-section=.comment --remove-section=.note \
@@ -111,13 +112,19 @@ binary-backend: stamp-build
        make DESTDIR="$(tmpdir)" install
 
        strip --remove-section=.comment --remove-section=.note \
-               --strip-unneeded "$(tmpdir)"/usr/lib/powerdns/*.so
+               --strip-unneeded "$(tmpdir)"/usr/lib/powerdns/*.so \
+               "$(tmpdir)"/usr/bin/xdb-fill
        chmod 644 "$(tmpdir)"/usr/lib/powerdns/*
 
        set -e ; for be in $(backends) ; do \
                rm -f debian/substvars ; \
                rm -rf "$(tmpdir)"-$$be ; \
                pkg=pdns-backend-$$be ; \
+               if [ "$$be" = "xdb" ] ; then \
+                       install -d -m 755 -o root -g root "$(tmpdir)"-$$be/usr/bin ; \
+                       mv "$(tmpdir)"/usr/bin/xdb-fill  "$(tmpdir)"-$$be/usr/bin/ ; \
+               fi ; \
+               \
                install -d -m 755 -o root -g root "$(tmpdir)"-$$be/usr/lib/powerdns ; \
                mv "$(tmpdir)"/usr/lib/powerdns/lib$$be* "$(tmpdir)"-$$be/usr/lib/powerdns ; \
                install -d -m 755 -o root -g root "$(tmpdir)"-$$be/usr/share/doc ; \
index a0af665b311f916cf1b554c71a1707f759fa806b..8c0df8ceacacb04771d465487a0ffeae1a68546a 100644 (file)
@@ -3,7 +3,7 @@
 #      install .lib/libpipebackend.so.0.0.0 @libdir@
 #endif
 
-EXTRA_DIST=OBJECTFILES OBJECTLIBS
+EXTRA_DIST=OBJECTFILES OBJECTLIBS backend.pl
 lib_LTLIBRARIES = libpipebackend.la
 
 libpipebackend_la_SOURCES=pipebackend.cc pipebackend.hh coprocess.cc coprocess.hh
index 169ad4c115f0f99bba4f98fab83cf5c0d9448032..cd450f9fe791983f221e07835c62a845556ae2e9 100644 (file)
@@ -102,7 +102,7 @@ void CoProcess::send(const string &snd)
   string line(snd);
   line.append(1,'\n');
   
-  int sent=0;
+  unsigned int sent=0;
   int bytes;
 
   // writen routine - socket may not accept al data in one go
index 8aa5cbc6d9d376280a8044590ab23d77ff23d0c1..a29eb6794688b1c40b6f402936e4400f9b16de4d 100644 (file)
@@ -1,6 +1,6 @@
 // -*- sateh-c -*- 
 // File    : pdnsbackend.cc
-// Version : $Id: pipebackend.cc,v 1.3 2002/12/09 16:24:17 ahu Exp $ 
+// Version : $Id: pipebackend.cc,v 1.4 2002/12/16 13:04:27 ahu Exp $ 
 //
 
 #include <string>
@@ -182,9 +182,8 @@ bool PipeBackend::get(DNSResourceRecord &r)
          continue;
       }
       else if(parts[0]=="DATA") { // yay
-
          if(parts.size()<7) {
-            L<<Logger::Error<<kBackendId<<" coprocess returned emtpy line in data section for query for "<<d_qname<<endl;
+            L<<Logger::Error<<kBackendId<<" coprocess returned incomplete or empty line in data section for query for "<<d_qname<<endl;
             throw AhuException("Format error communicating with coprocess in data section");
             // now what?
          }
@@ -192,7 +191,18 @@ bool PipeBackend::get(DNSResourceRecord &r)
          r.qtype=parts[3];
          r.ttl=atoi(parts[4].c_str());
          r.domain_id=atoi(parts[5].c_str());
-         r.content=parts[6];
+
+        if(parts[3]!="MX")
+          r.content=parts[6];
+        else {
+          if(parts.size()<8) {
+            L<<Logger::Error<<kBackendId<<" coprocess returned incomplete MX line in data section for query for "<<d_qname<<endl;
+            throw AhuException("Format error communicating with coprocess in data section of MX record");
+          }
+          
+          r.priority=atoi(parts[6].c_str());
+          r.content=parts[7];
+        }
          break;
       }
       else
index bef2f2450fa1443221b94f6c66eb197616746620..26439ee57b4295b6167626d5a4ca10f532848972 100644 (file)
@@ -19,6 +19,7 @@ DISTFILES=*.cc *.hh Makefile.in OBJECTFILES OBJECTLIBS
 
 top_distdir = ../..
 distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
+exec_prefix = @exec_prefix@
 
 distdir: $(DISTFILES)
        @for file in $(DISTFILES); do \
@@ -49,4 +50,6 @@ prefix=@prefix@
 install:
        $(mkinstalldirs) $(DESTDIR)@libdir@
        install -s libxdbbackend.so $(DESTDIR)@libdir@
+       $(mkinstalldirs) $(DESTDIR)@bindir@
+       install -s xdb-fill $(DESTDIR)@bindir@
 
index 37a04cbdea6eaec2ffd0284b018242f77051c136..5bf32ca4893b48fc9f83f680794db3448eebec12 100644 (file)
--- a/pdns.spec
+++ b/pdns.spec
@@ -1,6 +1,6 @@
 Buildroot: /tmp/pdns
 Name: pdns
-Version: 2.9.1
+Version: 2.9.2
 Release: 1
 Summary: extremely powerful and versatile nameserver
 Copyright: see /usr/doc/pdns/copyright
diff --git a/pdns/acconfig.h b/pdns/acconfig.h
deleted file mode 100644 (file)
index 5122365..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-/* Define when extra posix typedefs are needed (solaris2.6) */
-#undef NEED_POSIX_TYPEDEF
-#undef VERBOSELOG
index a9b7a254ceb44c2445dc4ccc3ff90b5753254833..618ee76d277741c533b6d3d40883709625d32808 100755 (executable)
@@ -1,9 +1,9 @@
 #!/bin/sh
-./configure --with-modules="mysql pgmysql pdns pipe" \
+./configure --with-modules="mysql pgmysql pipe pdns" --with-dynmodules="" \
        --enable-static-binaries --enable-mysql --enable-pgsql \
        --with-pgsql-lib=/opt/postgresql-with-3.2/lib/ --prefix=/usr \
        --sysconfdir=/etc/powerdns \
-&& make && \
+&& make clean && make && \
 sudo /bin/sh -c "rm -rf /tmp/pdns ; DESTDIR=/tmp/pdns make install-strip" &&
 sudo mkdir -p /tmp/pdns/etc/init.d &&
 sudo cp pdns/pdns /tmp/pdns/etc/init.d/pdns &&