Commit Graph
20 Commits
Author SHA1 Message Date
Szabolcs Nagy 571744447c include cleanups: remove unused headers and add feature test macros 2013-12-12 05:09:18 +00:00
Michael ForneyandRich Felker 7e771e62e7 shadow: Implement fgetspent 2013-11-24 21:04:53 -05:00
Michael ForneyandRich Felker b3646b30d6 shadow: Move spent parsing to internal function 2013-11-24 20:57:10 -05:00
Michael ForneyandRich Felker 22f29bfebe shadow: Implement putspent 2013-11-24 09:36:28 -05:00
Michael ForneyandRich Felker 3fd1acbfee putgrent: Add missing newline 2013-11-23 16:20:56 -05:00
Michael ForneyandRich Felker a3b98a11a9 putgrent: Stop writing output on first failure
This way, if an fprintf fails, we get an incomplete group entry rather
than a corrupted one.
2013-11-23 16:20:51 -05:00
Rich Felker 23b8e3bc95 fix off-by-one error in getgrnam_r and getgrgid_r, clobbering gr_name
bug report and patch by Michael Forney. the terminating null pointer
at the end of the gr_mem array was overwriting the beginning of the
string data, causing the gr_name member to always be a zero-length
string.
2013-09-29 02:52:33 -04:00
Rich Felker 648c3b4e18 change uid_t, gid_t, and id_t to unsigned types
this change is both to fix one of the remaining type (and thus C++
ABI) mismatches with glibc/LSB and to allow use of the full range of
uid and gid values, if so desired.

passwd/group access functions were not prepared to deal with unsigned
values, so they too have been fixed with this commit.
2013-07-19 01:34:28 -04:00
Rich Felker ddfb267b0e add put*ent functions for passwd/group files and similar for shadow
since shadow does not yet support enumeration (getspent), the
corresponding FILE-based get and put versions are also subbed out for
now. this is partly out of laziness and partly because it's not clear
how they should work in the presence of TCB shadow files. the stubs
should make it possible to compile some software that expects them to
exist, but such software still may not work properly.
2013-04-04 19:23:47 -04:00
Rich Felker cac872957e add fgetgrent function
based on patch by Isaac Dunham, moved to its own file to avoid
increasing bss on static linked programs not using this nonstandard
function but using the standard getgrent function, and vice versa.
2013-02-17 13:21:56 -05:00
Rich Felker d712dd396d more close-on-exec fixes, mostly using new "e" flag to fopen 2012-09-29 18:14:46 -04:00
Rich Felker 4948a24df2 make passwd/group functions safe against cancellation in stdio
these changes are a prerequisite to making stdio cancellable.
2012-02-01 23:51:19 -05:00
Rich Felker 5e9314ff03 add fgetpwent (nonstandard function)
based on patch by Jeremy Huntwork
2012-01-29 11:54:18 -05:00
Rich Felker aef84ca7ec fix clobbering of errno in get(pw|gr)([ug]id|nam) by fclose 2011-09-27 16:45:29 -04:00
Rich Felker 0d4d94efd5 protect against/handle cancellation reading shadow passwords 2011-09-21 23:57:51 -04:00
Rich Felker fb62ae74d0 fix buffer overrun in getgrent code when there are no group members 2011-06-30 08:11:06 -04:00
Rich Felker c19a6be5a1 it's called getgrgid_r, not getgruid_r... 2011-06-08 16:47:08 -04:00
Rich Felker 18bca57510 shadow password fixes: empty fields should read as -1 not 0 2011-04-20 19:05:59 -04:00
Rich Felker 976f42d1f1 guard against hard links to non-ordinary-files when reading tcb shadow 2011-02-14 21:15:07 -05:00
Rich Felker 0b44a0315b initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00