mirror of
https://github.com/fosslinux/live-bootstrap.git
synced 2026-03-20 02:02:58 +01:00
Add perl 5.17.4
This commit is contained in:
parent
98af97b255
commit
77392fa5ab
13 changed files with 1720 additions and 0 deletions
|
|
@ -0,0 +1,270 @@
|
|||
From a70ed0b00a2650fa5a9cc238460e9602a3df9df1 Mon Sep 17 00:00:00 2001
|
||||
From: Samuel Tyler <fosslinux@aussies.space>
|
||||
Date: Fri, 22 Aug 2025 23:59:39 +1000
|
||||
Subject: [PATCH 3/4] Revert "Upgrade Socket from 2.002 to 2.003"
|
||||
|
||||
This reverts commit d4ada64ad845b1ffe124cf230a345b847e43d755.
|
||||
---
|
||||
Porting/Maintainers.pl | 2 +-
|
||||
cpan/Socket/Makefile.PL | 22 ++++++--------
|
||||
cpan/Socket/Socket.pm | 36 +++++++---------------
|
||||
cpan/Socket/Socket.xs | 67 -----------------------------------------
|
||||
cpan/Socket/t/ip_mreq.t | 14 +--------
|
||||
pod/perldelta.pod | 4 +++
|
||||
6 files changed, 27 insertions(+), 118 deletions(-)
|
||||
|
||||
diff --git perl-5.17.4/Porting/Maintainers.pl perl-5.17.4/Porting/Maintainers.pl
|
||||
index 3b3004f6c3..e38daab394 100755
|
||||
--- perl-5.17.4/Porting/Maintainers.pl
|
||||
+++ perl-5.17.4/Porting/Maintainers.pl
|
||||
@@ -1636,7 +1636,7 @@ use File::Glob qw(:case);
|
||||
|
||||
'Socket' => {
|
||||
'MAINTAINER' => 'pevans',
|
||||
- 'DISTRIBUTION' => 'PEVANS/Socket-2.003.tar.gz',
|
||||
+ 'DISTRIBUTION' => 'PEVANS/Socket-2.002.tar.gz',
|
||||
'FILES' => q[cpan/Socket],
|
||||
'UPSTREAM' => 'cpan',
|
||||
},
|
||||
diff --git perl-5.17.4/cpan/Socket/Makefile.PL perl-5.17.4/cpan/Socket/Makefile.PL
|
||||
index 9e76dcea96..3be198e024 100644
|
||||
--- perl-5.17.4/cpan/Socket/Makefile.PL
|
||||
+++ perl-5.17.4/cpan/Socket/Makefile.PL
|
||||
@@ -161,14 +161,13 @@ my @names = (
|
||||
|
||||
IOV_MAX
|
||||
|
||||
- IP_ADD_MEMBERSHIP IP_ADD_SOURCE_MEMBERSHIP IP_DROP_MEMBERSHIP
|
||||
- IP_DROP_SOURCE_MEMBERSHIP IP_HDRINCL IP_MULTICAST_IF IP_MULTICAST_LOOP
|
||||
- IP_MULTICAST_TTL IP_OPTIONS IP_RECVOPTS IP_RECVRETOPTS IP_RETOPTS IP_TOS
|
||||
- IP_TTL
|
||||
+ IP_ADD_MEMBERSHIP IP_DROP_MEMBERSHIP IP_HDRINCL IP_MULTICAST_IF
|
||||
+ IP_MULTICAST_LOOP IP_MULTICAST_TTL IP_OPTIONS IP_RECVOPTS
|
||||
+ IP_RECVRETOPTS IP_RETOPTS IP_TOS IP_TTL
|
||||
|
||||
- IPV6_ADD_MEMBERSHIP IPV6_DROP_MEMBERSHIP IPV6_JOIN_GROUP
|
||||
- IPV6_LEAVE_GROUP IPV6_MTU IPV6_MTU_DISCOVER IPV6_MULTICAST_HOPS
|
||||
- IPV6_MULTICAST_IF IPV6_MULTICAST_LOOP IPV6_UNICAST_HOPS IPV6_V6ONLY
|
||||
+ IPV6_ADD_MEMBERSHIP IPV6_DROP_MEMBERSHIP IPV6_MTU IPV6_MTU_DISCOVER
|
||||
+ IPV6_MULTICAST_HOPS IPV6_MULTICAST_IF IPV6_MULTICAST_LOOP
|
||||
+ IPV6_UNICAST_HOPS IPV6_V6ONLY
|
||||
|
||||
MSG_BCAST MSG_BTAG MSG_CTLFLAGS MSG_CTLIGNORE MSG_DONTWAIT MSG_EOF
|
||||
MSG_EOR MSG_ERRQUEUE MSG_ETAG MSG_FIN MSG_MAXIOVLEN MSG_MCAST
|
||||
@@ -201,11 +200,10 @@ my @names = (
|
||||
SO_SECURITY_ENCRYPTION_TRANSPORT SO_SNDBUF SO_SNDLOWAT SO_SNDTIMEO
|
||||
SO_STATE SO_TYPE SO_USELOOPBACK SO_XOPEN SO_XSE
|
||||
|
||||
- TCP_CONGESTION TCP_CONNECTIONTIMEOUT TCP_CORK TCP_DEFER_ACCEPT TCP_INFO
|
||||
- TCP_INIT_CWND TCP_KEEPALIVE TCP_KEEPCNT TCP_KEEPIDLE TCP_KEEPINTVL
|
||||
- TCP_LINGER2 TCP_MAXRT TCP_MAXSEG TCP_MD5SIG TCP_NODELAY TCP_NOOPT
|
||||
- TCP_NOPUSH TCP_QUICKACK TCP_SACK_ENABLE TCP_STDURG TCP_SYNCNT
|
||||
- TCP_WINDOW_CLAMP
|
||||
+ TCP_KEEPALIVE TCP_MAXRT TCP_MAXSEG TCP_NODELAY TCP_STDURG TCP_CORK
|
||||
+ TCP_KEEPIDLE TCP_KEEPINTVL TCP_KEEPCNT TCP_SYNCNT TCP_LINGER2
|
||||
+ TCP_DEFER_ACCEPT TCP_WINDOW_CLAMP TCP_INFO TCP_QUICKACK TCP_CONGESTION
|
||||
+ TCP_MD5SIG
|
||||
|
||||
UIO_MAXIOV
|
||||
),
|
||||
diff --git perl-5.17.4/cpan/Socket/Socket.pm perl-5.17.4/cpan/Socket/Socket.pm
|
||||
index d9bbfae258..41f214d8fe 100644
|
||||
--- perl-5.17.4/cpan/Socket/Socket.pm
|
||||
+++ perl-5.17.4/cpan/Socket/Socket.pm
|
||||
@@ -3,7 +3,7 @@ package Socket;
|
||||
use strict;
|
||||
{ use 5.006001; }
|
||||
|
||||
-our $VERSION = '2.003';
|
||||
+our $VERSION = '2.002';
|
||||
|
||||
=head1 NAME
|
||||
|
||||
@@ -260,18 +260,6 @@ sockopts.
|
||||
Takes an C<ip_mreq> structure. Returns a list of two elements; the IPv4
|
||||
multicast address and interface address.
|
||||
|
||||
-=head2 $ip_mreq_source = pack_ip_mreq_source $multiaddr, $source, $interface
|
||||
-
|
||||
-Takes an IPv4 multicast address, source address, and optionally an interface
|
||||
-address (or C<INADDR_ANY>). Returns the C<ip_mreq_source> structure with those
|
||||
-arguments packed in. Suitable for use with the C<IP_ADD_SOURCE_MEMBERSHIP>
|
||||
-and C<IP_DROP_SOURCE_MEMBERSHIP> sockopts.
|
||||
-
|
||||
-=head2 ($multiaddr, $source, $interface) = unpack_ip_mreq_source $ip_mreq
|
||||
-
|
||||
-Takes an C<ip_mreq_source> structure. Returns a list of three elements; the
|
||||
-IPv4 multicast address, source address and interface address.
|
||||
-
|
||||
=head2 $ipv6_mreq = pack_ipv6_mreq $multiaddr6, $ifindex
|
||||
|
||||
Takes an IPv6 multicast address and an interface number. Returns the
|
||||
@@ -748,26 +736,24 @@ our @EXPORT_OK = qw(
|
||||
|
||||
SOCK_NONBLOCK SOCK_CLOEXEC
|
||||
|
||||
- IP_ADD_MEMBERSHIP IP_ADD_SOURCE_MEMBERSHIP IP_DROP_MEMBERSHIP
|
||||
- IP_DROP_SOURCE_MEMBERSHIP IP_MULTICAST_IF IP_MULTICAST_LOOP
|
||||
- IP_MULTICAST_TTL
|
||||
+ IP_ADD_MEMBERSHIP IP_DROP_MEMBERSHIP IP_MULTICAST_IF
|
||||
+ IP_MULTICAST_LOOP IP_MULTICAST_TTL
|
||||
|
||||
IPPROTO_IP IPPROTO_IPV6 IPPROTO_RAW IPPROTO_ICMP IPPROTO_TCP
|
||||
IPPROTO_UDP
|
||||
|
||||
- TCP_CONGESTION TCP_CONNECTIONTIMEOUT TCP_CORK TCP_DEFER_ACCEPT TCP_INFO
|
||||
- TCP_INIT_CWND TCP_KEEPALIVE TCP_KEEPCNT TCP_KEEPIDLE TCP_KEEPINTVL
|
||||
- TCP_LINGER2 TCP_MAXRT TCP_MAXSEG TCP_MD5SIG TCP_NODELAY TCP_NOOPT
|
||||
- TCP_NOPUSH TCP_QUICKACK TCP_SACK_ENABLE TCP_STDURG TCP_SYNCNT
|
||||
- TCP_WINDOW_CLAMP
|
||||
+ TCP_CONGESTION TCP_CORK TCP_DEFER_ACCEPT TCP_INFO TCP_KEEPALIVE
|
||||
+ TCP_KEEPCNT TCP_KEEPIDLE TCP_KEEPINTVL TCP_LINGER2 TCP_MAXRT TCP_MAXSEG
|
||||
+ TCP_MD5SIG TCP_NODELAY TCP_QUICKACK TCP_STDURG TCP_SYNCNT
|
||||
+ TCP_WINDOW_CLAMP
|
||||
|
||||
IN6ADDR_ANY IN6ADDR_LOOPBACK
|
||||
|
||||
- IPV6_ADD_MEMBERSHIP IPV6_DROP_MEMBERSHIP IPV6_JOIN_GROUP
|
||||
- IPV6_LEAVE_GROUP IPV6_MTU IPV6_MTU_DISCOVER IPV6_MULTICAST_HOPS
|
||||
- IPV6_MULTICAST_IF IPV6_MULTICAST_LOOP IPV6_UNICAST_HOPS IPV6_V6ONLY
|
||||
+ IPV6_ADD_MEMBERSHIP IPV6_DROP_MEMBERSHIP IPV6_MTU IPV6_MTU_DISCOVER
|
||||
+ IPV6_MULTICAST_HOPS IPV6_MULTICAST_IF IPV6_MULTICAST_LOOP
|
||||
+ IPV6_UNICAST_HOPS IPV6_V6ONLY
|
||||
|
||||
- pack_ip_mreq unpack_ip_mreq pack_ip_mreq_source unpack_ip_mreq_source
|
||||
+ pack_ip_mreq unpack_ip_mreq
|
||||
|
||||
pack_ipv6_mreq unpack_ipv6_mreq
|
||||
|
||||
diff --git perl-5.17.4/cpan/Socket/Socket.xs perl-5.17.4/cpan/Socket/Socket.xs
|
||||
index 0bdebf5ca4..f22c1f3001 100644
|
||||
--- perl-5.17.4/cpan/Socket/Socket.xs
|
||||
+++ perl-5.17.4/cpan/Socket/Socket.xs
|
||||
@@ -1019,73 +1019,6 @@ unpack_ip_mreq(mreq_sv)
|
||||
#endif
|
||||
}
|
||||
|
||||
-void
|
||||
-pack_ip_mreq_source(multiaddr, source, interface=&PL_sv_undef)
|
||||
- SV * multiaddr
|
||||
- SV * source
|
||||
- SV * interface
|
||||
- CODE:
|
||||
- {
|
||||
-#if defined(HAS_IP_MREQ) && defined (IP_ADD_SOURCE_MEMBERSHIP)
|
||||
- struct ip_mreq_source mreq;
|
||||
- char * multiaddrbytes;
|
||||
- char * sourcebytes;
|
||||
- char * interfacebytes;
|
||||
- STRLEN len;
|
||||
- if (DO_UTF8(multiaddr) && !sv_utf8_downgrade(multiaddr, 1))
|
||||
- croak("Wide character in %s", "Socket::pack_ip_mreq_source");
|
||||
- multiaddrbytes = SvPVbyte(multiaddr, len);
|
||||
- if (len != sizeof(mreq.imr_multiaddr))
|
||||
- croak("Bad arg length %s, length is %"UVuf", should be %"UVuf,
|
||||
- "Socket::pack_ip_mreq", (UV)len, (UV)sizeof(mreq.imr_multiaddr));
|
||||
- if (DO_UTF8(source) && !sv_utf8_downgrade(source, 1))
|
||||
- croak("Wide character in %s", "Socket::pack_ip_mreq_source");
|
||||
- if (len != sizeof(mreq.imr_sourceaddr))
|
||||
- croak("Bad arg length %s, length is %"UVuf", should be %"UVuf,
|
||||
- "Socket::pack_ip_mreq", (UV)len, (UV)sizeof(mreq.imr_sourceaddr));
|
||||
- sourcebytes = SvPVbyte(source, len);
|
||||
- Zero(&mreq, sizeof(mreq), char);
|
||||
- Copy(multiaddrbytes, &mreq.imr_multiaddr, sizeof(mreq.imr_multiaddr), char);
|
||||
- Copy(sourcebytes, &mreq.imr_sourceaddr, sizeof(mreq.imr_sourceaddr), char);
|
||||
- if(SvOK(interface)) {
|
||||
- if (DO_UTF8(interface) && !sv_utf8_downgrade(interface, 1))
|
||||
- croak("Wide character in %s", "Socket::pack_ip_mreq");
|
||||
- interfacebytes = SvPVbyte(interface, len);
|
||||
- if (len != sizeof(mreq.imr_interface))
|
||||
- croak("Bad arg length %s, length is %"UVuf", should be %"UVuf,
|
||||
- "Socket::pack_ip_mreq", (UV)len, (UV)sizeof(mreq.imr_interface));
|
||||
- Copy(interfacebytes, &mreq.imr_interface, sizeof(mreq.imr_interface), char);
|
||||
- }
|
||||
- else
|
||||
- mreq.imr_interface.s_addr = INADDR_ANY;
|
||||
- ST(0) = sv_2mortal(newSVpvn((char *)&mreq, sizeof(mreq)));
|
||||
-#else
|
||||
- not_here("pack_ip_mreq_source");
|
||||
-#endif
|
||||
- }
|
||||
-
|
||||
-void
|
||||
-unpack_ip_mreq_source(mreq_sv)
|
||||
- SV * mreq_sv
|
||||
- PPCODE:
|
||||
- {
|
||||
-#if defined(HAS_IP_MREQ) && defined (IP_ADD_SOURCE_MEMBERSHIP)
|
||||
- struct ip_mreq_source mreq;
|
||||
- STRLEN mreqlen;
|
||||
- char * mreqbytes = SvPVbyte(mreq_sv, mreqlen);
|
||||
- if (mreqlen != sizeof(mreq))
|
||||
- croak("Bad arg length for %s, length is %"UVuf", should be %"UVuf,
|
||||
- "Socket::unpack_ip_mreq_source", (UV)mreqlen, (UV)sizeof(mreq));
|
||||
- Copy(mreqbytes, &mreq, sizeof(mreq), char);
|
||||
- EXTEND(SP, 3);
|
||||
- mPUSHp((char *)&mreq.imr_multiaddr, sizeof(mreq.imr_multiaddr));
|
||||
- mPUSHp((char *)&mreq.imr_sourceaddr, sizeof(mreq.imr_sourceaddr));
|
||||
- mPUSHp((char *)&mreq.imr_interface, sizeof(mreq.imr_interface));
|
||||
-#else
|
||||
- not_here("unpack_ip_mreq_source");
|
||||
-#endif
|
||||
- }
|
||||
-
|
||||
void
|
||||
pack_ipv6_mreq(multiaddr, interface)
|
||||
SV * multiaddr
|
||||
diff --git perl-5.17.4/cpan/Socket/t/ip_mreq.t perl-5.17.4/cpan/Socket/t/ip_mreq.t
|
||||
index 2a99509904..f08920c437 100644
|
||||
--- perl-5.17.4/cpan/Socket/t/ip_mreq.t
|
||||
+++ perl-5.17.4/cpan/Socket/t/ip_mreq.t
|
||||
@@ -5,7 +5,6 @@ use Test::More;
|
||||
use Socket qw(
|
||||
INADDR_ANY
|
||||
pack_ip_mreq unpack_ip_mreq
|
||||
- pack_ip_mreq_source unpack_ip_mreq_source
|
||||
);
|
||||
|
||||
# Check that pack/unpack_ip_mreq either croak with "Not implemented", or
|
||||
@@ -20,7 +19,7 @@ if( !defined $packed ) {
|
||||
die $@;
|
||||
}
|
||||
|
||||
-plan tests => 6;
|
||||
+plan tests => 3;
|
||||
|
||||
my @unpacked = unpack_ip_mreq $packed;
|
||||
|
||||
@@ -28,14 +27,3 @@ is( $unpacked[0], "\xe0\0\0\1", 'unpack_ip_mreq multiaddr' );
|
||||
is( $unpacked[1], INADDR_ANY, 'unpack_ip_mreq interface' );
|
||||
|
||||
is( (unpack_ip_mreq pack_ip_mreq "\xe0\0\0\1")[1], INADDR_ANY, 'pack_ip_mreq interface defaults to INADDR_ANY' );
|
||||
-
|
||||
-SKIP: {
|
||||
- my $mreq;
|
||||
- skip 3, "No pack_ip_mreq_source" unless defined eval { $mreq = pack_ip_mreq_source "\xe0\0\0\2", "\x0a\0\0\1", INADDR_ANY };
|
||||
-
|
||||
- @unpacked = unpack_ip_mreq_source $mreq;
|
||||
-
|
||||
- is( $unpacked[0], "\xe0\0\0\2", 'unpack_ip_mreq_source multiaddr' );
|
||||
- is( $unpacked[1], "\x0a\0\0\1", 'unpack_ip_mreq_source source' );
|
||||
- is( $unpacked[2], INADDR_ANY, 'unpack_ip_mreq_source interface' );
|
||||
-}
|
||||
diff --git perl-5.17.4/pod/perldelta.pod perl-5.17.4/pod/perldelta.pod
|
||||
index a64c1a9143..65a9378242 100644
|
||||
--- perl-5.17.4/pod/perldelta.pod
|
||||
+++ perl-5.17.4/pod/perldelta.pod
|
||||
@@ -324,6 +324,10 @@ functions required for IP multicast source group membership have been added.
|
||||
L<Sys::Syslog> has been upgraded from version 0.31 to 0.32. This includes
|
||||
several documentation and bug fixes.
|
||||
|
||||
+L<Storable> has been upgraded from version 2.37 to 2.38. It can now freeze
|
||||
+and thaw vstrings correctly. This causes a slight incompatible change in
|
||||
+the storage format, so the format version has increased to 2.9.
|
||||
+
|
||||
=item *
|
||||
|
||||
L<threads::shared> has been upgraded from version 1.40 to 1.41. This adds the
|
||||
--
|
||||
2.49.1
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue