apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From d...@sent.com
Subject Re: apr name-resolution (e.g. used in SVN) fails if /etc/resolv.conf points to nameserver IPv6-addresses
Date Sun, 03 Nov 2013 00:00:34 GMT


On Sat, Nov 2, 2013, at 04:14 PM, Ben Reser wrote:
> I suspect that your distro provided APR does not have proper IPv6 support
> included in it.

My tests includec BOTH the distro-provided APR *and* my DIY'd
built-from-src APR with ipv6 explicitly enabled 

> As far as I can tell from your info in this email you aren't rebuilding serf

correct.  remedying that ...

> serf is built against a different APR than Subversion is.

In the test following, apr, apr-util, serf and subversion are
version-consistently built.

The distro-provided AND source-built SVN *both* still FAIL in the case
of URL name targets, and SUCCEED in the case of URL IP-address targets.

details:

cd     /home/darx/SVN_TEST
rm -rf /home/darx/SVN_TEST/*

wget http://download.nextag.com/apache/apr/apr-1.4.8.tar.gz
wget http://download.nextag.com/apache/apr/apr-util-1.5.2.tar.gz
wget http://serf.googlecode.com/files/serf-1.3.2.tar.bz2
wget http://psg.mtu.edu/pub/apache/subversion/subversion-1.8.4.tar.gz


tar zxvf apr-1.4.8.tar.gz
tar zxvf apr-util-1.5.2.tar.gz
tar jxvf serf-1.3.2.tar.bz2
tar zxvf subversion-1.8.4.tar.gz

cd apr-1.4.8
./configure \
--prefix=/home/darx/SVN_TEST/apr1 \
--libdir=/home/darx/SVN_TEST/apr1/lib64 \
--enable-ipv6
make -j4
make install

cd ../apr-util-1.5.2
./configure \
--prefix=/home/darx/SVN_TEST/apr1 \
--libdir=/home/darx/SVN_TEST/apr1/lib64 \
--with-apr=/home/darx/SVN_TEST/apr1/bin/apr-1-config
make -j4
make install

cd ../serf-1.3.2
scons -c
scons \
 PREFIX=/home/darx/SVN_TEST/serf \
 LIBDIR=/home/darx/SVN_TEST/serf/lib64 \
 APR=/home/darx/SVN_TEST/apr1/bin/apr-1-config \
 APU=/home/darx/SVN_TEST/apr1/bin/apu-1-config
scons install

cd ../subversion-1.8.4

LDFLAGS="-L/home/darx/SVN_TEST/apr1/lib64
-Wl,-rpath,/home/darx/SVN_TEST/apr1/lib64
-L/home/darx/SVN_TEST/serv/lib64
-Wl,rpath,/home/darx/SVN_TEST/serv/lib64 -laprutil-1 -lapr-1 -lserf"
LIBS="-laprutil-1 -lapr-1 -lserf"

make clean
./configure \
--prefix=/home/darx/SVN_TEST/svn184 \
--libdir=/home/darx/SVN_TEST/svn184/lib64 \
--with-apr=/home/darx/SVN_TEST/apr1/bin/apr-1-config \
--with-apr-util=/home/darx/SVN_TEST/apr1/bin/apu-1-config \
--with-gnu-ld \
--with-serf
make -j4
make install

verify consistent apr, apr-util, serf, subversion links

	ldd /home/darx/SVN_TEST/svn184/bin/svn | egrep -i "apr|serf"
		libsvn_ra_serf-1.so.0 =>
		/home/darx/SVN_TEST/svn184/lib64/libsvn_ra_serf-1.so.0
		(0x00007fcf15ae0000)
		libserf-1.so.1 =>
		/home/darx/SVN_TEST/serf/lib64/libserf-1.so.1
		(0x00007fcf158c6000)
		libaprutil-1.so.0 =>
		/home/darx/SVN_TEST/apr1/lib64/libaprutil-1.so.0
		(0x00007fcf14b1e000)
		libapr-1.so.0 =>
		/home/darx/SVN_TEST/apr1/lib64/libapr-1.so.0
		(0x00007fcf148ef000)

with resolvers set to IPv6

	cat /etc/resolv.conf
		nameserver 2600:3c01::2
		nameserver 2600:3c01::3
		options rotate

checking hosts

	dig A    www.nlnetlabs.nl      +short
		213.154.224.1
	dig AAAA www.nlnetlabs.nl      +short
		2001:7b8:206:1::1

no problems with resolver

testing 2 specific FAIL cases, as reported previously,

	S="www.nlnetlabs.nl"
	T="svn/nsd/tags/NSD_4_0_0_REL/tpkg/manual"

both

	rm -rf test
	/usr/bin/svn co http://$S/$T test
		svn: E670002: Unable to connect to a repository at URL
		'http://www.nlnetlabs.nl/svn/nsd/tags/NSD_4_0_0_REL/tpkg/manual'
		svn: E670002: Name or service not known

and

	rm -rf test
	/home/darx/SVN_TEST/svn184/bin/svn co http://$S/$T test
		svn: E670002: Unable to connect to a repository at URL
		'http://www.nlnetlabs.nl/svn/nsd/tags/NSD_4_0_0_REL/tpkg/manual'
		svn: E670002: Name or service not known

still FAIL.

but, testing with the numeric IPv6 IP-address, both

	rm -rf test
	/usr/bin/svn co http://[2001:7b8:206:1::1]/$T test
		...
		Checked out revision 4089.

and

	rm -rf test
	/home/darx/SVN_TEST/svn184/bin/svn co
	http://[2001:7b8:206:1::1]/$T test
		...
		Checked out revision 4089.

still succeed.


Mime
View raw message