source: trunk/third/perl/reentr.inc @ 20075

Revision 20075, 120.5 KB checked in by zacheiss, 21 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r20074, which included commits to RCS files with non-trunk default branches.
Line 
1/*
2 *    reentr.inc
3 *
4 *    You may distribute under the terms of either the GNU General Public
5 *    License or the Artistic License, as specified in the README file.
6 *
7 *  !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
8 *  This file is built by reentrl.pl from data in reentr.pl.
9 */
10
11#ifndef REENTRINC
12#define REENTRINC
13
14#ifdef USE_REENTRANT_API
15
16/* The reentrant wrappers. */
17
18#ifdef HAS_ASCTIME_R
19#   undef asctime
20#   if !defined(asctime) && ASCTIME_R_PROTO == REENTRANT_PROTO_B_SB
21#       define asctime(a) asctime_r(a, PL_reentrant_buffer->_asctime_buffer)
22#   endif
23#   if !defined(asctime) && ASCTIME_R_PROTO == REENTRANT_PROTO_B_SBI
24#       define asctime(a) asctime_r(a, PL_reentrant_buffer->_asctime_buffer, PL_reentrant_buffer->_asctime_size)
25#   endif
26#   if !defined(asctime) && ASCTIME_R_PROTO == REENTRANT_PROTO_I_SB
27#       define asctime(a) (asctime_r(a, PL_reentrant_buffer->_asctime_buffer) == 0 ? PL_reentrant_buffer->_asctime_buffer : 0)
28#   endif
29#   if !defined(asctime) && ASCTIME_R_PROTO == REENTRANT_PROTO_I_SBI
30#       define asctime(a) (asctime_r(a, PL_reentrant_buffer->_asctime_buffer, PL_reentrant_buffer->_asctime_size) == 0 ? PL_reentrant_buffer->_asctime_buffer : 0)
31#   endif
32#endif /* HAS_ASCTIME_R */
33
34#ifdef HAS_CRYPT_R
35#   undef crypt
36#   if !defined(crypt) && CRYPT_R_PROTO == REENTRANT_PROTO_B_CCS
37#       define crypt(a, b) crypt_r(a, b, PL_reentrant_buffer->_crypt_struct_buffer)
38#   endif
39#   if !defined(crypt) && CRYPT_R_PROTO == REENTRANT_PROTO_B_CCD
40#       define crypt(a, b) crypt_r(a, b, &PL_reentrant_buffer->_crypt_data)
41#   endif
42#endif /* HAS_CRYPT_R */
43
44#ifdef HAS_CTERMID_R
45#   undef ctermid
46#   if !defined(ctermid) && CTERMID_R_PROTO == REENTRANT_PROTO_B_B
47#       define ctermid(a) ctermid_r(a)
48#   endif
49#endif /* HAS_CTERMID_R */
50
51#ifdef HAS_CTIME_R
52#   undef ctime
53#   if !defined(ctime) && CTIME_R_PROTO == REENTRANT_PROTO_B_SB
54#       define ctime(a) ctime_r(a, PL_reentrant_buffer->_ctime_buffer)
55#   endif
56#   if !defined(ctime) && CTIME_R_PROTO == REENTRANT_PROTO_B_SBI
57#       define ctime(a) ctime_r(a, PL_reentrant_buffer->_ctime_buffer, PL_reentrant_buffer->_ctime_size)
58#   endif
59#   if !defined(ctime) && CTIME_R_PROTO == REENTRANT_PROTO_I_SB
60#       define ctime(a) (ctime_r(a, PL_reentrant_buffer->_ctime_buffer) == 0 ? PL_reentrant_buffer->_ctime_buffer : 0)
61#   endif
62#   if !defined(ctime) && CTIME_R_PROTO == REENTRANT_PROTO_I_SBI
63#       define ctime(a) (ctime_r(a, PL_reentrant_buffer->_ctime_buffer, PL_reentrant_buffer->_ctime_size) == 0 ? PL_reentrant_buffer->_ctime_buffer : 0)
64#   endif
65#endif /* HAS_CTIME_R */
66
67#ifdef HAS_DRAND48_R
68#   undef drand48
69#   if !defined(drand48) && DRAND48_R_PROTO == REENTRANT_PROTO_I_ST
70#       define drand48() (drand48_r(&PL_reentrant_buffer->_drand48_struct, &PL_reentrant_buffer->_drand48_double) == 0 ? PL_reentrant_buffer->_drand48_double : 0)
71#   endif
72#endif /* HAS_DRAND48_R */
73
74#ifdef HAS_ENDGRENT_R
75#   undef endgrent
76#   if !defined(endgrent) && ENDGRENT_R_PROTO == REENTRANT_PROTO_I_H
77#       define endgrent() (endgrent_r(&PL_reentrant_buffer->_grent_fptr) == 0 ? 1 : 0)
78#   endif
79#   if !defined(endgrent) && ENDGRENT_R_PROTO == REENTRANT_PROTO_V_H
80#       define endgrent() endgrent_r(&PL_reentrant_buffer->_grent_fptr)
81#   endif
82#endif /* HAS_ENDGRENT_R */
83
84#ifdef HAS_ENDHOSTENT_R
85#   undef endhostent
86#   if !defined(endhostent) && ENDHOSTENT_R_PROTO == REENTRANT_PROTO_I_D
87#       define endhostent() (endhostent_r(&PL_reentrant_buffer->_hostent_data) == 0 ? 1 : 0)
88#   endif
89#   if !defined(endhostent) && ENDHOSTENT_R_PROTO == REENTRANT_PROTO_V_D
90#       define endhostent() endhostent_r(&PL_reentrant_buffer->_hostent_data)
91#   endif
92#endif /* HAS_ENDHOSTENT_R */
93
94#ifdef HAS_ENDNETENT_R
95#   undef endnetent
96#   if !defined(endnetent) && ENDNETENT_R_PROTO == REENTRANT_PROTO_I_D
97#       define endnetent() (endnetent_r(&PL_reentrant_buffer->_netent_data) == 0 ? 1 : 0)
98#   endif
99#   if !defined(endnetent) && ENDNETENT_R_PROTO == REENTRANT_PROTO_V_D
100#       define endnetent() endnetent_r(&PL_reentrant_buffer->_netent_data)
101#   endif
102#endif /* HAS_ENDNETENT_R */
103
104#ifdef HAS_ENDPROTOENT_R
105#   undef endprotoent
106#   if !defined(endprotoent) && ENDPROTOENT_R_PROTO == REENTRANT_PROTO_I_D
107#       define endprotoent() (endprotoent_r(&PL_reentrant_buffer->_protoent_data) == 0 ? 1 : 0)
108#   endif
109#   if !defined(endprotoent) && ENDPROTOENT_R_PROTO == REENTRANT_PROTO_V_D
110#       define endprotoent() endprotoent_r(&PL_reentrant_buffer->_protoent_data)
111#   endif
112#endif /* HAS_ENDPROTOENT_R */
113
114#ifdef HAS_ENDPWENT_R
115#   undef endpwent
116#   if !defined(endpwent) && ENDPWENT_R_PROTO == REENTRANT_PROTO_I_H
117#       define endpwent() (endpwent_r(&PL_reentrant_buffer->_pwent_fptr) == 0 ? 1 : 0)
118#   endif
119#   if !defined(endpwent) && ENDPWENT_R_PROTO == REENTRANT_PROTO_V_H
120#       define endpwent() endpwent_r(&PL_reentrant_buffer->_pwent_fptr)
121#   endif
122#endif /* HAS_ENDPWENT_R */
123
124#ifdef HAS_ENDSERVENT_R
125#   undef endservent
126#   if !defined(endservent) && ENDSERVENT_R_PROTO == REENTRANT_PROTO_I_D
127#       define endservent() (endservent_r(&PL_reentrant_buffer->_servent_data) == 0 ? 1 : 0)
128#   endif
129#   if !defined(endservent) && ENDSERVENT_R_PROTO == REENTRANT_PROTO_V_D
130#       define endservent() endservent_r(&PL_reentrant_buffer->_servent_data)
131#   endif
132#endif /* HAS_ENDSERVENT_R */
133
134#ifdef HAS_GETGRENT_R
135#   undef getgrent
136#   if !defined(getgrent) && GETGRENT_R_PROTO == REENTRANT_PROTO_I_SBWR
137#       ifdef PERL_CORE
138#           define getgrent() ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0))
139#       else
140#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
141#               define getgrent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));})
142#           else
143#               define getgrent() Perl_reentr_getgrent()
144                static struct group* Perl_reentr_getgrent() {
145                    dTHX;
146                    int PL_REENTRANT_RETINT;
147                    return ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));
148                }
149#           endif
150#       endif
151#   endif
152#   if !defined(getgrent) && GETGRENT_R_PROTO == REENTRANT_PROTO_I_SBIR
153#       ifdef PERL_CORE
154#           define getgrent() ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0))
155#       else
156#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
157#               define getgrent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));})
158#           else
159#               define getgrent() Perl_reentr_getgrent()
160                static struct group* Perl_reentr_getgrent() {
161                    dTHX;
162                    int PL_REENTRANT_RETINT;
163                    return ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));
164                }
165#           endif
166#       endif
167#   endif
168#   if !defined(getgrent) && GETGRENT_R_PROTO == REENTRANT_PROTO_S_SBW
169#       define getgrent() (getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size) ? &PL_reentrant_buffer->_grent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getgrent") : 0))
170#   endif
171#   if !defined(getgrent) && GETGRENT_R_PROTO == REENTRANT_PROTO_S_SBI
172#       define getgrent() (getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size) ? &PL_reentrant_buffer->_grent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getgrent") : 0))
173#   endif
174#   if !defined(getgrent) && GETGRENT_R_PROTO == REENTRANT_PROTO_I_SBI
175#       ifdef PERL_CORE
176#           define getgrent() ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0))
177#       else
178#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
179#               define getgrent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));})
180#           else
181#               define getgrent() Perl_reentr_getgrent()
182                static struct group* Perl_reentr_getgrent() {
183                    dTHX;
184                    int PL_REENTRANT_RETINT;
185                    return ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));
186                }
187#           endif
188#       endif
189#   endif
190#   if !defined(getgrent) && GETGRENT_R_PROTO == REENTRANT_PROTO_I_SBIH
191#       ifdef PERL_CORE
192#           define getgrent() ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_fptr)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0))
193#       else
194#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
195#               define getgrent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_fptr)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));})
196#           else
197#               define getgrent() Perl_reentr_getgrent()
198                static struct group* Perl_reentr_getgrent() {
199                    dTHX;
200                    int PL_REENTRANT_RETINT;
201                    return ((PL_REENTRANT_RETINT = getgrent_r(&PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_fptr)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrent") : 0));
202                }
203#           endif
204#       endif
205#   endif
206#endif /* HAS_GETGRENT_R */
207
208#ifdef HAS_GETGRGID_R
209#   undef getgrgid
210#   if !defined(getgrgid) && GETGRGID_R_PROTO == REENTRANT_PROTO_I_TSBWR
211#       ifdef PERL_CORE
212#           define getgrgid(a) ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0))
213#       else
214#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
215#               define getgrgid(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0));})
216#           else
217#               define getgrgid(a) Perl_reentr_getgrgid(a)
218                static struct group* Perl_reentr_getgrgid(gid_t a) {
219                    dTHX;
220                    int PL_REENTRANT_RETINT;
221                    return ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0));
222                }
223#           endif
224#       endif
225#   endif
226#   if !defined(getgrgid) && GETGRGID_R_PROTO == REENTRANT_PROTO_I_TSBIR
227#       ifdef PERL_CORE
228#           define getgrgid(a) ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0))
229#       else
230#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
231#               define getgrgid(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0));})
232#           else
233#               define getgrgid(a) Perl_reentr_getgrgid(a)
234                static struct group* Perl_reentr_getgrgid(gid_t a) {
235                    dTHX;
236                    int PL_REENTRANT_RETINT;
237                    return ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0));
238                }
239#           endif
240#       endif
241#   endif
242#   if !defined(getgrgid) && GETGRGID_R_PROTO == REENTRANT_PROTO_I_TSBI
243#       ifdef PERL_CORE
244#           define getgrgid(a) ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0))
245#       else
246#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
247#               define getgrgid(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0));})
248#           else
249#               define getgrgid(a) Perl_reentr_getgrgid(a)
250                static struct group* Perl_reentr_getgrgid(gid_t a) {
251                    dTHX;
252                    int PL_REENTRANT_RETINT;
253                    return ((PL_REENTRANT_RETINT = getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrgid", a) : 0));
254                }
255#           endif
256#       endif
257#   endif
258#   if !defined(getgrgid) && GETGRGID_R_PROTO == REENTRANT_PROTO_S_TSBI
259#       define getgrgid(a) (getgrgid_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size) ? &PL_reentrant_buffer->_grent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getgrgid", a) : 0))
260#   endif
261#endif /* HAS_GETGRGID_R */
262
263#ifdef HAS_GETGRNAM_R
264#   undef getgrnam
265#   if !defined(getgrnam) && GETGRNAM_R_PROTO == REENTRANT_PROTO_I_CSBWR
266#       ifdef PERL_CORE
267#           define getgrnam(a) ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0))
268#       else
269#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
270#               define getgrnam(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0));})
271#           else
272#               define getgrnam(a) Perl_reentr_getgrnam(a)
273                static struct group* Perl_reentr_getgrnam(const char* a) {
274                    dTHX;
275                    int PL_REENTRANT_RETINT;
276                    return ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0));
277                }
278#           endif
279#       endif
280#   endif
281#   if !defined(getgrnam) && GETGRNAM_R_PROTO == REENTRANT_PROTO_I_CSBIR
282#       ifdef PERL_CORE
283#           define getgrnam(a) ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0))
284#       else
285#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
286#               define getgrnam(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0));})
287#           else
288#               define getgrnam(a) Perl_reentr_getgrnam(a)
289                static struct group* Perl_reentr_getgrnam(const char* a) {
290                    dTHX;
291                    int PL_REENTRANT_RETINT;
292                    return ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size, &PL_reentrant_buffer->_grent_ptr)) == 0 ? PL_reentrant_buffer->_grent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0));
293                }
294#           endif
295#       endif
296#   endif
297#   if !defined(getgrnam) && GETGRNAM_R_PROTO == REENTRANT_PROTO_S_CBI
298#       define getgrnam(a) (getgrnam_r(a, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size) ? PL_reentrant_buffer->_grent_buffer : ((errno == ERANGE) ? Perl_reentrant_retry("getgrnam", a) : 0))
299#   endif
300#   if !defined(getgrnam) && GETGRNAM_R_PROTO == REENTRANT_PROTO_I_CSBI
301#       ifdef PERL_CORE
302#           define getgrnam(a) ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0))
303#       else
304#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
305#               define getgrnam(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0));})
306#           else
307#               define getgrnam(a) Perl_reentr_getgrnam(a)
308                static struct group* Perl_reentr_getgrnam(const char* a) {
309                    dTHX;
310                    int PL_REENTRANT_RETINT;
311                    return ((PL_REENTRANT_RETINT = getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size)) == 0 ? &PL_reentrant_buffer->_grent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct group*)Perl_reentrant_retry("getgrnam", a) : 0));
312                }
313#           endif
314#       endif
315#   endif
316#   if !defined(getgrnam) && GETGRNAM_R_PROTO == REENTRANT_PROTO_S_CSBI
317#       define getgrnam(a) (getgrnam_r(a, &PL_reentrant_buffer->_grent_struct, PL_reentrant_buffer->_grent_buffer, PL_reentrant_buffer->_grent_size) ? &PL_reentrant_buffer->_grent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getgrnam", a) : 0))
318#   endif
319#endif /* HAS_GETGRNAM_R */
320
321#ifdef HAS_GETHOSTBYADDR_R
322#   undef gethostbyaddr
323#   if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_I_CWISBWRE
324#       ifdef PERL_CORE
325#           define gethostbyaddr(a, b, c) ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))
326#       else
327#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
328#               define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));})
329#           else
330#               define gethostbyaddr(a, b, c) Perl_reentr_gethostbyaddr(a, b, c)
331                static struct hostent* Perl_reentr_gethostbyaddr(const char* a, size_t b, int c) {
332                    dTHX;
333                    int PL_REENTRANT_RETINT;
334                    return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));
335                }
336#           endif
337#       endif
338#   endif
339#   if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_S_CWISBWIE
340#       define gethostbyaddr(a, b, c) (gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno) ? &PL_reentrant_buffer->_hostent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))
341#   endif
342#   if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_S_CWISBIE
343#       define gethostbyaddr(a, b, c) (gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno) ? &PL_reentrant_buffer->_hostent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))
344#   endif
345#   if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_S_TWISBIE
346#       define gethostbyaddr(a, b, c) (gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno) ? &PL_reentrant_buffer->_hostent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))
347#   endif
348#   if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_S_CIISBIE
349#       define gethostbyaddr(a, b, c) (gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno) ? &PL_reentrant_buffer->_hostent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))
350#   endif
351#   if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_S_CSBIE
352#       define gethostbyaddr(a, b, c) (gethostbyaddr_r(a, b, c, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno) ? 1 : ((errno == ERANGE) ? Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))
353#   endif
354#   if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_S_TSBIE
355#       define gethostbyaddr(a, b, c) (gethostbyaddr_r(a, b, c, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno) ? 1 : ((errno == ERANGE) ? Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))
356#   endif
357#   if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_I_CWISD
358#       ifdef PERL_CORE
359#           define gethostbyaddr(a, b, c) ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))
360#       else
361#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
362#               define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));})
363#           else
364#               define gethostbyaddr(a, b, c) Perl_reentr_gethostbyaddr(a, b, c)
365                static struct hostent* Perl_reentr_gethostbyaddr(const char* a, size_t b, int c) {
366                    dTHX;
367                    int PL_REENTRANT_RETINT;
368                    return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));
369                }
370#           endif
371#       endif
372#   endif
373#   if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_I_CIISD
374#       ifdef PERL_CORE
375#           define gethostbyaddr(a, b, c) ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))
376#       else
377#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
378#               define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));})
379#           else
380#               define gethostbyaddr(a, b, c) Perl_reentr_gethostbyaddr(a, b, c)
381                static struct hostent* Perl_reentr_gethostbyaddr(const char* a, int b, int c) {
382                    dTHX;
383                    int PL_REENTRANT_RETINT;
384                    return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));
385                }
386#           endif
387#       endif
388#   endif
389#   if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_I_CII
390#       ifdef PERL_CORE
391#           define gethostbyaddr(a, b, c) ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c)) == 0 ? 1 : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))
392#       else
393#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
394#               define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c)) == 0 ? 1 : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));})
395#           else
396#               define gethostbyaddr(a, b, c) Perl_reentr_gethostbyaddr(a, b, c)
397                static struct hostent* Perl_reentr_gethostbyaddr(const char* a, int b, int c) {
398                    dTHX;
399                    int PL_REENTRANT_RETINT;
400                    return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c)) == 0 ? 1 : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));
401                }
402#           endif
403#       endif
404#   endif
405#   if !defined(gethostbyaddr) && GETHOSTBYADDR_R_PROTO == REENTRANT_PROTO_I_TsISBWRE
406#       ifdef PERL_CORE
407#           define gethostbyaddr(a, b, c) ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0))
408#       else
409#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
410#               define gethostbyaddr(a, b, c) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));})
411#           else
412#               define gethostbyaddr(a, b, c) Perl_reentr_gethostbyaddr(a, b, c)
413                static struct hostent* Perl_reentr_gethostbyaddr(const void* a, socklen_t b, int c) {
414                    dTHX;
415                    int PL_REENTRANT_RETINT;
416                    return ((PL_REENTRANT_RETINT = gethostbyaddr_r(a, b, c, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyaddr", a, b, c) : 0));
417                }
418#           endif
419#       endif
420#   endif
421#endif /* HAS_GETHOSTBYADDR_R */
422
423#ifdef HAS_GETHOSTBYNAME_R
424#   undef gethostbyname
425#   if !defined(gethostbyname) && GETHOSTBYNAME_R_PROTO == REENTRANT_PROTO_I_CSBWRE
426#       ifdef PERL_CORE
427#           define gethostbyname(a) ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0))
428#       else
429#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
430#               define gethostbyname(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0));})
431#           else
432#               define gethostbyname(a) Perl_reentr_gethostbyname(a)
433                static struct hostent* Perl_reentr_gethostbyname(const char* a) {
434                    dTHX;
435                    int PL_REENTRANT_RETINT;
436                    return ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0));
437                }
438#           endif
439#       endif
440#   endif
441#   if !defined(gethostbyname) && GETHOSTBYNAME_R_PROTO == REENTRANT_PROTO_S_CSBIE
442#       define gethostbyname(a) (gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno) ? &PL_reentrant_buffer->_hostent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("gethostbyname", a) : 0))
443#   endif
444#   if !defined(gethostbyname) && GETHOSTBYNAME_R_PROTO == REENTRANT_PROTO_I_CSD
445#       ifdef PERL_CORE
446#           define gethostbyname(a) ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0))
447#       else
448#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
449#               define gethostbyname(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0));})
450#           else
451#               define gethostbyname(a) Perl_reentr_gethostbyname(a)
452                static struct hostent* Perl_reentr_gethostbyname(const char* a) {
453                    dTHX;
454                    int PL_REENTRANT_RETINT;
455                    return ((PL_REENTRANT_RETINT = gethostbyname_r(a, &PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostbyname", a) : 0));
456                }
457#           endif
458#       endif
459#   endif
460#endif /* HAS_GETHOSTBYNAME_R */
461
462#ifdef HAS_GETHOSTENT_R
463#   undef gethostent
464#   if !defined(gethostent) && GETHOSTENT_R_PROTO == REENTRANT_PROTO_I_SBWRE
465#       ifdef PERL_CORE
466#           define gethostent() ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0))
467#       else
468#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
469#               define gethostent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));})
470#           else
471#               define gethostent() Perl_reentr_gethostent()
472                static struct hostent* Perl_reentr_gethostent() {
473                    dTHX;
474                    int PL_REENTRANT_RETINT;
475                    return ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_ptr, &PL_reentrant_buffer->_hostent_errno)) == 0 ? PL_reentrant_buffer->_hostent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));
476                }
477#           endif
478#       endif
479#   endif
480#   if !defined(gethostent) && GETHOSTENT_R_PROTO == REENTRANT_PROTO_I_SBIE
481#       ifdef PERL_CORE
482#           define gethostent() ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0))
483#       else
484#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
485#               define gethostent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));})
486#           else
487#               define gethostent() Perl_reentr_gethostent()
488                static struct hostent* Perl_reentr_gethostent() {
489                    dTHX;
490                    int PL_REENTRANT_RETINT;
491                    return ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));
492                }
493#           endif
494#       endif
495#   endif
496#   if !defined(gethostent) && GETHOSTENT_R_PROTO == REENTRANT_PROTO_S_SBIE
497#       define gethostent() (gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size, &PL_reentrant_buffer->_hostent_errno) ? &PL_reentrant_buffer->_hostent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("gethostent") : 0))
498#   endif
499#   if !defined(gethostent) && GETHOSTENT_R_PROTO == REENTRANT_PROTO_S_SBI
500#       define gethostent() (gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size) ? &PL_reentrant_buffer->_hostent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("gethostent") : 0))
501#   endif
502#   if !defined(gethostent) && GETHOSTENT_R_PROTO == REENTRANT_PROTO_I_SBI
503#       ifdef PERL_CORE
504#           define gethostent() ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0))
505#       else
506#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
507#               define gethostent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));})
508#           else
509#               define gethostent() Perl_reentr_gethostent()
510                static struct hostent* Perl_reentr_gethostent() {
511                    dTHX;
512                    int PL_REENTRANT_RETINT;
513                    return ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, PL_reentrant_buffer->_hostent_buffer, PL_reentrant_buffer->_hostent_size)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));
514                }
515#           endif
516#       endif
517#   endif
518#   if !defined(gethostent) && GETHOSTENT_R_PROTO == REENTRANT_PROTO_I_SD
519#       ifdef PERL_CORE
520#           define gethostent() ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0))
521#       else
522#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
523#               define gethostent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));})
524#           else
525#               define gethostent() Perl_reentr_gethostent()
526                static struct hostent* Perl_reentr_gethostent() {
527                    dTHX;
528                    int PL_REENTRANT_RETINT;
529                    return ((PL_REENTRANT_RETINT = gethostent_r(&PL_reentrant_buffer->_hostent_struct, &PL_reentrant_buffer->_hostent_data)) == 0 ? &PL_reentrant_buffer->_hostent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct hostent*)Perl_reentrant_retry("gethostent") : 0));
530                }
531#           endif
532#       endif
533#   endif
534#endif /* HAS_GETHOSTENT_R */
535
536#ifdef HAS_GETLOGIN_R
537#   undef getlogin
538#   if !defined(getlogin) && GETLOGIN_R_PROTO == REENTRANT_PROTO_I_BW
539#       ifdef PERL_CORE
540#           define getlogin() ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (char*)Perl_reentrant_retry("getlogin") : 0))
541#       else
542#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
543#               define getlogin() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (char*)Perl_reentrant_retry("getlogin") : 0));})
544#           else
545#               define getlogin() Perl_reentr_getlogin()
546                static char* Perl_reentr_getlogin() {
547                    dTHX;
548                    int PL_REENTRANT_RETINT;
549                    return ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (char*)Perl_reentrant_retry("getlogin") : 0));
550                }
551#           endif
552#       endif
553#   endif
554#   if !defined(getlogin) && GETLOGIN_R_PROTO == REENTRANT_PROTO_I_BI
555#       ifdef PERL_CORE
556#           define getlogin() ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (char*)Perl_reentrant_retry("getlogin") : 0))
557#       else
558#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
559#               define getlogin() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (char*)Perl_reentrant_retry("getlogin") : 0));})
560#           else
561#               define getlogin() Perl_reentr_getlogin()
562                static char* Perl_reentr_getlogin() {
563                    dTHX;
564                    int PL_REENTRANT_RETINT;
565                    return ((PL_REENTRANT_RETINT = getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)) == 0 ? PL_reentrant_buffer->_getlogin_buffer : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (char*)Perl_reentrant_retry("getlogin") : 0));
566                }
567#           endif
568#       endif
569#   endif
570#   if !defined(getlogin) && GETLOGIN_R_PROTO == REENTRANT_PROTO_B_BW
571#       define getlogin() getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)
572#   endif
573#   if !defined(getlogin) && GETLOGIN_R_PROTO == REENTRANT_PROTO_B_BI
574#       define getlogin() getlogin_r(PL_reentrant_buffer->_getlogin_buffer, PL_reentrant_buffer->_getlogin_size)
575#   endif
576#endif /* HAS_GETLOGIN_R */
577
578#ifdef HAS_GETNETBYADDR_R
579#   undef getnetbyaddr
580#   if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_I_UISBWRE
581#       ifdef PERL_CORE
582#           define getnetbyaddr(a, b) ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))
583#       else
584#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
585#               define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));})
586#           else
587#               define getnetbyaddr(a, b) Perl_reentr_getnetbyaddr(a, b)
588                static struct netent* Perl_reentr_getnetbyaddr(unsigned long a, int b) {
589                    dTHX;
590                    int PL_REENTRANT_RETINT;
591                    return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));
592                }
593#           endif
594#       endif
595#   endif
596#   if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_I_LISBI
597#       ifdef PERL_CORE
598#           define getnetbyaddr(a, b) ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))
599#       else
600#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
601#               define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));})
602#           else
603#               define getnetbyaddr(a, b) Perl_reentr_getnetbyaddr(a, b)
604                static struct netent* Perl_reentr_getnetbyaddr(long a, int b) {
605                    dTHX;
606                    int PL_REENTRANT_RETINT;
607                    return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));
608                }
609#           endif
610#       endif
611#   endif
612#   if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_S_TISBI
613#       define getnetbyaddr(a, b) (getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size) ? &PL_reentrant_buffer->_netent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getnetbyaddr", a, b) : 0))
614#   endif
615#   if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_S_LISBI
616#       define getnetbyaddr(a, b) (getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size) ? &PL_reentrant_buffer->_netent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getnetbyaddr", a, b) : 0))
617#   endif
618#   if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_I_TISD
619#       ifdef PERL_CORE
620#           define getnetbyaddr(a, b) ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))
621#       else
622#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
623#               define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));})
624#           else
625#               define getnetbyaddr(a, b) Perl_reentr_getnetbyaddr(a, b)
626                static struct netent* Perl_reentr_getnetbyaddr(in_addr_t a, int b) {
627                    dTHX;
628                    int PL_REENTRANT_RETINT;
629                    return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));
630                }
631#           endif
632#       endif
633#   endif
634#   if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_I_LISD
635#       ifdef PERL_CORE
636#           define getnetbyaddr(a, b) ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))
637#       else
638#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
639#               define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));})
640#           else
641#               define getnetbyaddr(a, b) Perl_reentr_getnetbyaddr(a, b)
642                static struct netent* Perl_reentr_getnetbyaddr(long a, int b) {
643                    dTHX;
644                    int PL_REENTRANT_RETINT;
645                    return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));
646                }
647#           endif
648#       endif
649#   endif
650#   if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_I_IISD
651#       ifdef PERL_CORE
652#           define getnetbyaddr(a, b) ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))
653#       else
654#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
655#               define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));})
656#           else
657#               define getnetbyaddr(a, b) Perl_reentr_getnetbyaddr(a, b)
658                static struct netent* Perl_reentr_getnetbyaddr(int a, int b) {
659                    dTHX;
660                    int PL_REENTRANT_RETINT;
661                    return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));
662                }
663#           endif
664#       endif
665#   endif
666#   if !defined(getnetbyaddr) && GETNETBYADDR_R_PROTO == REENTRANT_PROTO_I_uISBWRE
667#       ifdef PERL_CORE
668#           define getnetbyaddr(a, b) ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0))
669#       else
670#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
671#               define getnetbyaddr(a, b) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));})
672#           else
673#               define getnetbyaddr(a, b) Perl_reentr_getnetbyaddr(a, b)
674                static struct netent* Perl_reentr_getnetbyaddr(uint32_t a, int b) {
675                    dTHX;
676                    int PL_REENTRANT_RETINT;
677                    return ((PL_REENTRANT_RETINT = getnetbyaddr_r(a, b, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyaddr", a, b) : 0));
678                }
679#           endif
680#       endif
681#   endif
682#endif /* HAS_GETNETBYADDR_R */
683
684#ifdef HAS_GETNETBYNAME_R
685#   undef getnetbyname
686#   if !defined(getnetbyname) && GETNETBYNAME_R_PROTO == REENTRANT_PROTO_I_CSBWRE
687#       ifdef PERL_CORE
688#           define getnetbyname(a) ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0))
689#       else
690#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
691#               define getnetbyname(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0));})
692#           else
693#               define getnetbyname(a) Perl_reentr_getnetbyname(a)
694                static struct netent* Perl_reentr_getnetbyname(const char* a) {
695                    dTHX;
696                    int PL_REENTRANT_RETINT;
697                    return ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0));
698                }
699#           endif
700#       endif
701#   endif
702#   if !defined(getnetbyname) && GETNETBYNAME_R_PROTO == REENTRANT_PROTO_I_CSBI
703#       ifdef PERL_CORE
704#           define getnetbyname(a) ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0))
705#       else
706#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
707#               define getnetbyname(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0));})
708#           else
709#               define getnetbyname(a) Perl_reentr_getnetbyname(a)
710                static struct netent* Perl_reentr_getnetbyname(const char* a) {
711                    dTHX;
712                    int PL_REENTRANT_RETINT;
713                    return ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0));
714                }
715#           endif
716#       endif
717#   endif
718#   if !defined(getnetbyname) && GETNETBYNAME_R_PROTO == REENTRANT_PROTO_S_CSBI
719#       define getnetbyname(a) (getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size) ? &PL_reentrant_buffer->_netent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getnetbyname", a) : 0))
720#   endif
721#   if !defined(getnetbyname) && GETNETBYNAME_R_PROTO == REENTRANT_PROTO_I_CSD
722#       ifdef PERL_CORE
723#           define getnetbyname(a) ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0))
724#       else
725#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
726#               define getnetbyname(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0));})
727#           else
728#               define getnetbyname(a) Perl_reentr_getnetbyname(a)
729                static struct netent* Perl_reentr_getnetbyname(const char* a) {
730                    dTHX;
731                    int PL_REENTRANT_RETINT;
732                    return ((PL_REENTRANT_RETINT = getnetbyname_r(a, &PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetbyname", a) : 0));
733                }
734#           endif
735#       endif
736#   endif
737#endif /* HAS_GETNETBYNAME_R */
738
739#ifdef HAS_GETNETENT_R
740#   undef getnetent
741#   if !defined(getnetent) && GETNETENT_R_PROTO == REENTRANT_PROTO_I_SBWRE
742#       ifdef PERL_CORE
743#           define getnetent() ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0))
744#       else
745#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
746#               define getnetent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));})
747#           else
748#               define getnetent() Perl_reentr_getnetent()
749                static struct netent* Perl_reentr_getnetent() {
750                    dTHX;
751                    int PL_REENTRANT_RETINT;
752                    return ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_ptr, &PL_reentrant_buffer->_netent_errno)) == 0 ? PL_reentrant_buffer->_netent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));
753                }
754#           endif
755#       endif
756#   endif
757#   if !defined(getnetent) && GETNETENT_R_PROTO == REENTRANT_PROTO_I_SBIE
758#       ifdef PERL_CORE
759#           define getnetent() ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_errno)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0))
760#       else
761#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
762#               define getnetent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_errno)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));})
763#           else
764#               define getnetent() Perl_reentr_getnetent()
765                static struct netent* Perl_reentr_getnetent() {
766                    dTHX;
767                    int PL_REENTRANT_RETINT;
768                    return ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_errno)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));
769                }
770#           endif
771#       endif
772#   endif
773#   if !defined(getnetent) && GETNETENT_R_PROTO == REENTRANT_PROTO_S_SBIE
774#       define getnetent() (getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size, &PL_reentrant_buffer->_netent_errno) ? &PL_reentrant_buffer->_netent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getnetent") : 0))
775#   endif
776#   if !defined(getnetent) && GETNETENT_R_PROTO == REENTRANT_PROTO_S_SBI
777#       define getnetent() (getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size) ? &PL_reentrant_buffer->_netent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getnetent") : 0))
778#   endif
779#   if !defined(getnetent) && GETNETENT_R_PROTO == REENTRANT_PROTO_I_SBI
780#       ifdef PERL_CORE
781#           define getnetent() ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0))
782#       else
783#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
784#               define getnetent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));})
785#           else
786#               define getnetent() Perl_reentr_getnetent()
787                static struct netent* Perl_reentr_getnetent() {
788                    dTHX;
789                    int PL_REENTRANT_RETINT;
790                    return ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, PL_reentrant_buffer->_netent_buffer, PL_reentrant_buffer->_netent_size)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));
791                }
792#           endif
793#       endif
794#   endif
795#   if !defined(getnetent) && GETNETENT_R_PROTO == REENTRANT_PROTO_I_SD
796#       ifdef PERL_CORE
797#           define getnetent() ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0))
798#       else
799#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
800#               define getnetent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));})
801#           else
802#               define getnetent() Perl_reentr_getnetent()
803                static struct netent* Perl_reentr_getnetent() {
804                    dTHX;
805                    int PL_REENTRANT_RETINT;
806                    return ((PL_REENTRANT_RETINT = getnetent_r(&PL_reentrant_buffer->_netent_struct, &PL_reentrant_buffer->_netent_data)) == 0 ? &PL_reentrant_buffer->_netent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct netent*)Perl_reentrant_retry("getnetent") : 0));
807                }
808#           endif
809#       endif
810#   endif
811#endif /* HAS_GETNETENT_R */
812
813#ifdef HAS_GETPROTOBYNAME_R
814#   undef getprotobyname
815#   if !defined(getprotobyname) && GETPROTOBYNAME_R_PROTO == REENTRANT_PROTO_I_CSBWR
816#       ifdef PERL_CORE
817#           define getprotobyname(a) ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0))
818#       else
819#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
820#               define getprotobyname(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0));})
821#           else
822#               define getprotobyname(a) Perl_reentr_getprotobyname(a)
823                static struct protoent* Perl_reentr_getprotobyname(const char* a) {
824                    dTHX;
825                    int PL_REENTRANT_RETINT;
826                    return ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0));
827                }
828#           endif
829#       endif
830#   endif
831#   if !defined(getprotobyname) && GETPROTOBYNAME_R_PROTO == REENTRANT_PROTO_S_CSBI
832#       define getprotobyname(a) (getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size) ? &PL_reentrant_buffer->_protoent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getprotobyname", a) : 0))
833#   endif
834#   if !defined(getprotobyname) && GETPROTOBYNAME_R_PROTO == REENTRANT_PROTO_I_CSD
835#       ifdef PERL_CORE
836#           define getprotobyname(a) ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0))
837#       else
838#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
839#               define getprotobyname(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0));})
840#           else
841#               define getprotobyname(a) Perl_reentr_getprotobyname(a)
842                static struct protoent* Perl_reentr_getprotobyname(const char* a) {
843                    dTHX;
844                    int PL_REENTRANT_RETINT;
845                    return ((PL_REENTRANT_RETINT = getprotobyname_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobyname", a) : 0));
846                }
847#           endif
848#       endif
849#   endif
850#endif /* HAS_GETPROTOBYNAME_R */
851
852#ifdef HAS_GETPROTOBYNUMBER_R
853#   undef getprotobynumber
854#   if !defined(getprotobynumber) && GETPROTOBYNUMBER_R_PROTO == REENTRANT_PROTO_I_ISBWR
855#       ifdef PERL_CORE
856#           define getprotobynumber(a) ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0))
857#       else
858#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
859#               define getprotobynumber(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0));})
860#           else
861#               define getprotobynumber(a) Perl_reentr_getprotobynumber(a)
862                static struct protoent* Perl_reentr_getprotobynumber(int a) {
863                    dTHX;
864                    int PL_REENTRANT_RETINT;
865                    return ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0));
866                }
867#           endif
868#       endif
869#   endif
870#   if !defined(getprotobynumber) && GETPROTOBYNUMBER_R_PROTO == REENTRANT_PROTO_S_ISBI
871#       define getprotobynumber(a) (getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size) ? &PL_reentrant_buffer->_protoent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getprotobynumber", a) : 0))
872#   endif
873#   if !defined(getprotobynumber) && GETPROTOBYNUMBER_R_PROTO == REENTRANT_PROTO_I_ISD
874#       ifdef PERL_CORE
875#           define getprotobynumber(a) ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0))
876#       else
877#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
878#               define getprotobynumber(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0));})
879#           else
880#               define getprotobynumber(a) Perl_reentr_getprotobynumber(a)
881                static struct protoent* Perl_reentr_getprotobynumber(int a) {
882                    dTHX;
883                    int PL_REENTRANT_RETINT;
884                    return ((PL_REENTRANT_RETINT = getprotobynumber_r(a, &PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotobynumber", a) : 0));
885                }
886#           endif
887#       endif
888#   endif
889#endif /* HAS_GETPROTOBYNUMBER_R */
890
891#ifdef HAS_GETPROTOENT_R
892#   undef getprotoent
893#   if !defined(getprotoent) && GETPROTOENT_R_PROTO == REENTRANT_PROTO_I_SBWR
894#       ifdef PERL_CORE
895#           define getprotoent() ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0))
896#       else
897#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
898#               define getprotoent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0));})
899#           else
900#               define getprotoent() Perl_reentr_getprotoent()
901                static struct protoent* Perl_reentr_getprotoent() {
902                    dTHX;
903                    int PL_REENTRANT_RETINT;
904                    return ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size, &PL_reentrant_buffer->_protoent_ptr)) == 0 ? PL_reentrant_buffer->_protoent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0));
905                }
906#           endif
907#       endif
908#   endif
909#   if !defined(getprotoent) && GETPROTOENT_R_PROTO == REENTRANT_PROTO_I_SBI
910#       ifdef PERL_CORE
911#           define getprotoent() ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0))
912#       else
913#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
914#               define getprotoent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0));})
915#           else
916#               define getprotoent() Perl_reentr_getprotoent()
917                static struct protoent* Perl_reentr_getprotoent() {
918                    dTHX;
919                    int PL_REENTRANT_RETINT;
920                    return ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0));
921                }
922#           endif
923#       endif
924#   endif
925#   if !defined(getprotoent) && GETPROTOENT_R_PROTO == REENTRANT_PROTO_S_SBI
926#       define getprotoent() (getprotoent_r(&PL_reentrant_buffer->_protoent_struct, PL_reentrant_buffer->_protoent_buffer, PL_reentrant_buffer->_protoent_size) ? &PL_reentrant_buffer->_protoent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getprotoent") : 0))
927#   endif
928#   if !defined(getprotoent) && GETPROTOENT_R_PROTO == REENTRANT_PROTO_I_SD
929#       ifdef PERL_CORE
930#           define getprotoent() ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0))
931#       else
932#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
933#               define getprotoent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0));})
934#           else
935#               define getprotoent() Perl_reentr_getprotoent()
936                static struct protoent* Perl_reentr_getprotoent() {
937                    dTHX;
938                    int PL_REENTRANT_RETINT;
939                    return ((PL_REENTRANT_RETINT = getprotoent_r(&PL_reentrant_buffer->_protoent_struct, &PL_reentrant_buffer->_protoent_data)) == 0 ? &PL_reentrant_buffer->_protoent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct protoent*)Perl_reentrant_retry("getprotoent") : 0));
940                }
941#           endif
942#       endif
943#   endif
944#endif /* HAS_GETPROTOENT_R */
945
946#ifdef HAS_GETPWENT_R
947#   undef getpwent
948#   if !defined(getpwent) && GETPWENT_R_PROTO == REENTRANT_PROTO_I_SBWR
949#       ifdef PERL_CORE
950#           define getpwent() ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0))
951#       else
952#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
953#               define getpwent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));})
954#           else
955#               define getpwent() Perl_reentr_getpwent()
956                static struct passwd* Perl_reentr_getpwent() {
957                    dTHX;
958                    int PL_REENTRANT_RETINT;
959                    return ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));
960                }
961#           endif
962#       endif
963#   endif
964#   if !defined(getpwent) && GETPWENT_R_PROTO == REENTRANT_PROTO_I_SBIR
965#       ifdef PERL_CORE
966#           define getpwent() ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0))
967#       else
968#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
969#               define getpwent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));})
970#           else
971#               define getpwent() Perl_reentr_getpwent()
972                static struct passwd* Perl_reentr_getpwent() {
973                    dTHX;
974                    int PL_REENTRANT_RETINT;
975                    return ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));
976                }
977#           endif
978#       endif
979#   endif
980#   if !defined(getpwent) && GETPWENT_R_PROTO == REENTRANT_PROTO_S_SBW
981#       define getpwent() (getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size) ? &PL_reentrant_buffer->_pwent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getpwent") : 0))
982#   endif
983#   if !defined(getpwent) && GETPWENT_R_PROTO == REENTRANT_PROTO_S_SBI
984#       define getpwent() (getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size) ? &PL_reentrant_buffer->_pwent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getpwent") : 0))
985#   endif
986#   if !defined(getpwent) && GETPWENT_R_PROTO == REENTRANT_PROTO_I_SBI
987#       ifdef PERL_CORE
988#           define getpwent() ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0))
989#       else
990#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
991#               define getpwent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));})
992#           else
993#               define getpwent() Perl_reentr_getpwent()
994                static struct passwd* Perl_reentr_getpwent() {
995                    dTHX;
996                    int PL_REENTRANT_RETINT;
997                    return ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));
998                }
999#           endif
1000#       endif
1001#   endif
1002#   if !defined(getpwent) && GETPWENT_R_PROTO == REENTRANT_PROTO_I_SBIH
1003#       ifdef PERL_CORE
1004#           define getpwent() ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_fptr)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0))
1005#       else
1006#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1007#               define getpwent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_fptr)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));})
1008#           else
1009#               define getpwent() Perl_reentr_getpwent()
1010                static struct passwd* Perl_reentr_getpwent() {
1011                    dTHX;
1012                    int PL_REENTRANT_RETINT;
1013                    return ((PL_REENTRANT_RETINT = getpwent_r(&PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_fptr)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwent") : 0));
1014                }
1015#           endif
1016#       endif
1017#   endif
1018#endif /* HAS_GETPWENT_R */
1019
1020#ifdef HAS_GETPWNAM_R
1021#   undef getpwnam
1022#   if !defined(getpwnam) && GETPWNAM_R_PROTO == REENTRANT_PROTO_I_CSBWR
1023#       ifdef PERL_CORE
1024#           define getpwnam(a) ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0))
1025#       else
1026#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1027#               define getpwnam(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0));})
1028#           else
1029#               define getpwnam(a) Perl_reentr_getpwnam(a)
1030                static struct passwd* Perl_reentr_getpwnam(const char* a) {
1031                    dTHX;
1032                    int PL_REENTRANT_RETINT;
1033                    return ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0));
1034                }
1035#           endif
1036#       endif
1037#   endif
1038#   if !defined(getpwnam) && GETPWNAM_R_PROTO == REENTRANT_PROTO_I_CSBIR
1039#       ifdef PERL_CORE
1040#           define getpwnam(a) ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0))
1041#       else
1042#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1043#               define getpwnam(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0));})
1044#           else
1045#               define getpwnam(a) Perl_reentr_getpwnam(a)
1046                static struct passwd* Perl_reentr_getpwnam(const char* a) {
1047                    dTHX;
1048                    int PL_REENTRANT_RETINT;
1049                    return ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0));
1050                }
1051#           endif
1052#       endif
1053#   endif
1054#   if !defined(getpwnam) && GETPWNAM_R_PROTO == REENTRANT_PROTO_S_CSBI
1055#       define getpwnam(a) (getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size) ? &PL_reentrant_buffer->_pwent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getpwnam", a) : 0))
1056#   endif
1057#   if !defined(getpwnam) && GETPWNAM_R_PROTO == REENTRANT_PROTO_I_CSBI
1058#       ifdef PERL_CORE
1059#           define getpwnam(a) ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0))
1060#       else
1061#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1062#               define getpwnam(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0));})
1063#           else
1064#               define getpwnam(a) Perl_reentr_getpwnam(a)
1065                static struct passwd* Perl_reentr_getpwnam(const char* a) {
1066                    dTHX;
1067                    int PL_REENTRANT_RETINT;
1068                    return ((PL_REENTRANT_RETINT = getpwnam_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwnam", a) : 0));
1069                }
1070#           endif
1071#       endif
1072#   endif
1073#endif /* HAS_GETPWNAM_R */
1074
1075#ifdef HAS_GETPWUID_R
1076#   undef getpwuid
1077#   if !defined(getpwuid) && GETPWUID_R_PROTO == REENTRANT_PROTO_I_TSBWR
1078#       ifdef PERL_CORE
1079#           define getpwuid(a) ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0))
1080#       else
1081#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1082#               define getpwuid(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0));})
1083#           else
1084#               define getpwuid(a) Perl_reentr_getpwuid(a)
1085                static struct passwd* Perl_reentr_getpwuid(uid_t a) {
1086                    dTHX;
1087                    int PL_REENTRANT_RETINT;
1088                    return ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0));
1089                }
1090#           endif
1091#       endif
1092#   endif
1093#   if !defined(getpwuid) && GETPWUID_R_PROTO == REENTRANT_PROTO_I_TSBIR
1094#       ifdef PERL_CORE
1095#           define getpwuid(a) ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0))
1096#       else
1097#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1098#               define getpwuid(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0));})
1099#           else
1100#               define getpwuid(a) Perl_reentr_getpwuid(a)
1101                static struct passwd* Perl_reentr_getpwuid(uid_t a) {
1102                    dTHX;
1103                    int PL_REENTRANT_RETINT;
1104                    return ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size, &PL_reentrant_buffer->_pwent_ptr)) == 0 ? PL_reentrant_buffer->_pwent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0));
1105                }
1106#           endif
1107#       endif
1108#   endif
1109#   if !defined(getpwuid) && GETPWUID_R_PROTO == REENTRANT_PROTO_I_TSBI
1110#       ifdef PERL_CORE
1111#           define getpwuid(a) ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0))
1112#       else
1113#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1114#               define getpwuid(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0));})
1115#           else
1116#               define getpwuid(a) Perl_reentr_getpwuid(a)
1117                static struct passwd* Perl_reentr_getpwuid(uid_t a) {
1118                    dTHX;
1119                    int PL_REENTRANT_RETINT;
1120                    return ((PL_REENTRANT_RETINT = getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size)) == 0 ? &PL_reentrant_buffer->_pwent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct passwd*)Perl_reentrant_retry("getpwuid", a) : 0));
1121                }
1122#           endif
1123#       endif
1124#   endif
1125#   if !defined(getpwuid) && GETPWUID_R_PROTO == REENTRANT_PROTO_S_TSBI
1126#       define getpwuid(a) (getpwuid_r(a, &PL_reentrant_buffer->_pwent_struct, PL_reentrant_buffer->_pwent_buffer, PL_reentrant_buffer->_pwent_size) ? &PL_reentrant_buffer->_pwent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getpwuid", a) : 0))
1127#   endif
1128#endif /* HAS_GETPWUID_R */
1129
1130#ifdef HAS_GETSERVBYNAME_R
1131#   undef getservbyname
1132#   if !defined(getservbyname) && GETSERVBYNAME_R_PROTO == REENTRANT_PROTO_I_CCSBWR
1133#       ifdef PERL_CORE
1134#           define getservbyname(a, b) ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0))
1135#       else
1136#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1137#               define getservbyname(a, b) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0));})
1138#           else
1139#               define getservbyname(a, b) Perl_reentr_getservbyname(a, b)
1140                static struct servent* Perl_reentr_getservbyname(const char* a, const char* b) {
1141                    dTHX;
1142                    int PL_REENTRANT_RETINT;
1143                    return ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0));
1144                }
1145#           endif
1146#       endif
1147#   endif
1148#   if !defined(getservbyname) && GETSERVBYNAME_R_PROTO == REENTRANT_PROTO_S_CCSBI
1149#       define getservbyname(a, b) (getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size) ? &PL_reentrant_buffer->_servent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getservbyname", a, b) : 0))
1150#   endif
1151#   if !defined(getservbyname) && GETSERVBYNAME_R_PROTO == REENTRANT_PROTO_I_CCSD
1152#       ifdef PERL_CORE
1153#           define getservbyname(a, b) ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0))
1154#       else
1155#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1156#               define getservbyname(a, b) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0));})
1157#           else
1158#               define getservbyname(a, b) Perl_reentr_getservbyname(a, b)
1159                static struct servent* Perl_reentr_getservbyname(const char* a, const char* b) {
1160                    dTHX;
1161                    int PL_REENTRANT_RETINT;
1162                    return ((PL_REENTRANT_RETINT = getservbyname_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyname", a, b) : 0));
1163                }
1164#           endif
1165#       endif
1166#   endif
1167#endif /* HAS_GETSERVBYNAME_R */
1168
1169#ifdef HAS_GETSERVBYPORT_R
1170#   undef getservbyport
1171#   if !defined(getservbyport) && GETSERVBYPORT_R_PROTO == REENTRANT_PROTO_I_ICSBWR
1172#       ifdef PERL_CORE
1173#           define getservbyport(a, b) ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0))
1174#       else
1175#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1176#               define getservbyport(a, b) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0));})
1177#           else
1178#               define getservbyport(a, b) Perl_reentr_getservbyport(a, b)
1179                static struct servent* Perl_reentr_getservbyport(int a, const char* b) {
1180                    dTHX;
1181                    int PL_REENTRANT_RETINT;
1182                    return ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0));
1183                }
1184#           endif
1185#       endif
1186#   endif
1187#   if !defined(getservbyport) && GETSERVBYPORT_R_PROTO == REENTRANT_PROTO_S_ICSBI
1188#       define getservbyport(a, b) (getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size) ? &PL_reentrant_buffer->_servent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getservbyport", a, b) : 0))
1189#   endif
1190#   if !defined(getservbyport) && GETSERVBYPORT_R_PROTO == REENTRANT_PROTO_I_ICSD
1191#       ifdef PERL_CORE
1192#           define getservbyport(a, b) ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0))
1193#       else
1194#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1195#               define getservbyport(a, b) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0));})
1196#           else
1197#               define getservbyport(a, b) Perl_reentr_getservbyport(a, b)
1198                static struct servent* Perl_reentr_getservbyport(int a, const char* b) {
1199                    dTHX;
1200                    int PL_REENTRANT_RETINT;
1201                    return ((PL_REENTRANT_RETINT = getservbyport_r(a, b, &PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservbyport", a, b) : 0));
1202                }
1203#           endif
1204#       endif
1205#   endif
1206#endif /* HAS_GETSERVBYPORT_R */
1207
1208#ifdef HAS_GETSERVENT_R
1209#   undef getservent
1210#   if !defined(getservent) && GETSERVENT_R_PROTO == REENTRANT_PROTO_I_SBWR
1211#       ifdef PERL_CORE
1212#           define getservent() ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0))
1213#       else
1214#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1215#               define getservent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0));})
1216#           else
1217#               define getservent() Perl_reentr_getservent()
1218                static struct servent* Perl_reentr_getservent() {
1219                    dTHX;
1220                    int PL_REENTRANT_RETINT;
1221                    return ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size, &PL_reentrant_buffer->_servent_ptr)) == 0 ? PL_reentrant_buffer->_servent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0));
1222                }
1223#           endif
1224#       endif
1225#   endif
1226#   if !defined(getservent) && GETSERVENT_R_PROTO == REENTRANT_PROTO_I_SBI
1227#       ifdef PERL_CORE
1228#           define getservent() ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0))
1229#       else
1230#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1231#               define getservent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0));})
1232#           else
1233#               define getservent() Perl_reentr_getservent()
1234                static struct servent* Perl_reentr_getservent() {
1235                    dTHX;
1236                    int PL_REENTRANT_RETINT;
1237                    return ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0));
1238                }
1239#           endif
1240#       endif
1241#   endif
1242#   if !defined(getservent) && GETSERVENT_R_PROTO == REENTRANT_PROTO_S_SBI
1243#       define getservent() (getservent_r(&PL_reentrant_buffer->_servent_struct, PL_reentrant_buffer->_servent_buffer, PL_reentrant_buffer->_servent_size) ? &PL_reentrant_buffer->_servent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getservent") : 0))
1244#   endif
1245#   if !defined(getservent) && GETSERVENT_R_PROTO == REENTRANT_PROTO_I_SD
1246#       ifdef PERL_CORE
1247#           define getservent() ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0))
1248#       else
1249#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1250#               define getservent() ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0));})
1251#           else
1252#               define getservent() Perl_reentr_getservent()
1253                static struct servent* Perl_reentr_getservent() {
1254                    dTHX;
1255                    int PL_REENTRANT_RETINT;
1256                    return ((PL_REENTRANT_RETINT = getservent_r(&PL_reentrant_buffer->_servent_struct, &PL_reentrant_buffer->_servent_data)) == 0 ? &PL_reentrant_buffer->_servent_struct : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct servent*)Perl_reentrant_retry("getservent") : 0));
1257                }
1258#           endif
1259#       endif
1260#   endif
1261#endif /* HAS_GETSERVENT_R */
1262
1263#ifdef HAS_GETSPNAM_R
1264#   undef getspnam
1265#   if !defined(getspnam) && GETSPNAM_R_PROTO == REENTRANT_PROTO_I_CSBWR
1266#       ifdef PERL_CORE
1267#           define getspnam(a) ((PL_REENTRANT_RETINT = getspnam_r(a, &PL_reentrant_buffer->_spent_struct, PL_reentrant_buffer->_spent_buffer, PL_reentrant_buffer->_spent_size, &PL_reentrant_buffer->_spent_ptr)) == 0 ? PL_reentrant_buffer->_spent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct spwd*)Perl_reentrant_retry("getspnam", a) : 0))
1268#       else
1269#           if defined(__GNUC__) && !defined(__STRICT_ANSI__) && !defined(PERL_GCC_PEDANTIC)
1270#               define getspnam(a) ({int PL_REENTRANT_RETINT; ((PL_REENTRANT_RETINT = getspnam_r(a, &PL_reentrant_buffer->_spent_struct, PL_reentrant_buffer->_spent_buffer, PL_reentrant_buffer->_spent_size, &PL_reentrant_buffer->_spent_ptr)) == 0 ? PL_reentrant_buffer->_spent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct spwd*)Perl_reentrant_retry("getspnam", a) : 0));})
1271#           else
1272#               define getspnam(a) Perl_reentr_getspnam(a)
1273                static struct spwd* Perl_reentr_getspnam(const char* a) {
1274                    dTHX;
1275                    int PL_REENTRANT_RETINT;
1276                    return ((PL_REENTRANT_RETINT = getspnam_r(a, &PL_reentrant_buffer->_spent_struct, PL_reentrant_buffer->_spent_buffer, PL_reentrant_buffer->_spent_size, &PL_reentrant_buffer->_spent_ptr)) == 0 ? PL_reentrant_buffer->_spent_ptr : (((PL_REENTRANT_RETINT == ERANGE) || (errno == ERANGE)) ? (struct spwd*)Perl_reentrant_retry("getspnam", a) : 0));
1277                }
1278#           endif
1279#       endif
1280#   endif
1281#   if !defined(getspnam) && GETSPNAM_R_PROTO == REENTRANT_PROTO_S_CSBI
1282#       define getspnam(a) (getspnam_r(a, &PL_reentrant_buffer->_spent_struct, PL_reentrant_buffer->_spent_buffer, PL_reentrant_buffer->_spent_size) ? &PL_reentrant_buffer->_spent_struct : ((errno == ERANGE) ? Perl_reentrant_retry("getspnam", a) : 0))
1283#   endif
1284#endif /* HAS_GETSPNAM_R */
1285
1286#ifdef HAS_GMTIME_R
1287#   undef gmtime
1288#   if !defined(gmtime) && GMTIME_R_PROTO == REENTRANT_PROTO_S_TS
1289#       define gmtime(a) (gmtime_r(a, &PL_reentrant_buffer->_gmtime_struct) ? &PL_reentrant_buffer->_gmtime_struct : 0)
1290#   endif
1291#   if !defined(gmtime) && GMTIME_R_PROTO == REENTRANT_PROTO_I_TS
1292#       define gmtime(a) (gmtime_r(a, &PL_reentrant_buffer->_gmtime_struct) == 0 ? &PL_reentrant_buffer->_gmtime_struct : 0)
1293#   endif
1294#endif /* HAS_GMTIME_R */
1295
1296#ifdef HAS_LOCALTIME_R
1297#   undef localtime
1298#   if !defined(localtime) && LOCALTIME_R_PROTO == REENTRANT_PROTO_S_TS
1299#       define localtime(a) (localtime_r(a, &PL_reentrant_buffer->_localtime_struct) ? &PL_reentrant_buffer->_localtime_struct : 0)
1300#   endif
1301#   if !defined(localtime) && LOCALTIME_R_PROTO == REENTRANT_PROTO_I_TS
1302#       define localtime(a) (localtime_r(a, &PL_reentrant_buffer->_localtime_struct) == 0 ? &PL_reentrant_buffer->_localtime_struct : 0)
1303#   endif
1304#endif /* HAS_LOCALTIME_R */
1305
1306#ifdef HAS_RANDOM_R
1307#   undef random
1308#   if !defined(random) && RANDOM_R_PROTO == REENTRANT_PROTO_I_iS
1309#       define random() (random_r(&PL_reentrant_buffer->_random_retval, &PL_reentrant_buffer->_random_struct) == 0 ? PL_reentrant_buffer->_random_retval : 0)
1310#   endif
1311#   if !defined(random) && RANDOM_R_PROTO == REENTRANT_PROTO_I_lS
1312#       define random() (random_r(&PL_reentrant_buffer->_random_retval, &PL_reentrant_buffer->_random_struct) == 0 ? PL_reentrant_buffer->_random_retval : 0)
1313#   endif
1314#   if !defined(random) && RANDOM_R_PROTO == REENTRANT_PROTO_I_St
1315#       define random() (random_r(&PL_reentrant_buffer->_random_struct, &PL_reentrant_buffer->_random_retval) == 0 ? PL_reentrant_buffer->_random_retval : 0)
1316#   endif
1317#endif /* HAS_RANDOM_R */
1318
1319#ifdef HAS_READDIR_R
1320#   undef readdir
1321#   if !defined(readdir) && READDIR_R_PROTO == REENTRANT_PROTO_I_TSR
1322#       define readdir(a) (readdir_r(a, PL_reentrant_buffer->_readdir_struct, &PL_reentrant_buffer->_readdir_ptr) == 0 ? PL_reentrant_buffer->_readdir_ptr : 0)
1323#   endif
1324#   if !defined(readdir) && READDIR_R_PROTO == REENTRANT_PROTO_I_TS
1325#       define readdir(a) (readdir_r(a, PL_reentrant_buffer->_readdir_struct) == 0 ? PL_reentrant_buffer->_readdir_struct : 0)
1326#   endif
1327#endif /* HAS_READDIR_R */
1328
1329#ifdef HAS_READDIR64_R
1330#   undef readdir64
1331#   if !defined(readdir64) && READDIR64_R_PROTO == REENTRANT_PROTO_I_TSR
1332#       define readdir64(a) (readdir64_r(a, PL_reentrant_buffer->_readdir64_struct, &PL_reentrant_buffer->_readdir64_ptr) == 0 ? PL_reentrant_buffer->_readdir64_ptr : 0)
1333#   endif
1334#   if !defined(readdir64) && READDIR64_R_PROTO == REENTRANT_PROTO_I_TS
1335#       define readdir64(a) (readdir64_r(a, PL_reentrant_buffer->_readdir64_struct) == 0 ? PL_reentrant_buffer->_readdir64_struct : 0)
1336#   endif
1337#endif /* HAS_READDIR64_R */
1338
1339#ifdef HAS_SETGRENT_R
1340#   undef setgrent
1341#   if !defined(setgrent) && SETGRENT_R_PROTO == REENTRANT_PROTO_I_H
1342#       define setgrent() (setgrent_r(&PL_reentrant_buffer->_grent_fptr) == 0 ? 1 : 0)
1343#   endif
1344#   if !defined(setgrent) && SETGRENT_R_PROTO == REENTRANT_PROTO_V_H
1345#       define setgrent() setgrent_r(&PL_reentrant_buffer->_grent_fptr)
1346#   endif
1347#endif /* HAS_SETGRENT_R */
1348
1349#ifdef HAS_SETHOSTENT_R
1350#   undef sethostent
1351#   if !defined(sethostent) && SETHOSTENT_R_PROTO == REENTRANT_PROTO_I_ID
1352#       define sethostent(a) (sethostent_r(a, &PL_reentrant_buffer->_hostent_data) == 0 ? 1 : 0)
1353#   endif
1354#   if !defined(sethostent) && SETHOSTENT_R_PROTO == REENTRANT_PROTO_V_ID
1355#       define sethostent(a) sethostent_r(a, &PL_reentrant_buffer->_hostent_data)
1356#   endif
1357#endif /* HAS_SETHOSTENT_R */
1358
1359#ifdef HAS_SETLOCALE_R
1360#   undef setlocale
1361#   if !defined(setlocale) && SETLOCALE_R_PROTO == REENTRANT_PROTO_I_ICBI
1362#       define setlocale(a, b) (setlocale_r(a, b, PL_reentrant_buffer->_setlocale_buffer, PL_reentrant_buffer->_setlocale_size) == 0 ? PL_reentrant_buffer->_setlocale_buffer : 0)
1363#   endif
1364#endif /* HAS_SETLOCALE_R */
1365
1366#ifdef HAS_SETNETENT_R
1367#   undef setnetent
1368#   if !defined(setnetent) && SETNETENT_R_PROTO == REENTRANT_PROTO_I_ID
1369#       define setnetent(a) (setnetent_r(a, &PL_reentrant_buffer->_netent_data) == 0 ? 1 : 0)
1370#   endif
1371#   if !defined(setnetent) && SETNETENT_R_PROTO == REENTRANT_PROTO_V_ID
1372#       define setnetent(a) setnetent_r(a, &PL_reentrant_buffer->_netent_data)
1373#   endif
1374#endif /* HAS_SETNETENT_R */
1375
1376#ifdef HAS_SETPROTOENT_R
1377#   undef setprotoent
1378#   if !defined(setprotoent) && SETPROTOENT_R_PROTO == REENTRANT_PROTO_I_ID
1379#       define setprotoent(a) (setprotoent_r(a, &PL_reentrant_buffer->_protoent_data) == 0 ? 1 : 0)
1380#   endif
1381#   if !defined(setprotoent) && SETPROTOENT_R_PROTO == REENTRANT_PROTO_V_ID
1382#       define setprotoent(a) setprotoent_r(a, &PL_reentrant_buffer->_protoent_data)
1383#   endif
1384#endif /* HAS_SETPROTOENT_R */
1385
1386#ifdef HAS_SETPWENT_R
1387#   undef setpwent
1388#   if !defined(setpwent) && SETPWENT_R_PROTO == REENTRANT_PROTO_I_H
1389#       define setpwent() (setpwent_r(&PL_reentrant_buffer->_pwent_fptr) == 0 ? 1 : 0)
1390#   endif
1391#   if !defined(setpwent) && SETPWENT_R_PROTO == REENTRANT_PROTO_V_H
1392#       define setpwent() setpwent_r(&PL_reentrant_buffer->_pwent_fptr)
1393#   endif
1394#endif /* HAS_SETPWENT_R */
1395
1396#ifdef HAS_SETSERVENT_R
1397#   undef setservent
1398#   if !defined(setservent) && SETSERVENT_R_PROTO == REENTRANT_PROTO_I_ID
1399#       define setservent(a) (setservent_r(a, &PL_reentrant_buffer->_servent_data) == 0 ? 1 : 0)
1400#   endif
1401#   if !defined(setservent) && SETSERVENT_R_PROTO == REENTRANT_PROTO_V_ID
1402#       define setservent(a) setservent_r(a, &PL_reentrant_buffer->_servent_data)
1403#   endif
1404#endif /* HAS_SETSERVENT_R */
1405
1406#ifdef HAS_SRAND48_R
1407#   undef srand48
1408#   if !defined(srand48) && SRAND48_R_PROTO == REENTRANT_PROTO_I_LS
1409#       define srand48(a) (srand48_r(a, &PL_reentrant_buffer->_drand48_struct) == 0 ? &PL_reentrant_buffer->_drand48_struct : 0)
1410#   endif
1411#endif /* HAS_SRAND48_R */
1412
1413#ifdef HAS_SRANDOM_R
1414#   undef srandom
1415#   if !defined(srandom) && SRANDOM_R_PROTO == REENTRANT_PROTO_I_TS
1416#       define srandom(a) (srandom_r(a, &PL_reentrant_buffer->_srandom_struct) == 0 ? &PL_reentrant_buffer->_srandom_struct : 0)
1417#   endif
1418#endif /* HAS_SRANDOM_R */
1419
1420#ifdef HAS_STRERROR_R
1421#   undef strerror
1422#   if !defined(strerror) && STRERROR_R_PROTO == REENTRANT_PROTO_I_IBW
1423#       define strerror(a) (strerror_r(a, PL_reentrant_buffer->_strerror_buffer, PL_reentrant_buffer->_strerror_size) == 0 ? PL_reentrant_buffer->_strerror_buffer : 0)
1424#   endif
1425#   if !defined(strerror) && STRERROR_R_PROTO == REENTRANT_PROTO_I_IBI
1426#       define strerror(a) (strerror_r(a, PL_reentrant_buffer->_strerror_buffer, PL_reentrant_buffer->_strerror_size) == 0 ? PL_reentrant_buffer->_strerror_buffer : 0)
1427#   endif
1428#   if !defined(strerror) && STRERROR_R_PROTO == REENTRANT_PROTO_B_IBW
1429#       define strerror(a) strerror_r(a, PL_reentrant_buffer->_strerror_buffer, PL_reentrant_buffer->_strerror_size)
1430#   endif
1431#endif /* HAS_STRERROR_R */
1432
1433#ifdef HAS_TMPNAM_R
1434#   undef tmpnam
1435#   if !defined(tmpnam) && TMPNAM_R_PROTO == REENTRANT_PROTO_B_B
1436#       define tmpnam(a) tmpnam_r(a)
1437#   endif
1438#endif /* HAS_TMPNAM_R */
1439
1440#ifdef HAS_TTYNAME_R
1441#   undef ttyname
1442#   if !defined(ttyname) && TTYNAME_R_PROTO == REENTRANT_PROTO_I_IBW
1443#       define ttyname(a) (ttyname_r(a, PL_reentrant_buffer->_ttyname_buffer, PL_reentrant_buffer->_ttyname_size) == 0 ? PL_reentrant_buffer->_ttyname_buffer : 0)
1444#   endif
1445#   if !defined(ttyname) && TTYNAME_R_PROTO == REENTRANT_PROTO_I_IBI
1446#       define ttyname(a) (ttyname_r(a, PL_reentrant_buffer->_ttyname_buffer, PL_reentrant_buffer->_ttyname_size) == 0 ? PL_reentrant_buffer->_ttyname_buffer : 0)
1447#   endif
1448#   if !defined(ttyname) && TTYNAME_R_PROTO == REENTRANT_PROTO_B_IBI
1449#       define ttyname(a) ttyname_r(a, PL_reentrant_buffer->_ttyname_buffer, PL_reentrant_buffer->_ttyname_size)
1450#   endif
1451#endif /* HAS_TTYNAME_R */
1452
1453
1454
1455#endif /* USE_REENTRANT_API */
1456 
1457#endif
1458
Note: See TracBrowser for help on using the repository browser.