| ︙ | | |
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
-
+
|
}
/*
* Per-thread private storage used to store values returned from MT-unsafe
* library calls.
*/
#if !defined(TCL_THREADS) || TCL_THREADS
#if TCL_THREADS
typedef struct {
struct passwd pwd;
#if defined(HAVE_GETPWNAM_R_5) || defined(HAVE_GETPWUID_R_5)
#define NEED_PW_CLEANER 1
char *pbuf;
int pbuflen;
|
| ︙ | | |
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
|
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
|
-
+
|
*---------------------------------------------------------------------------
*/
struct passwd *
TclpGetPwNam(
const char *name)
{
#if defined(TCL_THREADS) && !TCL_THREADS
#if !TCL_THREADS
return getpwnam(name);
#else
ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
#if defined(HAVE_GETPWNAM_R_5)
struct passwd *pwPtr = NULL;
|
| ︙ | | |
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
|
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
|
-
+
|
*---------------------------------------------------------------------------
*/
struct passwd *
TclpGetPwUid(
uid_t uid)
{
#if defined(TCL_THREADS) && !TCL_THREADS
#if !TCL_THREADS
return getpwuid(uid);
#else
ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
#if defined(HAVE_GETPWUID_R_5)
struct passwd *pwPtr = NULL;
|
| ︙ | | |
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
|
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
|
-
+
|
*---------------------------------------------------------------------------
*/
struct group *
TclpGetGrNam(
const char *name)
{
#if defined(TCL_THREADS) && !TCL_THREADS
#if !TCL_THREADS
return getgrnam(name);
#else
ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
#if defined(HAVE_GETGRNAM_R_5)
struct group *grPtr = NULL;
|
| ︙ | | |
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
|
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
|
-
+
|
*---------------------------------------------------------------------------
*/
struct group *
TclpGetGrGid(
gid_t gid)
{
#if defined(TCL_THREADS) && !TCL_THREADS
#if !TCL_THREADS
return getgrgid(gid);
#else
ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
#if defined(HAVE_GETGRGID_R_5)
struct group *grPtr = NULL;
|
| ︙ | | |
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
|
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
|
-
+
|
*---------------------------------------------------------------------------
*/
struct hostent *
TclpGetHostByName(
const char *name)
{
#if (defined(TCL_THREADS) && !TCL_THREADS) || defined(HAVE_MTSAFE_GETHOSTBYNAME)
#if !TCL_THREADS || defined(HAVE_MTSAFE_GETHOSTBYNAME)
return gethostbyname(name);
#else
ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
#if defined(HAVE_GETHOSTBYNAME_R_5)
int h_errno;
|
| ︙ | | |
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
|
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
|
-
+
|
struct hostent *
TclpGetHostByAddr(
const char *addr,
int length,
int type)
{
#if (defined(TCL_THREADS) && !TCL_THREADS) || defined(HAVE_MTSAFE_GETHOSTBYADDR)
#if !TCL_THREADS || defined(HAVE_MTSAFE_GETHOSTBYADDR)
return gethostbyaddr(addr, length, type);
#else
ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
#if defined(HAVE_GETHOSTBYADDR_R_7)
int h_errno;
|
| ︙ | | |