| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
This allows them to get the reentrant versions of libc functions
automatically. Previously if they wanted to do this, they had to
declare themselves (shudder) as PERL_CORE or PERL_EXT.
|
|
|
|
|
|
|
|
|
|
| |
We changed to use symbols not likely to be used by non-Perl code that
could conflict, and which have trailing underbars, so they don't look
like a regular Perl #define.
See https://rt.perl.org/Ticket/Display.html?id=131110
There are many more header files which are not guarded.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
DESCRIPTION
This function is deprecated; use readdir(3) instead.
The readdir_r() function was invented as a reentrant version of read-
dir(3). It reads the next directory entry from the directory stream
dirp, and returns it in the caller-allocated buffer pointed to by
entry. For details of the dirent structure, see readdir(3).
A pointer to the returned buffer is placed in *result; if the end of
the directory stream was encountered, then NULL is instead returned in
*result.
It is recommended that applications use readdir(3) instead of read-
dir_r(). Furthermore, since version 2.24, glibc deprecates read-
dir_r(). The reasons are as follows:
* On systems where NAME_MAX is undefined, calling readdir_r() may be
unsafe because the interface does not allow the caller to specify
the length of the buffer used for the returned directory entry.
* On some systems, readdir_r() can't read directory entries with very
long names. When the glibc implementation encounters such a name,
readdir_r() fails with the error ENAMETOOLONG after the final direc-
tory entry has been read. On some other systems, readdir_r() may
return a success status, but the returned d_name field may not be
null terminated or may be truncated.
* In the current POSIX.1 specification (POSIX.1-2008), readdir(3) is
not required to be thread-safe. However, in modern implementations
(including the glibc implementation), concurrent calls to readdir(3)
that specify different directory streams are thread-safe. There-
fore, the use of readdir_r() is generally unnecessary in multi-
threaded programs. In cases where multiple threads must read from
the same directory stream, using readdir(3) with external synchro-
nization is still preferable to the use of readdir_r(), for the rea-
sons given in the points above.
* It is expected that a future version of POSIX.1 will make read-
dir_r() obsolete, and require that readdir(3) be thread-safe when
concurrently employed on different directory streams.
|
|
|
|
|
| |
Removing this should mean that metaconfig will remove the units from
the built Configure
|
|
|
|
|
|
|
|
|
| |
Previously all the scripts in regen/ had code to generate header comments
(buffer-read-only, "do not edit this file", and optionally regeneration
script, regeneration data, copyright years and filename).
This change results in some minor reformatting of header blocks, and
standardises the copyright line as "Larry Wall and others".
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
lib/Time/Local.pm
lib/Time/Local.t
reentr.h
|
| |
| |
| |
| |
| |
| | |
Work around a system that doesn't have gm/localtime_r(). This replaces Perl's
own gm/localtime() wrapper which couldn't be called outside a PP anyway
because it needs my_perl.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
From: Michael G Schwern <schwern@pobox.com>
Date: Fri, 26 Sep 2008 00:06:31 -0400
Message-ID: <48DC5FC7.3000807@pobox.com>
I was reading reentr.h and noticed a lot of the endif's for the
HAS_XXX_R macros were wrongly indented and their comments had the
wrong condition.
The attached patch fixes the indentation and removes all but the last
comment which is shortest and furthest from its start. No point in an
end-of-block comment on a one statement block, just falls out of date
and obscures the structure.
(plus "make regen")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[ 24458]
Fix from Steve Peters
[ 24464]
Subject: RE: 5.8.7-tobe fails to compile on AIX 4.3.3
From: "Jan Dubois" <jand@ActiveState.com>
Message-Id: <200505131921.j4DJLgG5007986@smtp3.ActiveState.com>
and then regenerate reentr.h, with the , no longer inside
REENTR_MEMZERO(). This keeps macros looking like functions.
p4raw-link: @24464 on //depot/maint-5.8/perl: 65af2a75d112159ec53912329b2e01abfb9a3fb4
p4raw-link: @24458 on //depot/maint-5.8/perl: ef0ef25c116d419e8978d636281fda0a90743c2a
p4raw-id: //depot/perl@30235
p4raw-integrated: from //depot/maint-5.8/perl@24464 'edit in' reentr.pl
(@24458..)
|
|
|
| |
p4raw-id: //depot/perl@29747
|
|
|
|
|
|
| |
From: "Benjamin Holzman" <bholzman@longitude.com>
Message-ID: <010801c6ab24$09b9ed30$ce0515ac@office.iseoptions.com>
p4raw-id: //depot/perl@29209
|
|
|
|
|
| |
Message-ID: <451BAEE1.1070509@iki.fi>
p4raw-id: //depot/perl@28898
|
|
|
| |
p4raw-id: //depot/perl@28897
|
|
|
| |
p4raw-id: //depot/perl@28750
|
|
|
| |
p4raw-id: //depot/perl@28749
|
|
|
|
|
| |
Message-ID: <20060110054243.GA26165@petdance.com>
p4raw-id: //depot/perl@26764
|
|
|
|
|
|
|
| |
Too small a buffer would cause ERANGE and a retry with double the
buffer size. later at EOF, the apparent error got 'stuck' as
ERANGE rather than ENOENT, so the buffer size doubled recursively
p4raw-id: //depot/perl@25084
|
|
|
|
|
|
| |
in read-only mode. Make vi modelines compatible with non-vim
vi versions.
p4raw-id: //depot/perl@24445
|
|
|
| |
p4raw-id: //depot/perl@24442
|
|
|
|
|
| |
Message-Id: <20050510021049.GA20147@mccoy.peters.homeunix.org>
p4raw-id: //depot/perl@24433
|
|
|
| |
p4raw-id: //depot/perl@24176
|
|
|
| |
p4raw-id: //depot/perl@23180
|
|
|
|
|
| |
Message-Id: <45igqvsus3hr8bno3si087j5qnrqvn79bf@4ax.com>
p4raw-id: //depot/perl@21660
|
|
|
|
|
| |
Message-ID: <8dqbqvg16ln2r807l1l2c905lh7hte303v@4ax.com>
p4raw-id: //depot/perl@21645
|
|
|
|
|
|
|
|
|
|
| |
when returning an int can either return the error in the return
value or in the errno. We need a new per-interp variable to store
the return value instead of clobbering the errno with it. The new
variable, PL_reentrant_retint, is only used within the reentrancy
framework, and immediately after it's set, so there should not be
similar visibility issues as for the errno. Spotted by Edward Moy.
p4raw-id: //depot/perl@19357
|
|
|
|
|
|
|
| |
(Lots of Perl 5 source code archaeology was involved.)
Larry didn't make strangled noises when I showed him
the patch, either :-)
p4raw-id: //depot/perl@19242
|
|
|
|
|
|
|
|
|
|
| |
[ 19119]
Address "5.8.1@19053: crypt_r() takes 128K per thread".
p4raw-link: @19119 on //depot/maint-5.8/perl: 5338c2bbd71426ba96ace22615fafeda3d05e36d
p4raw-link: @19053 on //depot/maint-5.8/perl: dab75801826d3b09804fff099d3631e91578dcd1
p4raw-id: //depot/perl@19122
p4raw-integrated: from //depot/maint-5.8/perl@19121 'copy in' reentr.c
reentr.h reentr.pl (@19106..) 'merge in' pp.c (@19045..)
|
|
|
|
|
|
| |
the random() macros were all wrong. (I don't know why
metaconfig did so much reordering of config_h.SH.)
p4raw-id: //depot/perl@18831
|
|
|
| |
p4raw-id: //depot/perl@18801
|
|
|
|
|
| |
convoluted code, but it ain't broken, so...
p4raw-id: //depot/perl@16590
|
|
|
| |
p4raw-id: //depot/perl@16588
|
|
|
|
|
|
| |
having/not having FILE**. Also make the names of the
{set,get,end}* interface struct members a bit shorter.
p4raw-id: //depot/perl@15831
|
|
|
|
|
| |
Also, there's no i_stdio.
p4raw-id: //depot/perl@15418
|
|
|
| |
p4raw-id: //depot/perl@15326
|
|
|
|
|
| |
The buffer will keep doubling until 64k.
p4raw-id: //depot/perl@15272
|
|
|
| |
p4raw-id: //depot/perl@15253
|
|
|
|
|
|
|
| |
functions are not to be used (!= functions exist!)
This might be the key (well, a key) to the HP-UX
problems.
p4raw-id: //depot/perl@15249
|
|
and then use them (under ithreads). May fail in HP-UX,
and the op/groups is known to be fickle everywhere. Known
to work in Solaris, Linux, Tru64, IRIX, AIX. (Some compiler
warnings in AIX since the first arguments of getnetbyaddr
and getnetbyadd_r are of different types. Thanks, IBM.)
In non-Configure platforms deny the existence of any
of the _r thingies. (Also add the recently introduced
d_tm_* to places it wasn't already in.)
TODO: the suggested glibc buffer growth retry loop in case
some entries (at least for: gr*, host*) are big.
Forgot win32/config.win64.
p4raw-id: //depot/perl@15238
|