2008-10-19 21:17:40 +02:00
|
|
|
# $NetBSD: Makefile,v 1.39 2008/10/19 19:18:31 he Exp $
|
1999-11-08 02:06:49 +01:00
|
|
|
|
2008-03-15 13:10:21 +01:00
|
|
|
DISTNAME= Net-DNS-0.63
|
2000-08-27 09:10:59 +02:00
|
|
|
PKGNAME= p5-${DISTNAME}
|
2008-10-19 21:17:40 +02:00
|
|
|
PKGREVISION= 1
|
2001-10-18 17:20:01 +02:00
|
|
|
SVR4_PKGNAME= p5ndn
|
1999-11-08 02:06:49 +01:00
|
|
|
CATEGORIES= net perl5
|
2002-09-09 02:22:22 +02:00
|
|
|
MASTER_SITES= ${MASTER_SITE_PERL_CPAN:=Net/} \
|
|
|
|
http://www.net-dns.org/download/
|
1999-11-08 02:06:49 +01:00
|
|
|
|
2005-02-21 23:26:05 +01:00
|
|
|
MAINTAINER= heinz@NetBSD.org
|
2002-09-09 02:22:22 +02:00
|
|
|
HOMEPAGE= http://www.net-dns.org/
|
2003-11-26 06:59:50 +01:00
|
|
|
COMMENT= Perl5 module for DNS resolution
|
1999-11-08 02:06:49 +01:00
|
|
|
|
Updated to version 0.55.
Pkgsrc changes:
- Removed hacks.mk. Net::DNS should work on Mac OS 10.4 withouth this
workaround.
- The package has two options now: "inet6" and "online-tests".
- p5-Net-DNS requires an additional package, p5-Net-IP.
Relevant changes since version 0.49:
====================================
- many bug fixes (see Changes and rt.cpan.org)
Feature Net::DNS::Nameserver loop_once()
Uncommented the documentation of the loop_once() function and introduced
get_open_tcp() that reports if there are any open TCP sockets (useful
when using loop_once().
loop_once() itself was introduced in version 0.53_02
Feature async nameserver behaviour.
Fix IPv6 on AIX
Binding to the local interface did not work when local address was
specified as "0" instead of "::". The problem was identified,
reported and fixed by Achim Adam.
Feature
Net::DNS::RR::OPT
added the the size(), do(),set_do() and clear_do() methods.
Feature:
Added "ignqrid" as an attribute to the Resolver.
use as:
ok (my $res=Net::DNS::Resolver->new(nameservers => ['127.0.0.1'],
port => 5354,
recurse => 0,
igntc => 1,
ignqrid => 1,
),
When the attribute is set to a non-zero value replies with the
qr bit clear and replies with non-matching query ids are
happily accepted. This opens the possibility to accept spoofed
answers. YOU CAN BURN YOURSELF WITH THIS FEATURE.
It is set to 0 per default and remains, except for this changes file
an undocumented feature.
Fix: Makefile.PL: Minor tweak to recognize Mac OS X 10.4 not so relevant
since netdnslib is distributed with the code.
Feature: Calling the Net::DNS::Resolver::dnssec method with a non-zero
argument will set the udppacketsize to 2048. The method will
also carp a warning if you pass a non-zero argument when
Net::DNS::SEC is not installed.
Feature: IPv6 transport support
IPv6 transport has been added to the resolver and to the
nameserver code.
To use IPv6 please make sure that you have IO::Socket::INET6 version
2.01 or later installed.
If IPv6 transport is available Net::DNS::Resolver::Recurse will make
use of it (picking randomly between IPv4 and IPv6 transport) use
the force_v4() method to only force IPv4.
Feature: Binary characters in labels
RFC 1035 3.1:
Domain names in messages are expressed in terms of a sequence of
labels. Each label is represented as a one octet length field
followed by that number of octets. Since every domain name ends
with the null label of the root, a domain name is terminated by a
length byte of zero. The high order two bits of every length octet
must be zero, and the remaining six bits of the length field limit
the label to 63 octets or less.
Unfortunatelly dname attributes are stored strings throughout
Net::DNS. (With hindsight dnames should have had their own class
in which one could have preserved the wire format.).
To be able to represent all octets that are allowed in domain
names I took the approach to use the "presentation format" for
the attributes. This presentation format is defined in RFC 1035
5.1.
I added code to parse presentation format domain names that has
escpaped data such as \ddd and \X (where X is not a number) to
wireformat and vice verse. In the conversion from wire format to
presentation format the characters that have special meaning in a
zone file are escaped (so that they can be cut-n-pasted without
pain).
These are " (0x22), $ (0x24), (0x28), ) (0x29), . (0x2e) , ;
(0x3b), @ (ox40) and \ (0x5c). The number between brackets
representing the ascii code in hex.
Note that wherever a name occurs as a string in Net::DNS it is
now in presentation format.
For those that dealth with 'hostnames' (subset of all possible
domain names) this will be a completely transparent change.
Details:
I added netdnslib wich contains Net::DNS's own dn_expand. Its
implemented in C and the source is a hodgepodge of Berkeley based
code and sniplets from ISC's bind9 distribution. The behavior, in
terms of which chars are escaped, is similare to bind9.
There are some functions added to DNS.pm that do conversion from
presentation and wire format and back. They should only be used
internally (although they live in EXPORT_OK.)
For esotheric test cases see t/11-escapedchars.t.
2006-02-09 22:35:46 +01:00
|
|
|
PKG_INSTALLATION_TYPES= overwrite pkgviews
|
2006-11-05 18:31:09 +01:00
|
|
|
PKG_DESTDIR_SUPPORT= user-destdir
|
Updated to version 0.55.
Pkgsrc changes:
- Removed hacks.mk. Net::DNS should work on Mac OS 10.4 withouth this
workaround.
- The package has two options now: "inet6" and "online-tests".
- p5-Net-DNS requires an additional package, p5-Net-IP.
Relevant changes since version 0.49:
====================================
- many bug fixes (see Changes and rt.cpan.org)
Feature Net::DNS::Nameserver loop_once()
Uncommented the documentation of the loop_once() function and introduced
get_open_tcp() that reports if there are any open TCP sockets (useful
when using loop_once().
loop_once() itself was introduced in version 0.53_02
Feature async nameserver behaviour.
Fix IPv6 on AIX
Binding to the local interface did not work when local address was
specified as "0" instead of "::". The problem was identified,
reported and fixed by Achim Adam.
Feature
Net::DNS::RR::OPT
added the the size(), do(),set_do() and clear_do() methods.
Feature:
Added "ignqrid" as an attribute to the Resolver.
use as:
ok (my $res=Net::DNS::Resolver->new(nameservers => ['127.0.0.1'],
port => 5354,
recurse => 0,
igntc => 1,
ignqrid => 1,
),
When the attribute is set to a non-zero value replies with the
qr bit clear and replies with non-matching query ids are
happily accepted. This opens the possibility to accept spoofed
answers. YOU CAN BURN YOURSELF WITH THIS FEATURE.
It is set to 0 per default and remains, except for this changes file
an undocumented feature.
Fix: Makefile.PL: Minor tweak to recognize Mac OS X 10.4 not so relevant
since netdnslib is distributed with the code.
Feature: Calling the Net::DNS::Resolver::dnssec method with a non-zero
argument will set the udppacketsize to 2048. The method will
also carp a warning if you pass a non-zero argument when
Net::DNS::SEC is not installed.
Feature: IPv6 transport support
IPv6 transport has been added to the resolver and to the
nameserver code.
To use IPv6 please make sure that you have IO::Socket::INET6 version
2.01 or later installed.
If IPv6 transport is available Net::DNS::Resolver::Recurse will make
use of it (picking randomly between IPv4 and IPv6 transport) use
the force_v4() method to only force IPv4.
Feature: Binary characters in labels
RFC 1035 3.1:
Domain names in messages are expressed in terms of a sequence of
labels. Each label is represented as a one octet length field
followed by that number of octets. Since every domain name ends
with the null label of the root, a domain name is terminated by a
length byte of zero. The high order two bits of every length octet
must be zero, and the remaining six bits of the length field limit
the label to 63 octets or less.
Unfortunatelly dname attributes are stored strings throughout
Net::DNS. (With hindsight dnames should have had their own class
in which one could have preserved the wire format.).
To be able to represent all octets that are allowed in domain
names I took the approach to use the "presentation format" for
the attributes. This presentation format is defined in RFC 1035
5.1.
I added code to parse presentation format domain names that has
escpaped data such as \ddd and \X (where X is not a number) to
wireformat and vice verse. In the conversion from wire format to
presentation format the characters that have special meaning in a
zone file are escaped (so that they can be cut-n-pasted without
pain).
These are " (0x22), $ (0x24), (0x28), ) (0x29), . (0x2e) , ;
(0x3b), @ (ox40) and \ (0x5c). The number between brackets
representing the ascii code in hex.
Note that wherever a name occurs as a string in Net::DNS it is
now in presentation format.
For those that dealth with 'hostnames' (subset of all possible
domain names) this will be a completely transparent change.
Details:
I added netdnslib wich contains Net::DNS's own dn_expand. Its
implemented in C and the source is a hodgepodge of Berkeley based
code and sniplets from ISC's bind9 distribution. The behavior, in
terms of which chars are escaped, is similare to bind9.
There are some functions added to DNS.pm that do conversion from
presentation and wire format and back. They should only be used
internally (although they live in EXPORT_OK.)
For esotheric test cases see t/11-escapedchars.t.
2006-02-09 22:35:46 +01:00
|
|
|
|
2004-05-29 18:50:49 +02:00
|
|
|
BUILD_DEPENDS+= {p5-Test-Simple>=0.44,perl{,-thread}>=5.8.0}:../../devel/p5-Test-Simple
|
2002-09-09 02:22:22 +02:00
|
|
|
DEPENDS+= p5-Digest-HMAC>=1.0:../../security/p5-Digest-HMAC
|
2003-03-03 11:56:57 +01:00
|
|
|
DEPENDS+= p5-Digest-MD5>=2.12:../../security/p5-Digest-MD5
|
Updated to version 0.55.
Pkgsrc changes:
- Removed hacks.mk. Net::DNS should work on Mac OS 10.4 withouth this
workaround.
- The package has two options now: "inet6" and "online-tests".
- p5-Net-DNS requires an additional package, p5-Net-IP.
Relevant changes since version 0.49:
====================================
- many bug fixes (see Changes and rt.cpan.org)
Feature Net::DNS::Nameserver loop_once()
Uncommented the documentation of the loop_once() function and introduced
get_open_tcp() that reports if there are any open TCP sockets (useful
when using loop_once().
loop_once() itself was introduced in version 0.53_02
Feature async nameserver behaviour.
Fix IPv6 on AIX
Binding to the local interface did not work when local address was
specified as "0" instead of "::". The problem was identified,
reported and fixed by Achim Adam.
Feature
Net::DNS::RR::OPT
added the the size(), do(),set_do() and clear_do() methods.
Feature:
Added "ignqrid" as an attribute to the Resolver.
use as:
ok (my $res=Net::DNS::Resolver->new(nameservers => ['127.0.0.1'],
port => 5354,
recurse => 0,
igntc => 1,
ignqrid => 1,
),
When the attribute is set to a non-zero value replies with the
qr bit clear and replies with non-matching query ids are
happily accepted. This opens the possibility to accept spoofed
answers. YOU CAN BURN YOURSELF WITH THIS FEATURE.
It is set to 0 per default and remains, except for this changes file
an undocumented feature.
Fix: Makefile.PL: Minor tweak to recognize Mac OS X 10.4 not so relevant
since netdnslib is distributed with the code.
Feature: Calling the Net::DNS::Resolver::dnssec method with a non-zero
argument will set the udppacketsize to 2048. The method will
also carp a warning if you pass a non-zero argument when
Net::DNS::SEC is not installed.
Feature: IPv6 transport support
IPv6 transport has been added to the resolver and to the
nameserver code.
To use IPv6 please make sure that you have IO::Socket::INET6 version
2.01 or later installed.
If IPv6 transport is available Net::DNS::Resolver::Recurse will make
use of it (picking randomly between IPv4 and IPv6 transport) use
the force_v4() method to only force IPv4.
Feature: Binary characters in labels
RFC 1035 3.1:
Domain names in messages are expressed in terms of a sequence of
labels. Each label is represented as a one octet length field
followed by that number of octets. Since every domain name ends
with the null label of the root, a domain name is terminated by a
length byte of zero. The high order two bits of every length octet
must be zero, and the remaining six bits of the length field limit
the label to 63 octets or less.
Unfortunatelly dname attributes are stored strings throughout
Net::DNS. (With hindsight dnames should have had their own class
in which one could have preserved the wire format.).
To be able to represent all octets that are allowed in domain
names I took the approach to use the "presentation format" for
the attributes. This presentation format is defined in RFC 1035
5.1.
I added code to parse presentation format domain names that has
escpaped data such as \ddd and \X (where X is not a number) to
wireformat and vice verse. In the conversion from wire format to
presentation format the characters that have special meaning in a
zone file are escaped (so that they can be cut-n-pasted without
pain).
These are " (0x22), $ (0x24), (0x28), ) (0x29), . (0x2e) , ;
(0x3b), @ (ox40) and \ (0x5c). The number between brackets
representing the ascii code in hex.
Note that wherever a name occurs as a string in Net::DNS it is
now in presentation format.
For those that dealth with 'hostnames' (subset of all possible
domain names) this will be a completely transparent change.
Details:
I added netdnslib wich contains Net::DNS's own dn_expand. Its
implemented in C and the source is a hodgepodge of Berkeley based
code and sniplets from ISC's bind9 distribution. The behavior, in
terms of which chars are escaped, is similare to bind9.
There are some functions added to DNS.pm that do conversion from
presentation and wire format and back. They should only be used
internally (although they live in EXPORT_OK.)
For esotheric test cases see t/11-escapedchars.t.
2006-02-09 22:35:46 +01:00
|
|
|
DEPENDS+= p5-MIME-Base64>=2.11:../../converters/p5-MIME-Base64
|
|
|
|
DEPENDS+= p5-Net-IP>=1.20:../../net/p5-Net-IP
|
2002-09-09 02:22:22 +02:00
|
|
|
|
Updated to version 0.55.
Pkgsrc changes:
- Removed hacks.mk. Net::DNS should work on Mac OS 10.4 withouth this
workaround.
- The package has two options now: "inet6" and "online-tests".
- p5-Net-DNS requires an additional package, p5-Net-IP.
Relevant changes since version 0.49:
====================================
- many bug fixes (see Changes and rt.cpan.org)
Feature Net::DNS::Nameserver loop_once()
Uncommented the documentation of the loop_once() function and introduced
get_open_tcp() that reports if there are any open TCP sockets (useful
when using loop_once().
loop_once() itself was introduced in version 0.53_02
Feature async nameserver behaviour.
Fix IPv6 on AIX
Binding to the local interface did not work when local address was
specified as "0" instead of "::". The problem was identified,
reported and fixed by Achim Adam.
Feature
Net::DNS::RR::OPT
added the the size(), do(),set_do() and clear_do() methods.
Feature:
Added "ignqrid" as an attribute to the Resolver.
use as:
ok (my $res=Net::DNS::Resolver->new(nameservers => ['127.0.0.1'],
port => 5354,
recurse => 0,
igntc => 1,
ignqrid => 1,
),
When the attribute is set to a non-zero value replies with the
qr bit clear and replies with non-matching query ids are
happily accepted. This opens the possibility to accept spoofed
answers. YOU CAN BURN YOURSELF WITH THIS FEATURE.
It is set to 0 per default and remains, except for this changes file
an undocumented feature.
Fix: Makefile.PL: Minor tweak to recognize Mac OS X 10.4 not so relevant
since netdnslib is distributed with the code.
Feature: Calling the Net::DNS::Resolver::dnssec method with a non-zero
argument will set the udppacketsize to 2048. The method will
also carp a warning if you pass a non-zero argument when
Net::DNS::SEC is not installed.
Feature: IPv6 transport support
IPv6 transport has been added to the resolver and to the
nameserver code.
To use IPv6 please make sure that you have IO::Socket::INET6 version
2.01 or later installed.
If IPv6 transport is available Net::DNS::Resolver::Recurse will make
use of it (picking randomly between IPv4 and IPv6 transport) use
the force_v4() method to only force IPv4.
Feature: Binary characters in labels
RFC 1035 3.1:
Domain names in messages are expressed in terms of a sequence of
labels. Each label is represented as a one octet length field
followed by that number of octets. Since every domain name ends
with the null label of the root, a domain name is terminated by a
length byte of zero. The high order two bits of every length octet
must be zero, and the remaining six bits of the length field limit
the label to 63 octets or less.
Unfortunatelly dname attributes are stored strings throughout
Net::DNS. (With hindsight dnames should have had their own class
in which one could have preserved the wire format.).
To be able to represent all octets that are allowed in domain
names I took the approach to use the "presentation format" for
the attributes. This presentation format is defined in RFC 1035
5.1.
I added code to parse presentation format domain names that has
escpaped data such as \ddd and \X (where X is not a number) to
wireformat and vice verse. In the conversion from wire format to
presentation format the characters that have special meaning in a
zone file are escaped (so that they can be cut-n-pasted without
pain).
These are " (0x22), $ (0x24), (0x28), ) (0x29), . (0x2e) , ;
(0x3b), @ (ox40) and \ (0x5c). The number between brackets
representing the ascii code in hex.
Note that wherever a name occurs as a string in Net::DNS it is
now in presentation format.
For those that dealth with 'hostnames' (subset of all possible
domain names) this will be a completely transparent change.
Details:
I added netdnslib wich contains Net::DNS's own dn_expand. Its
implemented in C and the source is a hodgepodge of Berkeley based
code and sniplets from ISC's bind9 distribution. The behavior, in
terms of which chars are escaped, is similare to bind9.
There are some functions added to DNS.pm that do conversion from
presentation and wire format and back. They should only be used
internally (although they live in EXPORT_OK.)
For esotheric test cases see t/11-escapedchars.t.
2006-02-09 22:35:46 +01:00
|
|
|
PKG_OPTIONS_VAR= PKG_OPTIONS.p5-Net-DNS
|
|
|
|
PKG_SUPPORTED_OPTIONS= inet6 online-tests
|
|
|
|
PKG_SUGGESTED_OPTIONS= inet6
|
|
|
|
|
|
|
|
.include "../../mk/bsd.options.mk"
|
|
|
|
|
|
|
|
.if !empty(PKG_OPTIONS:Minet6)
|
|
|
|
DEPENDS+= p5-INET6>=2.01:../../net/p5-INET6
|
|
|
|
DEPENDS+= p5-Socket6-[0-9]*:../../net/p5-Socket6
|
|
|
|
.endif
|
2004-01-05 23:16:24 +01:00
|
|
|
|
Updated to version 0.55.
Pkgsrc changes:
- Removed hacks.mk. Net::DNS should work on Mac OS 10.4 withouth this
workaround.
- The package has two options now: "inet6" and "online-tests".
- p5-Net-DNS requires an additional package, p5-Net-IP.
Relevant changes since version 0.49:
====================================
- many bug fixes (see Changes and rt.cpan.org)
Feature Net::DNS::Nameserver loop_once()
Uncommented the documentation of the loop_once() function and introduced
get_open_tcp() that reports if there are any open TCP sockets (useful
when using loop_once().
loop_once() itself was introduced in version 0.53_02
Feature async nameserver behaviour.
Fix IPv6 on AIX
Binding to the local interface did not work when local address was
specified as "0" instead of "::". The problem was identified,
reported and fixed by Achim Adam.
Feature
Net::DNS::RR::OPT
added the the size(), do(),set_do() and clear_do() methods.
Feature:
Added "ignqrid" as an attribute to the Resolver.
use as:
ok (my $res=Net::DNS::Resolver->new(nameservers => ['127.0.0.1'],
port => 5354,
recurse => 0,
igntc => 1,
ignqrid => 1,
),
When the attribute is set to a non-zero value replies with the
qr bit clear and replies with non-matching query ids are
happily accepted. This opens the possibility to accept spoofed
answers. YOU CAN BURN YOURSELF WITH THIS FEATURE.
It is set to 0 per default and remains, except for this changes file
an undocumented feature.
Fix: Makefile.PL: Minor tweak to recognize Mac OS X 10.4 not so relevant
since netdnslib is distributed with the code.
Feature: Calling the Net::DNS::Resolver::dnssec method with a non-zero
argument will set the udppacketsize to 2048. The method will
also carp a warning if you pass a non-zero argument when
Net::DNS::SEC is not installed.
Feature: IPv6 transport support
IPv6 transport has been added to the resolver and to the
nameserver code.
To use IPv6 please make sure that you have IO::Socket::INET6 version
2.01 or later installed.
If IPv6 transport is available Net::DNS::Resolver::Recurse will make
use of it (picking randomly between IPv4 and IPv6 transport) use
the force_v4() method to only force IPv4.
Feature: Binary characters in labels
RFC 1035 3.1:
Domain names in messages are expressed in terms of a sequence of
labels. Each label is represented as a one octet length field
followed by that number of octets. Since every domain name ends
with the null label of the root, a domain name is terminated by a
length byte of zero. The high order two bits of every length octet
must be zero, and the remaining six bits of the length field limit
the label to 63 octets or less.
Unfortunatelly dname attributes are stored strings throughout
Net::DNS. (With hindsight dnames should have had their own class
in which one could have preserved the wire format.).
To be able to represent all octets that are allowed in domain
names I took the approach to use the "presentation format" for
the attributes. This presentation format is defined in RFC 1035
5.1.
I added code to parse presentation format domain names that has
escpaped data such as \ddd and \X (where X is not a number) to
wireformat and vice verse. In the conversion from wire format to
presentation format the characters that have special meaning in a
zone file are escaped (so that they can be cut-n-pasted without
pain).
These are " (0x22), $ (0x24), (0x28), ) (0x29), . (0x2e) , ;
(0x3b), @ (ox40) and \ (0x5c). The number between brackets
representing the ascii code in hex.
Note that wherever a name occurs as a string in Net::DNS it is
now in presentation format.
For those that dealth with 'hostnames' (subset of all possible
domain names) this will be a completely transparent change.
Details:
I added netdnslib wich contains Net::DNS's own dn_expand. Its
implemented in C and the source is a hodgepodge of Berkeley based
code and sniplets from ISC's bind9 distribution. The behavior, in
terms of which chars are escaped, is similare to bind9.
There are some functions added to DNS.pm that do conversion from
presentation and wire format and back. They should only be used
internally (although they live in EXPORT_OK.)
For esotheric test cases see t/11-escapedchars.t.
2006-02-09 22:35:46 +01:00
|
|
|
.if !empty(PKG_OPTIONS:Monline-tests)
|
Update to 0.45.
Patch to enable online tests no longer necessary.
Changes since 0.42:
Revision history for Net::DNS
=============================
*** 0.45 January 8, 2004
No changes from 0.44_02.
** 0.44_02 January 3, 2004
The XS detection code was broken. We actually use the XS bits now.
Major cleanups/optimizations of the various RR subclasses. This release
of Net::DNS is over twice as fast at parsing dns packets as 0.44.
** NOTICE **
$rr->rdatastr no longer returns '; no data' if the RR record has no
data. This happens in $rr->string now.
Net::DNS::Packet::safe_push() no longer exists. The method is now only
avalible from Net::DNS::Update objects.
** 0.44_01 January 3, 2004
Net::DNS::RR objects were not playing nice with Storable, this caused
the axfr demo script to fail. Thanks to Joe Dial for the report.
** NOTICE **
This may cause RR objects that are already serialize to not deserialize
correctly.
Reply handlers in Net::DNS::Nameserver are now passed the query object.
Fixed a nasty bug in Nameserver.pm related to the qr bit. As Olaf
explained:
Replies are sent if the query has its "qr" bit set. The "qr" bit is an
indication that the packet is sent as a response to a query. Since
there are more implementations that suffer from this bug one can cause
all kinds of nasty ping-pong loops by spoofing the initial packet or
have an infinite query loop by spoofing a query from the localhost:53
address.
Various Win32/Cygwin cleanups from Sidney Markowitz.
*** 0.44 December 12, 2003
The Wrath of CPAN Release.
CPAN.pm doesn't understand the nature of revision numbers. 1.10 is
newer than 1.9; but CPAN.pm treats them as floats. This is bad.
All the internal version numbers in Net::DNS have been bumped to
2.100 in order to fix this.
No actual code changes in this release.
*** 0.43 December 11, 2003
Added warning of deprecation of Net::DNS::Packet::safe_push. This will
move into Net::DNS::Update, as Net::DNS::Update is now a proper subclass
of Net::DNS::Packet.
** 0.42_02 December 11, 2003
Fixed a long standing bug with zone transfers in the "many-answers" format.
CPAN #1903.
Added the '--online-tests' flag to Makefile.PL. This activates the online
tests without asking the user interactively. "--no-online-tests" turns
the tests off.
Cleaned up Makefile.PL a little. The "--pm" flag is now deprecated, use
"--no-xs" instead.
Added support for unknown RR types (rfc3597). Note for developers: the
typesbyname, typesbyval, classesbyname and classesbyval hashes should
not be used directly, use the same named wrapper functions
instead. [Olaf Kolkman]
Added two hashes for administrative use; they store which types are
qtypes and metatypes (rfc2929). [Olaf Kolkman]
** 0.42_01 November 30, 2003
Major work to get Net::DNS functioning properly on Cygwin by Sidney
Markowitz.
Fixed a bug in Net::DNS::Nameserver's error handling. CPAN #4195
2004-01-18 23:36:52 +01:00
|
|
|
MAKE_PARAMS= --online-tests
|
Updated to version 0.55.
Pkgsrc changes:
- Removed hacks.mk. Net::DNS should work on Mac OS 10.4 withouth this
workaround.
- The package has two options now: "inet6" and "online-tests".
- p5-Net-DNS requires an additional package, p5-Net-IP.
Relevant changes since version 0.49:
====================================
- many bug fixes (see Changes and rt.cpan.org)
Feature Net::DNS::Nameserver loop_once()
Uncommented the documentation of the loop_once() function and introduced
get_open_tcp() that reports if there are any open TCP sockets (useful
when using loop_once().
loop_once() itself was introduced in version 0.53_02
Feature async nameserver behaviour.
Fix IPv6 on AIX
Binding to the local interface did not work when local address was
specified as "0" instead of "::". The problem was identified,
reported and fixed by Achim Adam.
Feature
Net::DNS::RR::OPT
added the the size(), do(),set_do() and clear_do() methods.
Feature:
Added "ignqrid" as an attribute to the Resolver.
use as:
ok (my $res=Net::DNS::Resolver->new(nameservers => ['127.0.0.1'],
port => 5354,
recurse => 0,
igntc => 1,
ignqrid => 1,
),
When the attribute is set to a non-zero value replies with the
qr bit clear and replies with non-matching query ids are
happily accepted. This opens the possibility to accept spoofed
answers. YOU CAN BURN YOURSELF WITH THIS FEATURE.
It is set to 0 per default and remains, except for this changes file
an undocumented feature.
Fix: Makefile.PL: Minor tweak to recognize Mac OS X 10.4 not so relevant
since netdnslib is distributed with the code.
Feature: Calling the Net::DNS::Resolver::dnssec method with a non-zero
argument will set the udppacketsize to 2048. The method will
also carp a warning if you pass a non-zero argument when
Net::DNS::SEC is not installed.
Feature: IPv6 transport support
IPv6 transport has been added to the resolver and to the
nameserver code.
To use IPv6 please make sure that you have IO::Socket::INET6 version
2.01 or later installed.
If IPv6 transport is available Net::DNS::Resolver::Recurse will make
use of it (picking randomly between IPv4 and IPv6 transport) use
the force_v4() method to only force IPv4.
Feature: Binary characters in labels
RFC 1035 3.1:
Domain names in messages are expressed in terms of a sequence of
labels. Each label is represented as a one octet length field
followed by that number of octets. Since every domain name ends
with the null label of the root, a domain name is terminated by a
length byte of zero. The high order two bits of every length octet
must be zero, and the remaining six bits of the length field limit
the label to 63 octets or less.
Unfortunatelly dname attributes are stored strings throughout
Net::DNS. (With hindsight dnames should have had their own class
in which one could have preserved the wire format.).
To be able to represent all octets that are allowed in domain
names I took the approach to use the "presentation format" for
the attributes. This presentation format is defined in RFC 1035
5.1.
I added code to parse presentation format domain names that has
escpaped data such as \ddd and \X (where X is not a number) to
wireformat and vice verse. In the conversion from wire format to
presentation format the characters that have special meaning in a
zone file are escaped (so that they can be cut-n-pasted without
pain).
These are " (0x22), $ (0x24), (0x28), ) (0x29), . (0x2e) , ;
(0x3b), @ (ox40) and \ (0x5c). The number between brackets
representing the ascii code in hex.
Note that wherever a name occurs as a string in Net::DNS it is
now in presentation format.
For those that dealth with 'hostnames' (subset of all possible
domain names) this will be a completely transparent change.
Details:
I added netdnslib wich contains Net::DNS's own dn_expand. Its
implemented in C and the source is a hodgepodge of Berkeley based
code and sniplets from ISC's bind9 distribution. The behavior, in
terms of which chars are escaped, is similare to bind9.
There are some functions added to DNS.pm that do conversion from
presentation and wire format and back. They should only be used
internally (although they live in EXPORT_OK.)
For esotheric test cases see t/11-escapedchars.t.
2006-02-09 22:35:46 +01:00
|
|
|
.else
|
|
|
|
MAKE_PARAMS= --noonline-tests
|
|
|
|
.endif
|
2002-09-09 02:22:22 +02:00
|
|
|
|
2008-01-08 20:29:45 +01:00
|
|
|
USE_LANGUAGES= c
|
|
|
|
|
2005-07-13 20:01:18 +02:00
|
|
|
PERL5_PACKLIST= auto/Net/DNS/.packlist
|
1999-11-08 02:06:49 +01:00
|
|
|
|
2002-10-06 04:37:56 +02:00
|
|
|
.include "../../lang/perl5/module.mk"
|
1999-11-08 02:06:49 +01:00
|
|
|
.include "../../mk/bsd.pkg.mk"
|