On 10/11/03 11:10 PM, Marko Karppinen wrote:

Hi,

BIND9 has finally removed the long-deprecated T_A, T_MX result type symbols from the BIND4 era. checkdnsrr() in ext/standard/dns.c still relies on them, however, so at the moment PHP 4.3.4 doesn't build on a BIND9 system like Mac OS X 10.3 Panther.

I run into the same problem (OS X 10.3). the following patch would fix it quick&dirty ;)


Index: dns.c
===================================================================
RCS file: /repository/php-src/ext/standard/dns.c,v
retrieving revision 1.63
diff -u -r1.63 dns.c
--- dns.c       26 Sep 2003 08:09:55 -0000      1.63
+++ dns.c       17 Oct 2003 15:53:59 -0000
@@ -56,6 +56,9 @@
 #undef T_UNSPEC
 #endif
 #if HAVE_ARPA_NAMESER_H
+#ifndef T_A
+#define BIND_8_COMPAT 1
+#endif
 #include <arpa/nameser.h>
 #endif
 #if HAVE_RESOLV_H

shall I commit it?
or should we even define BIND_8_COMPAT always?

chregu


Some possible solutions:


1. Define BIND_8_COMPAT to force the bind 9 nameser.h to include a compatibility file with these symbols.

2. Switch to the new naming (T_A -> ns_t_a, T_MX, ns_t_mx etc) and define aliases to the old ones if the new ones are not defined (ie. on a BIND4 or earlier system).

Derick seems to favour the latter approach.

Thanks,
mk

-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php



Reply via email to