360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
|
const char *name)
{
#if !defined(TCL_THREADS)
return getgrnam(name);
#else
ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
#ifdef HAVE_GETGRNAM_R_5
struct group *grPtr = NULL;
/*
* How to allocate a buffer of the right initial size. If you want the
* gory detail, see http://www.opengroup.org/austin/docs/austin_328.txt
* and weep.
*/
|
|
|
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
|
const char *name)
{
#if !defined(TCL_THREADS)
return getgrnam(name);
#else
ThreadSpecificData *tsdPtr = TCL_TSD_INIT(&dataKey);
#if defined(HAVE_GETGRNAM_R_5)
struct group *grPtr = NULL;
/*
* How to allocate a buffer of the right initial size. If you want the
* gory detail, see http://www.opengroup.org/austin/docs/austin_328.txt
* and weep.
*/
|