diff options
author | Steve Hay <steve.m.hay@googlemail.com> | 2016-02-16 13:40:08 +0000 |
---|---|---|
committer | Steve Hay <steve.m.hay@googlemail.com> | 2016-03-11 17:17:55 +0000 |
commit | a28fff51204184c3aae3c8cb9e3a8009eae936d2 (patch) | |
tree | 74220e6b931a58028f51c52cd5b23dd1de6f48d2 /ext/POSIX | |
parent | 6156385671b2ccb3a54994d6c185a0b0b6b55bc2 (diff) | |
download | perl-a28fff51204184c3aae3c8cb9e3a8009eae936d2.tar.gz |
Export Winsock error constants from POSIX.pm
Diffstat (limited to 'ext/POSIX')
-rw-r--r-- | ext/POSIX/Makefile.PL | 16 | ||||
-rw-r--r-- | ext/POSIX/lib/POSIX.pm | 15 | ||||
-rw-r--r-- | ext/POSIX/lib/POSIX.pod | 22 | ||||
-rw-r--r-- | ext/POSIX/t/export.t | 14 |
4 files changed, 67 insertions, 0 deletions
diff --git a/ext/POSIX/Makefile.PL b/ext/POSIX/Makefile.PL index fabbe8a844..5a65173958 100644 --- a/ext/POSIX/Makefile.PL +++ b/ext/POSIX/Makefile.PL @@ -151,6 +151,22 @@ if ($rt_signals) { {name=>"SIGRTMIN", macro=>0}, } +if ($^O eq 'MSWin32') { + push @names, qw( + WSAEINTR WSAEBADF WSAEACCES WSAEFAULT WSAEINVAL WSAEMFILE WSAEWOULDBLOCK + WSAEINPROGRESS WSAEALREADY WSAENOTSOCK WSAEDESTADDRREQ WSAEMSGSIZE + WSAEPROTOTYPE WSAENOPROTOOPT WSAEPROTONOSUPPORT WSAESOCKTNOSUPPORT + WSAEOPNOTSUPP WSAEPFNOSUPPORT WSAEAFNOSUPPORT WSAEADDRINUSE + WSAEADDRNOTAVAIL WSAENETDOWN WSAENETUNREACH WSAENETRESET WSAECONNABORTED + WSAECONNRESET WSAENOBUFS WSAEISCONN WSAENOTCONN WSAESHUTDOWN + WSAETOOMANYREFS WSAETIMEDOUT WSAECONNREFUSED WSAELOOP WSAENAMETOOLONG + WSAEHOSTDOWN WSAEHOSTUNREACH WSAENOTEMPTY WSAEPROCLIM WSAEUSERS + WSAEDQUOT WSAESTALE WSAEREMOTE WSAEDISCON WSAENOMORE WSAECANCELLED + WSAEINVALIDPROCTABLE WSAEINVALIDPROVIDER WSAEPROVIDERFAILEDINIT + WSAEREFUSED + ); +} + WriteConstants( PROXYSUBS => {croak_on_error => 1}, NAME => 'POSIX', diff --git a/ext/POSIX/lib/POSIX.pm b/ext/POSIX/lib/POSIX.pm index e9c137559b..2b339b7c8a 100644 --- a/ext/POSIX/lib/POSIX.pm +++ b/ext/POSIX/lib/POSIX.pm @@ -389,6 +389,21 @@ my %default_export_tags = ( utime_h => [], ); +if ($^O eq 'MSWin32') { + $default_export_tags{winsock_h} = [qw( + WSAEINTR WSAEBADF WSAEACCES WSAEFAULT WSAEINVAL WSAEMFILE WSAEWOULDBLOCK + WSAEINPROGRESS WSAEALREADY WSAENOTSOCK WSAEDESTADDRREQ WSAEMSGSIZE + WSAEPROTOTYPE WSAENOPROTOOPT WSAEPROTONOSUPPORT WSAESOCKTNOSUPPORT + WSAEOPNOTSUPP WSAEPFNOSUPPORT WSAEAFNOSUPPORT WSAEADDRINUSE + WSAEADDRNOTAVAIL WSAENETDOWN WSAENETUNREACH WSAENETRESET WSAECONNABORTED + WSAECONNRESET WSAENOBUFS WSAEISCONN WSAENOTCONN WSAESHUTDOWN + WSAETOOMANYREFS WSAETIMEDOUT WSAECONNREFUSED WSAELOOP WSAENAMETOOLONG + WSAEHOSTDOWN WSAEHOSTUNREACH WSAENOTEMPTY WSAEPROCLIM WSAEUSERS + WSAEDQUOT WSAESTALE WSAEREMOTE WSAEDISCON WSAENOMORE WSAECANCELLED + WSAEINVALIDPROCTABLE WSAEINVALIDPROVIDER WSAEPROVIDERFAILEDINIT + WSAEREFUSED)]; +} + my %other_export_tags = ( fenv_h => [qw( FE_DOWNWARD FE_TONEAREST FE_TOWARDZERO FE_UPWARD fegetround fesetround diff --git a/ext/POSIX/lib/POSIX.pod b/ext/POSIX/lib/POSIX.pod index b888561ad4..904f3e9717 100644 --- a/ext/POSIX/lib/POSIX.pod +++ b/ext/POSIX/lib/POSIX.pod @@ -2669,3 +2669,25 @@ is true) =back +=head1 WINSOCK + +(Windows only.) + +=over 8 + +=item Constants + +C<WSAEINTR> C<WSAEBADF> C<WSAEACCES> C<WSAEFAULT> C<WSAEINVAL> C<WSAEMFILE> C<WSAEWOULDBLOCK> +C<WSAEINPROGRESS> C<WSAEALREADY> C<WSAENOTSOCK> C<WSAEDESTADDRREQ> C<WSAEMSGSIZE> +C<WSAEPROTOTYPE> C<WSAENOPROTOOPT> C<WSAEPROTONOSUPPORT> C<WSAESOCKTNOSUPPORT> +C<WSAEOPNOTSUPP> C<WSAEPFNOSUPPORT> C<WSAEAFNOSUPPORT> C<WSAEADDRINUSE> +C<WSAEADDRNOTAVAIL> C<WSAENETDOWN> C<WSAENETUNREACH> C<WSAENETRESET> C<WSAECONNABORTED> +C<WSAECONNRESET> C<WSAENOBUFS> C<WSAEISCONN> C<WSAENOTCONN> C<WSAESHUTDOWN> +C<WSAETOOMANYREFS> C<WSAETIMEDOUT> C<WSAECONNREFUSED> C<WSAELOOP> C<WSAENAMETOOLONG> +C<WSAEHOSTDOWN> C<WSAEHOSTUNREACH> C<WSAENOTEMPTY> C<WSAEPROCLIM> C<WSAEUSERS> +C<WSAEDQUOT> C<WSAESTALE> C<WSAEREMOTE> C<WSAEDISCON> C<WSAENOMORE> C<WSAECANCELLED> +C<WSAEINVALIDPROCTABLE> C<WSAEINVALIDPROVIDER> C<WSAEPROVIDERFAILEDINIT> +C<WSAEREFUSED> + +=back + diff --git a/ext/POSIX/t/export.t b/ext/POSIX/t/export.t index 4ef920e12f..aa7d78ccf7 100644 --- a/ext/POSIX/t/export.t +++ b/ext/POSIX/t/export.t @@ -112,6 +112,20 @@ my %expect = ( M_1_PI M_2_PI M_2_SQRTPI M_E M_LN10 M_LN2 M_LOG10E M_LOG2E M_PI M_PI_2 M_PI_4 M_SQRT1_2 M_SQRT2 INFINITY NAN ), + # this stuff was added for Windows in 5.23 + ($^O eq 'MSWin32' ? qw( + WSAEINTR WSAEBADF WSAEACCES WSAEFAULT WSAEINVAL WSAEMFILE WSAEWOULDBLOCK + WSAEINPROGRESS WSAEALREADY WSAENOTSOCK WSAEDESTADDRREQ WSAEMSGSIZE + WSAEPROTOTYPE WSAENOPROTOOPT WSAEPROTONOSUPPORT WSAESOCKTNOSUPPORT + WSAEOPNOTSUPP WSAEPFNOSUPPORT WSAEAFNOSUPPORT WSAEADDRINUSE + WSAEADDRNOTAVAIL WSAENETDOWN WSAENETUNREACH WSAENETRESET WSAECONNABORTED + WSAECONNRESET WSAENOBUFS WSAEISCONN WSAENOTCONN WSAESHUTDOWN + WSAETOOMANYREFS WSAETIMEDOUT WSAECONNREFUSED WSAELOOP WSAENAMETOOLONG + WSAEHOSTDOWN WSAEHOSTUNREACH WSAENOTEMPTY WSAEPROCLIM WSAEUSERS + WSAEDQUOT WSAESTALE WSAEREMOTE WSAEDISCON WSAENOMORE WSAECANCELLED + WSAEINVALIDPROCTABLE WSAEINVALIDPROVIDER WSAEPROVIDERFAILEDINIT + WSAEREFUSED + ) : ()), # adding new functions to EXPORT is a BACKWARD COMPATIBILITY BREAKING CHANGE # it is OK to add new constants, but new functions may only go in EXPORT_OK ], |