summaryrefslogtreecommitdiff
path: root/lib/libc
diff options
context:
space:
mode:
authorTim Kientzle <kientzle@FreeBSD.org>2004-05-17 06:17:59 +0000
committerTim Kientzle <kientzle@FreeBSD.org>2004-05-17 06:17:59 +0000
commitb4cc8687ad2950fd55dc93fb1f28ceaa28a30117 (patch)
treebca83a1443f9f6d55cedd65e53f3e923cefd1895 /lib/libc
parent6cd91141eb418f41a0cda8fe10f9fa8fa0b10014 (diff)
Notes
Diffstat (limited to 'lib/libc')
-rw-r--r--lib/libc/gen/getpwent.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/libc/gen/getpwent.c b/lib/libc/gen/getpwent.c
index 96aee2e3741b..1753a83c8373 100644
--- a/lib/libc/gen/getpwent.c
+++ b/lib/libc/gen/getpwent.c
@@ -379,6 +379,7 @@ getpw(int (*fn)(union key, struct passwd *, char *, size_t, struct passwd **),
free(pwd_storage);
if ((pwd_storage_size << 1) > PWD_STORAGE_MAX) {
pwd_storage = NULL;
+ errno = ERANGE;
return (NULL);
}
pwd_storage_size <<= 1;
@@ -387,6 +388,8 @@ getpw(int (*fn)(union key, struct passwd *, char *, size_t, struct passwd **),
return (NULL);
}
} while (res == NULL && rv == ERANGE);
+ if (res == NULL)
+ errno = rv;
return (res);
}