svn commit: r273931 - in stable: 10/lib/libutil 7/lib/libutil 8/lib/libutil 9/lib/libutil
Dimitry Andric
dim at FreeBSD.org
Sat Nov 1 13:45:04 UTC 2014
Author: dim
Date: Sat Nov 1 13:45:01 2014
New Revision: 273931
URL: https://svnweb.freebsd.org/changeset/base/273931
Log:
MFC r273837:
Fix a clang 3.5 warning about abs(3) being given an argument of type
quad_t in setusercontext(). While here, sanitize the clamping of the
priority value, and use the correct type for the return value of
login_getcapnum().
Reviewed by: kib
Modified:
stable/7/lib/libutil/login_class.c
Directory Properties:
stable/7/lib/libutil/ (props changed)
Changes in other areas also in this revision:
Modified:
stable/10/lib/libutil/login_class.c
stable/8/lib/libutil/login_class.c
stable/9/lib/libutil/login_class.c
Directory Properties:
stable/10/ (props changed)
stable/8/lib/libutil/ (props changed)
stable/9/lib/libutil/ (props changed)
Modified: stable/7/lib/libutil/login_class.c
==============================================================================
--- stable/7/lib/libutil/login_class.c Sat Nov 1 11:19:50 2014 (r273930)
+++ stable/7/lib/libutil/login_class.c Sat Nov 1 13:45:01 2014 (r273931)
@@ -420,7 +420,7 @@ setlogincontext(login_cap_t *lc, const s
int
setusercontext(login_cap_t *lc, const struct passwd *pwd, uid_t uid, unsigned int flags)
{
- quad_t p;
+ rlim_t p;
mode_t mymask;
login_cap_t *llc = NULL;
struct rtprio rtp;
@@ -444,16 +444,16 @@ setusercontext(login_cap_t *lc, const st
if (p > PRIO_MAX) {
rtp.type = RTP_PRIO_IDLE;
- rtp.prio = p - PRIO_MAX - 1;
- p = (rtp.prio > RTP_PRIO_MAX) ? 31 : p;
+ p -= PRIO_MAX + 1;
+ rtp.prio = p > RTP_PRIO_MAX ? RTP_PRIO_MAX : p;
if (rtprio(RTP_SET, 0, &rtp))
syslog(LOG_WARNING, "rtprio '%s' (%s): %m",
pwd ? pwd->pw_name : "-",
lc ? lc->lc_class : LOGIN_DEFCLASS);
} else if (p < PRIO_MIN) {
rtp.type = RTP_PRIO_REALTIME;
- rtp.prio = abs(p - PRIO_MIN + RTP_PRIO_MAX);
- p = (rtp.prio > RTP_PRIO_MAX) ? 1 : p;
+ p -= PRIO_MIN - RTP_PRIO_MAX;
+ rtp.prio = p < RTP_PRIO_MIN ? RTP_PRIO_MIN : p;
if (rtprio(RTP_SET, 0, &rtp))
syslog(LOG_WARNING, "rtprio '%s' (%s): %m",
pwd ? pwd->pw_name : "-",
More information about the svn-src-stable-7
mailing list