mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-09-12 13:23:39 +03:00
Better handling of getpwnam and getgrnam for dhcp-forwarde
git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@2868 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
d1f90bbe86
commit
0ddcf656dd
35
package/dhcp-forwarder/patches/01-getpwnmam_getgrnam.patch
Normal file
35
package/dhcp-forwarder/patches/01-getpwnmam_getgrnam.patch
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
diff -pur dhcp-forwarder-0.7-orig/src/wrappers.h dhcp-forwarder-0.7-patched/src/wrappers.h
|
||||||
|
--- dhcp-forwarder-0.7-orig/src/wrappers.h 2004-06-22 12:46:56.000000000 +0200
|
||||||
|
+++ dhcp-forwarder-0.7-patched/src/wrappers.h 2005-12-27 12:28:10.464289435 +0100
|
||||||
|
@@ -65,7 +65,14 @@ Egetgrnam(char const *name)
|
||||||
|
/*@*/
|
||||||
|
{
|
||||||
|
/*@observer@*/struct group const *res = getgrnam(name);
|
||||||
|
- FatalErrnoError(res==0, 1, "getgrnam()");
|
||||||
|
+
|
||||||
|
+ FatalErrnoError((res == NULL) && (errno != 0), 1, "getgrnam()");
|
||||||
|
+
|
||||||
|
+ if (res == NULL)
|
||||||
|
+ {
|
||||||
|
+ fprintf (stderr, "No such group: `%s'\n", name);
|
||||||
|
+ exit (1);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
/*@-freshtrans@*/
|
||||||
|
/*@-mustfreefresh@*/
|
||||||
|
@@ -80,7 +87,14 @@ Egetpwnam(char const *name)
|
||||||
|
/*@*/
|
||||||
|
{
|
||||||
|
struct passwd const *res = getpwnam(name);
|
||||||
|
- FatalErrnoError(res==0, 1, "getpwnam()");
|
||||||
|
+
|
||||||
|
+ FatalErrnoError((res == NULL) && (errno != 0), 1, "getpwnam()");
|
||||||
|
+
|
||||||
|
+ if (res == NULL)
|
||||||
|
+ {
|
||||||
|
+ fprintf (stderr, "No such user: `%s'\n", name);
|
||||||
|
+ exit (1);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
return res;
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user