chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
doc: udevadm test *does* create nodes and links these days
[elogind.git]
/
libudev
/
libudev-util-private.c
diff --git
a/libudev/libudev-util-private.c
b/libudev/libudev-util-private.c
index 3641b3630f8e4ef1fef56c905937cbb3daf043d7..84dee559c40cafdb4c345786c8d6d61dee88a4fc 100644
(file)
--- a/
libudev/libudev-util-private.c
+++ b/
libudev/libudev-util-private.c
@@
-135,8
+135,7
@@
uid_t util_lookup_user(struct udev *udev, const char *user)
if (endptr[0] == '\0')
return uid;
if (endptr[0] == '\0')
return uid;
- errno = 0;
- getpwnam_r(user, &pwbuf, buf, buflen, &pw);
+ errno = getpwnam_r(user, &pwbuf, buf, buflen, &pw);
if (pw != NULL)
return pw->pw_uid;
if (errno == 0 || errno == ENOENT || errno == ESRCH)
if (pw != NULL)
return pw->pw_uid;
if (errno == 0 || errno == ENOENT || errno == ESRCH)
@@
-149,7
+148,7
@@
uid_t util_lookup_user(struct udev *udev, const char *user)
gid_t util_lookup_group(struct udev *udev, const char *group)
{
char *endptr;
gid_t util_lookup_group(struct udev *udev, const char *group)
{
char *endptr;
- int buflen;
+ int buflen
= sysconf(_SC_GETGR_R_SIZE_MAX)
;
char *buf;
struct group grbuf;
struct group *gr;
char *buf;
struct group grbuf;
struct group *gr;
@@
-160,28
+159,23
@@
gid_t util_lookup_group(struct udev *udev, const char *group)
gid = strtoul(group, &endptr, 10);
if (endptr[0] == '\0')
return gid;
gid = strtoul(group, &endptr, 10);
if (endptr[0] == '\0')
return gid;
-
- buflen = sysconf(_SC_GETGR_R_SIZE_MAX);
- if (buflen < 0)
- buflen = 1000;
buf = NULL;
gid = 0;
for (;;) {
buf = realloc(buf, buflen);
if (!buf)
break;
buf = NULL;
gid = 0;
for (;;) {
buf = realloc(buf, buflen);
if (!buf)
break;
- errno = 0;
- getgrnam_r(group, &grbuf, buf, buflen, &gr);
- if (gr != NULL)
+ errno = getgrnam_r(group, &grbuf, buf, buflen, &gr);
+ if (gr != NULL) {
gid = gr->gr_gid;
gid = gr->gr_gid;
- else if (errno == ERANGE) {
+
}
else if (errno == ERANGE) {
buflen *= 2;
continue;
buflen *= 2;
continue;
- }
- else if (errno == 0 || errno == ENOENT || errno == ESRCH)
+ } else if (errno == 0 || errno == ENOENT || errno == ESRCH) {
err(udev, "specified group '%s' unknown\n", group);
err(udev, "specified group '%s' unknown\n", group);
- else
+ } else {
err(udev, "error resolving group '%s': %m\n", group);
err(udev, "error resolving group '%s': %m\n", group);
+ }
break;
}
free(buf);
break;
}
free(buf);