+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.
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:
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.
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
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
- 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!
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
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); ],
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(
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); ],
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); ],
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
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
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
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 \
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 ; \
# 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
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
// -*- 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>
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?
}
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
top_distdir = ../..
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
+exec_prefix = @exec_prefix@
distdir: $(DISTFILES)
@for file in $(DISTFILES); do \
install:
$(mkinstalldirs) $(DESTDIR)@libdir@
install -s libxdbbackend.so $(DESTDIR)@libdir@
+ $(mkinstalldirs) $(DESTDIR)@bindir@
+ install -s xdb-fill $(DESTDIR)@bindir@
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
+++ /dev/null
-/* Define when extra posix typedefs are needed (solaris2.6) */
-#undef NEED_POSIX_TYPEDEF
-#undef VERBOSELOG
#!/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 &&