summaryrefslogtreecommitdiffstats
path: root/usr.bin/su
diff options
context:
space:
mode:
authordwmalone <dwmalone@FreeBSD.org>2008-06-04 19:16:54 +0000
committerdwmalone <dwmalone@FreeBSD.org>2008-06-04 19:16:54 +0000
commitb04619598b581f3ddd03f3cbc7128c8dd124666a (patch)
treefb5b78210e58b9d42560ec95c247cf8ed244ff56 /usr.bin/su
parentf9729dd25fe8ea5ca6dfb0d42ae532615bb5cfb6 (diff)
downloadFreeBSD-src-b04619598b581f3ddd03f3cbc7128c8dd124666a.zip
FreeBSD-src-b04619598b581f3ddd03f3cbc7128c8dd124666a.tar.gz
Fix a strict aliasing warning - I think it is really telling us
that the way char * and void * pointers may not be stored in the same way.
Diffstat (limited to 'usr.bin/su')
-rw-r--r--usr.bin/su/su.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/usr.bin/su/su.c b/usr.bin/su/su.c
index 9f5ac44..36d8326 100644
--- a/usr.bin/su/su.c
+++ b/usr.bin/su/su.c
@@ -168,6 +168,7 @@ main(int argc, char *argv[])
u_int setwhat;
char *username, *class, shellbuf[MAXPATHLEN];
const char *p, *user, *shell, *mytty, **nargv;
+ const void *v;
struct sigaction sa, sa_int, sa_quit, sa_pipe;
int temp, fds[2];
#ifdef USE_BSM_AUDIT
@@ -316,9 +317,9 @@ main(int argc, char *argv[])
if (audit_submit(AUE_su, auid, 0, 0, "successful authentication"))
errx(1, "Permission denied");
#endif
- retcode = pam_get_item(pamh, PAM_USER, (const void **)&p);
+ retcode = pam_get_item(pamh, PAM_USER, &v);
if (retcode == PAM_SUCCESS)
- user = p;
+ user = v;
else
syslog(LOG_ERR, "pam_get_item(PAM_USER): %s",
pam_strerror(pamh, retcode));
OpenPOWER on IntegriCloud