in src/nss/nss_cache_oslogin.c [42:67]
extern int fgetpwent_r(FILE *, struct passwd *, char *, size_t,
struct passwd **);
extern int fgetgrent_r(FILE *, struct group *, char *, size_t, struct group **);
#endif // ifdef BSD
/* Common return code routine for all *ent_r_locked functions.
* We need to return TRYAGAIN if the underlying files guy raises ERANGE,
* so that our caller knows to try again with a bigger buffer.
*/
static inline enum nss_status
_nss_cache_oslogin_ent_bad_return_code(int errnoval) {
enum nss_status ret;
switch (errnoval) {
case ERANGE:
DEBUG("ERANGE: Try again with a bigger buffer\n");
ret = NSS_STATUS_TRYAGAIN;
break;
case ENOENT:
default:
DEBUG("ENOENT or default case: Not found\n");
ret = NSS_STATUS_NOTFOUND;
};
return ret;
}