[Pkg-shadow-commits] r2811 - in upstream/trunk: . src
Nicolas FRANÇOIS
nekral-guest at alioth.debian.org
Sun Apr 26 16:44:54 UTC 2009
Author: nekral-guest
Date: 2009-04-26 16:44:54 +0000 (Sun, 26 Apr 2009)
New Revision: 2811
Modified:
upstream/trunk/ChangeLog
upstream/trunk/src/passwd.c
Log:
* src/passwd.c: Do not freecon strings duplicated with strdup.
Also avoid allocation of memory.
* src/passwd.c: Use SYSLOG instead of syslog.
Modified: upstream/trunk/ChangeLog
===================================================================
--- upstream/trunk/ChangeLog 2009-04-26 12:52:05 UTC (rev 2810)
+++ upstream/trunk/ChangeLog 2009-04-26 16:44:54 UTC (rev 2811)
@@ -1,3 +1,9 @@
+2009-04-26 Nicolas François <nicolas.francois at centraliens.net>
+
+ * src/passwd.c: Do not freecon strings duplicated with strdup.
+ Also avoid allocation of memory.
+ * src/passwd.c: Use SYSLOG instead of syslog.
+
2009-04-25 Miroslav Kure <kurem at upcase.inf.upol.cz>
* po/cs.po: Updated to 352T7f8u
Modified: upstream/trunk/src/passwd.c
===================================================================
--- upstream/trunk/src/passwd.c 2009-04-26 12:52:05 UTC (rev 2810)
+++ upstream/trunk/src/passwd.c 2009-04-26 16:44:54 UTC (rev 2811)
@@ -991,17 +991,20 @@
changing a password without entering the old one */
if ((is_selinux_enabled() > 0) && (getuid() == 0) &&
(check_selinux_access (name, pw->pw_uid, PASSWD__PASSWD) != 0)) {
- security_context_t user_context;
- if (getprevcon(&user_context) < 0) {
- user_context = strdup("Unknown user context");
+ security_context_t user_context = NULL;
+ const char *user = "Unknown user context";
+ if (getprevcon (&user_context) == 0) {
+ user = user_context;
}
- syslog(LOG_ALERT,
- "%s is not authorized to change the password of %s",
- user_context, name);
+ SYSLOG ((LOG_ALERT,
+ "%s is not authorized to change the password of %s",
+ user, name));
fprintf(stderr,
_("%s: %s is not authorized to change the password of %s\n"),
- Prog, user_context, name);
- freecon(user_context);
+ Prog, user, name);
+ if (NULL != user_context) {
+ freecon (user_context);
+ }
exit(1);
}
#endif /* WITH_SELINUX */
More information about the Pkg-shadow-commits
mailing list