summaryrefslogtreecommitdiff
path: root/Porting
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2002-03-12 23:24:59 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2002-03-12 23:24:59 +0000
commit205a1031dab8ab505a4d747e26b52b5dea3722f0 (patch)
tree14ec1bb89d6519ef33613cc7802ab47c74569654 /Porting
parent14a976d69a5d1d716c7c894452d30ab0c3386193 (diff)
downloadperl-205a1031dab8ab505a4d747e26b52b5dea3722f0.tar.gz
More known threadsafings.
p4raw-id: //depot/perl@15209
Diffstat (limited to 'Porting')
-rw-r--r--Porting/findrfuncs27
1 files changed, 25 insertions, 2 deletions
diff --git a/Porting/findrfuncs b/Porting/findrfuncs
index ea019c982a..bef27594a4 100644
--- a/Porting/findrfuncs
+++ b/Porting/findrfuncs
@@ -49,8 +49,6 @@ find(sub {
open F, "<$File::Find::name"
or die "Can't open $File::Find::name: $!";
my $line;
- # None of the <netdb.h> _r prototypes are to be used in Tru64.
- return if $^O eq 'dec_osf' && $_ eq 'netdb.h';
while (defined ($line = <F>)) {
if ($line =~ /\b(\w+_r)\b/) {
#warn "$1 => $File::Find::name\n";
@@ -64,13 +62,38 @@ find(sub {
delete $rfuncs{setlocale_r} if $^O eq 'linux';
# delete obsolete (as promised by man pages) symbols
+my $netdb_r_obsolete;
if ($^O eq 'hpux') {
delete $rfuncs{crypt_r};
delete $rfuncs{setlocale_r};
delete $rfuncs{strerror_r};
+ $netdb_r_obsolete = 1;
} elsif ($^O eq 'dec_osf') {
delete $rfuncs{crypt_r};
delete $rfuncs{strerror_r};
+ $netdb_r_obsolete = 1;
+}
+if ($netdb_r_obsolete) {
+ delete @rfuncs{qw(endhostent_r
+ endnetent_r
+ endprotoent_r
+ endservent_r
+ gethostbyaddr_r
+ gethostbyname_r
+ gethostent_r
+ getnetbyaddr_r
+ getnetbyname_r
+ getnetent_r
+ getprotobynumber_r
+ getprotobyname_r
+ getprotoent_r
+ getservbyname_r
+ getservbyport_r
+ getservent_r
+ sethostent_r
+ setnetent_r
+ setprotoent_r
+ setservent_r)};
}
my %syms;