summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Cummings <mcummings@gentoo.org>2004-09-21 13:44:28 +0000
committerMichael Cummings <mcummings@gentoo.org>2004-09-21 13:44:28 +0000
commit11f0798e0d714b7bad76b3ccb521d51d8d413bc0 (patch)
treed8e61db879de351be1ee6d848aa488b351204541 /dev-perl/mod_perl/files
parentmark slang-1.4.9-r1 stable on x86 (Manifest recommit) (diff)
downloadgentoo-2-11f0798e0d714b7bad76b3ccb521d51d8d413bc0.tar.gz
gentoo-2-11f0798e0d714b7bad76b3ccb521d51d8d413bc0.tar.bz2
gentoo-2-11f0798e0d714b7bad76b3ccb521d51d8d413bc0.zip
bug 53094
Diffstat (limited to 'dev-perl/mod_perl/files')
-rw-r--r--dev-perl/mod_perl/files/mod_perl-1.29-ipv6.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/dev-perl/mod_perl/files/mod_perl-1.29-ipv6.patch b/dev-perl/mod_perl/files/mod_perl-1.29-ipv6.patch
new file mode 100644
index 000000000000..d11d61a6b7c8
--- /dev/null
+++ b/dev-perl/mod_perl/files/mod_perl-1.29-ipv6.patch
@@ -0,0 +1,29 @@
+diff -ru mod_perl-1.27+ipv6/src/modules/perl/Connection.xs mod_perl-1.27/src/modules/perl/Connection.xs
+--- mod_perl-1.27/src/modules/perl/Connection.xs Fri Sep 29 16:41:30 2000
++++ mod_perl-1.27+ipv6/src/modules/perl/Connection.xs Sun Aug 25 23:02:42 2002
+@@ -78,13 +78,14 @@
+ RETVAL = newSVpv((char *)&conn->remote_addr,
+ sizeof conn->remote_addr);
+ if(sv_addr) {
+- struct sockaddr_in addr;
++ struct sockaddr_storage addr;
+ STRLEN sockaddrlen;
+ char * new_addr = SvPV(sv_addr,sockaddrlen);
+ if (sockaddrlen != sizeof(addr)) {
+ croak("Bad arg length for remote_addr, length is %d, should be %d", sockaddrlen, sizeof(addr));
+ }
+- Copy(new_addr, &addr, sizeof addr, char);
++ memset(&addr, 0, sizeof addr);
++ Copy(new_addr, &addr, sizeof new_addr, char);
+ conn->remote_addr = addr;
+ }
+
+@@ -106,7 +107,7 @@
+ #else
+ conn->remote_ip = pstrdup(conn->pool, (char *)SvPV(ST(1),na));
+ #endif
+- conn->remote_addr.sin_addr.s_addr = inet_addr(conn->remote_ip);
++ ((struct sockaddr_in *) &conn->remote_addr)->sin_addr.s_addr = inet_addr(conn->remote_ip);
+ }
+
+ OUTPUT: