426 util_getpwnam(const char *name, struct passwd *result, char *buffer, |
426 util_getpwnam(const char *name, struct passwd *result, char *buffer, |
427 int buflen) |
427 int buflen) |
428 { |
428 { |
429 struct passwd *rv; |
429 struct passwd *rv; |
430 |
430 |
431 #if defined(AIX) || defined(LINUX) || defined(HPUX) || defined(OSX) |
431 #if defined(AIX) || defined(LINUX) || defined(HPUX) || defined(BSD) |
432 errno = getpwnam_r(name, result, buffer, buflen, &rv); |
432 errno = getpwnam_r(name, result, buffer, buflen, &rv); |
433 if (errno != 0) |
433 if (errno != 0) |
434 rv = NULL; |
434 rv = NULL; |
435 #else |
435 #else |
436 rv = getpwnam_r(name, result, buffer, buflen); |
436 rv = getpwnam_r(name, result, buffer, buflen); |
445 NSAPI_PUBLIC struct passwd * |
445 NSAPI_PUBLIC struct passwd * |
446 util_getpwuid(uid_t uid, struct passwd *result, char *buffer, int buflen) |
446 util_getpwuid(uid_t uid, struct passwd *result, char *buffer, int buflen) |
447 { |
447 { |
448 struct passwd *rv; |
448 struct passwd *rv; |
449 |
449 |
450 #if defined(AIX) || defined(LINUX) || defined(HPUX) || defined(OSX) |
450 #if defined(AIX) || defined(LINUX) || defined(HPUX) || defined(BSD) |
451 errno = getpwuid_r(uid, result, buffer, buflen, &rv); |
451 errno = getpwuid_r(uid, result, buffer, buflen, &rv); |
452 if (errno != 0) |
452 if (errno != 0) |
453 rv = NULL; |
453 rv = NULL; |
454 #else |
454 #else |
455 rv = getpwuid_r(uid, result, buffer, buflen); |
455 rv = getpwuid_r(uid, result, buffer, buflen); |