diff options
author | Rob Landley <rob@landley.net> | 2010-01-05 12:17:05 -0600 |
---|---|---|
committer | Rob Landley <rob@landley.net> | 2010-01-05 12:17:05 -0600 |
commit | e0377fb294821a68112d4da09f836ac42e3d5956 (patch) | |
tree | 489d2a2b21393f7283870c2f21ed82b5818f1d82 /lib/lib.c | |
parent | 1e01cd1f48bff3fdd12f45bf1c3adfab821ee287 (diff) | |
download | toybox-e0377fb294821a68112d4da09f836ac42e3d5956.tar.gz |
Add TOYBOX_SUID.
Diffstat (limited to 'lib/lib.c')
-rw-r--r-- | lib/lib.c | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -369,6 +369,16 @@ void xmkpath(char *path, int mode) if (!*p) break; } } + +// setuid() can fail (for example, too many processes belonging to that user), +// which opens a security hole if the process continues as the original user. + +void xsetuid(uid_t uid) +{ + if (setuid(uid)) perror_exit("xsetuid"); +} + + // Find all file in a colon-separated path with access type "type" (generally // X_OK or R_OK). Returns a list of absolute paths to each file found, in // order. |