about summary refs log tree commit diff
path: root/nss/rewrite_field.c
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright dates with scripts/update-copyrights.Joseph Myers2016-01-041-1/+1
|
* Fix i386 build after put*ent hardening changes.Joseph Myers2015-10-021-0/+1
| | | | | | | | | | | | | | | | The recent put*ent hardening changes broke the build for i386. i386 defines internal_function to __attribute__ ((regparm (3), stdcall)), which affects type compatibility, so requiring internal_function to be used consistently on declarations and definitions. This patch adds internal_function to the definitions of the new functions using it on their declarations. Tested for i386 that this fixes the build. * nss/rewrite_field.c (__nss_rewrite_field): Use internal_function. * nss/valid_field.c (__nss_valid_field): Likewise. * nss/valid_list_field.c (__nss_valid_list_field): Likewise.
* Harden putpwent, putgrent, putspent, putspent against injection [BZ #18724]Florian Weimer2015-10-021-0/+51
This prevents injection of ':' and '\n' into output functions which use the NSS files database syntax. Critical fields (user/group names and file system paths) are checked strictly. For backwards compatibility, the GECOS field is rewritten instead. The getent program is adjusted to use the put*ent functions in libc, instead of local copies. This changes the behavior of getent if user names start with '-' or '+'.