Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/netbsd-3]: src/lib/libpam/modules Pull up revision 1.4 (requested by luk...
details: https://anonhg.NetBSD.org/src/rev/ae33074956c7
branches: netbsd-3
changeset: 576548:ae33074956c7
user: tron <tron%NetBSD.org@localhost>
date: Mon Jul 11 11:19:34 2005 +0000
description:
Pull up revision 1.4 (requested by lukem in ticket #539):
check for pwd != in getpw*_r functions.
diffstat:
lib/libpam/modules/pam_chroot/pam_chroot.c | 7 ++++---
lib/libpam/modules/pam_ftpusers/pam_ftpusers.c | 7 ++++---
lib/libpam/modules/pam_radius/pam_radius.c | 7 ++++---
lib/libpam/modules/pam_rhosts/pam_rhosts.c | 11 ++++++-----
lib/libpam/modules/pam_securetty/pam_securetty.c | 7 ++++---
lib/libpam/modules/pam_self/pam_self.c | 7 ++++---
6 files changed, 26 insertions(+), 20 deletions(-)
diffs (180 lines):
diff -r f4c1a1aac7c5 -r ae33074956c7 lib/libpam/modules/pam_chroot/pam_chroot.c
--- a/lib/libpam/modules/pam_chroot/pam_chroot.c Mon Jul 11 11:19:26 2005 +0000
+++ b/lib/libpam/modules/pam_chroot/pam_chroot.c Mon Jul 11 11:19:34 2005 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: pam_chroot.c,v 1.2.2.1 2005/04/04 17:55:19 tron Exp $ */
+/* $NetBSD: pam_chroot.c,v 1.2.2.2 2005/07/11 11:19:34 tron Exp $ */
/*-
* Copyright (c) 2003 Networks Associates Technology, Inc.
@@ -38,7 +38,7 @@
#ifdef __FreeBSD__
__FBSDID("$FreeBSD: src/lib/libpam/modules/pam_chroot/pam_chroot.c,v 1.3 2003/04/30 00:40:24 des Exp $");
#else
-__RCSID("$NetBSD: pam_chroot.c,v 1.2.2.1 2005/04/04 17:55:19 tron Exp $");
+__RCSID("$NetBSD: pam_chroot.c,v 1.2.2.2 2005/07/11 11:19:34 tron Exp $");
#endif
#include <sys/param.h>
@@ -65,7 +65,8 @@
if (pam_get_user(pamh, &user, NULL) != PAM_SUCCESS ||
user == NULL ||
- getpwnam_r(user, &pwres, pwbuf, sizeof(pwbuf), &pwd) != 0)
+ getpwnam_r(user, &pwres, pwbuf, sizeof(pwbuf), &pwd) != 0 ||
+ pwd == NULL)
return (PAM_SESSION_ERR);
if (pwd->pw_uid == 0 && !openpam_get_option(pamh, "also_root"))
return (PAM_SUCCESS);
diff -r f4c1a1aac7c5 -r ae33074956c7 lib/libpam/modules/pam_ftpusers/pam_ftpusers.c
--- a/lib/libpam/modules/pam_ftpusers/pam_ftpusers.c Mon Jul 11 11:19:26 2005 +0000
+++ b/lib/libpam/modules/pam_ftpusers/pam_ftpusers.c Mon Jul 11 11:19:34 2005 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: pam_ftpusers.c,v 1.2.2.1 2005/04/04 17:55:19 tron Exp $ */
+/* $NetBSD: pam_ftpusers.c,v 1.2.2.2 2005/07/11 11:19:34 tron Exp $ */
/*-
* Copyright (c) 2001 Networks Associates Technology, Inc.
@@ -38,7 +38,7 @@
#ifdef __FreeBSD__
__FBSDID("$FreeBSD: src/lib/libpam/modules/pam_ftpusers/pam_ftpusers.c,v 1.1 2002/05/08 00:30:10 des Exp $");
#else
-__RCSID("$NetBSD: pam_ftpusers.c,v 1.2.2.1 2005/04/04 17:55:19 tron Exp $");
+__RCSID("$NetBSD: pam_ftpusers.c,v 1.2.2.2 2005/07/11 11:19:34 tron Exp $");
#endif
#include <ctype.h>
@@ -73,7 +73,8 @@
if (pam_err != PAM_SUCCESS)
return (pam_err);
if (user == NULL ||
- getpwnam_r(user, &pwres, pwbuf, sizeof(pwbuf), &pwd) != 0)
+ getpwnam_r(user, &pwres, pwbuf, sizeof(pwbuf), &pwd) != 0 ||
+ pwd == NULL)
return (PAM_SERVICE_ERR);
found = 0;
diff -r f4c1a1aac7c5 -r ae33074956c7 lib/libpam/modules/pam_radius/pam_radius.c
--- a/lib/libpam/modules/pam_radius/pam_radius.c Mon Jul 11 11:19:26 2005 +0000
+++ b/lib/libpam/modules/pam_radius/pam_radius.c Mon Jul 11 11:19:34 2005 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: pam_radius.c,v 1.2.2.1 2005/04/04 17:55:19 tron Exp $ */
+/* $NetBSD: pam_radius.c,v 1.2.2.2 2005/07/11 11:19:34 tron Exp $ */
/*-
* Copyright 1998 Juniper Networks, Inc.
@@ -40,7 +40,7 @@
#ifdef __FreeBSD__
__FBSDID("$FreeBSD: src/lib/libpam/modules/pam_radius/pam_radius.c,v 1.22 2004/06/25 12:32:45 kan Exp $");
#else
-__RCSID("$NetBSD: pam_radius.c,v 1.2.2.1 2005/04/04 17:55:19 tron Exp $");
+__RCSID("$NetBSD: pam_radius.c,v 1.2.2.2 2005/07/11 11:19:34 tron Exp $");
#endif
#include <sys/param.h>
@@ -323,7 +323,8 @@
if (retval != PAM_SUCCESS)
return (retval);
if (getpwnam_r(tmpuser, &pwres, pwbuf,
- sizeof(pwbuf), &pwd) != 0) {
+ sizeof(pwbuf), &pwd) != 0 ||
+ pwd == NULL) {
pam_set_item(pamh, PAM_USER,
template_user);
PAM_LOG("Using template user");
diff -r f4c1a1aac7c5 -r ae33074956c7 lib/libpam/modules/pam_rhosts/pam_rhosts.c
--- a/lib/libpam/modules/pam_rhosts/pam_rhosts.c Mon Jul 11 11:19:26 2005 +0000
+++ b/lib/libpam/modules/pam_rhosts/pam_rhosts.c Mon Jul 11 11:19:34 2005 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: pam_rhosts.c,v 1.2.2.1 2005/04/04 17:55:19 tron Exp $ */
+/* $NetBSD: pam_rhosts.c,v 1.2.2.2 2005/07/11 11:19:34 tron Exp $ */
/*-
* Copyright (c) 2002 Danny Braniss
@@ -40,7 +40,7 @@
#ifdef __FreeBSD__
__FBSDID("$FreeBSD: src/lib/libpam/modules/pam_rhosts/pam_rhosts.c,v 1.3 2003/12/11 13:55:16 des Exp $");
#else
-__RCSID("$NetBSD: pam_rhosts.c,v 1.2.2.1 2005/04/04 17:55:19 tron Exp $");
+__RCSID("$NetBSD: pam_rhosts.c,v 1.2.2.2 2005/07/11 11:19:34 tron Exp $");
#endif
#include <pwd.h>
@@ -59,7 +59,7 @@
pam_sm_authenticate(pam_handle_t *pamh, int flags __unused,
int argc __unused, const char *argv[] __unused)
{
- struct passwd *pw, pwres;
+ struct passwd *pwd, pwres;
const char *user;
const void *ruser, *rhost;
int err, superuser;
@@ -69,9 +69,10 @@
if (err != PAM_SUCCESS)
return (err);
- if (getpwnam_r(user, &pwres, pwbuf, sizeof(pwbuf), &pw) != 0)
+ if (getpwnam_r(user, &pwres, pwbuf, sizeof(pwbuf), &pwd) != 0 ||
+ pwd == NULL)
return (PAM_USER_UNKNOWN);
- if (pw->pw_uid == 0 &&
+ if (pwd->pw_uid == 0 &&
openpam_get_option(pamh, OPT_ALLOW_ROOT) == NULL)
return (PAM_AUTH_ERR);
diff -r f4c1a1aac7c5 -r ae33074956c7 lib/libpam/modules/pam_securetty/pam_securetty.c
--- a/lib/libpam/modules/pam_securetty/pam_securetty.c Mon Jul 11 11:19:26 2005 +0000
+++ b/lib/libpam/modules/pam_securetty/pam_securetty.c Mon Jul 11 11:19:34 2005 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: pam_securetty.c,v 1.2.2.1 2005/04/04 17:55:20 tron Exp $ */
+/* $NetBSD: pam_securetty.c,v 1.2.2.2 2005/07/11 11:19:34 tron Exp $ */
/*-
* Copyright (c) 2001 Mark R V Murray
@@ -40,7 +40,7 @@
#ifdef __FreeBSD__
__FBSDID("$FreeBSD: src/lib/libpam/modules/pam_securetty/pam_securetty.c,v 1.13 2004/02/10 10:13:21 des Exp $");
#else
-__RCSID("$NetBSD: pam_securetty.c,v 1.2.2.1 2005/04/04 17:55:20 tron Exp $");
+__RCSID("$NetBSD: pam_securetty.c,v 1.2.2.2 2005/07/11 11:19:34 tron Exp $");
#endif
#include <sys/types.h>
@@ -72,7 +72,8 @@
if (pam_err != PAM_SUCCESS)
return (pam_err);
if (user == NULL ||
- getpwnam_r(user, &pwres, pwbuf, sizeof(pwbuf), &pwd) != 0)
+ getpwnam_r(user, &pwres, pwbuf, sizeof(pwbuf), &pwd) != 0 ||
+ pwd == NULL)
return (PAM_SERVICE_ERR);
PAM_LOG("Got user: %s", user);
diff -r f4c1a1aac7c5 -r ae33074956c7 lib/libpam/modules/pam_self/pam_self.c
--- a/lib/libpam/modules/pam_self/pam_self.c Mon Jul 11 11:19:26 2005 +0000
+++ b/lib/libpam/modules/pam_self/pam_self.c Mon Jul 11 11:19:34 2005 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: pam_self.c,v 1.2.2.1 2005/04/04 17:55:20 tron Exp $ */
+/* $NetBSD: pam_self.c,v 1.2.2.2 2005/07/11 11:19:34 tron Exp $ */
/*-
* Copyright (c) 2001 Mark R V Murray
@@ -40,7 +40,7 @@
#ifdef __FreeBSD__
__FBSDID("$FreeBSD: src/lib/libpam/modules/pam_self/pam_self.c,v 1.9 2002/04/12 22:27:24 des Exp $");
#else
-__RCSID("$NetBSD: pam_self.c,v 1.2.2.1 2005/04/04 17:55:20 tron Exp $");
+__RCSID("$NetBSD: pam_self.c,v 1.2.2.2 2005/07/11 11:19:34 tron Exp $");
#endif
#define _BSD_SOURCE
@@ -71,7 +71,8 @@
if (pam_err != PAM_SUCCESS)
return (pam_err);
if (luser == NULL ||
- getpwnam_r(luser, &pwres, pwbuf, sizeof(pwbuf), &pwd) != 0)
+ getpwnam_r(luser, &pwres, pwbuf, sizeof(pwbuf), &pwd) != 0 ||
+ pwd == NULL)
return (PAM_AUTH_ERR);
uid = getuid();
Home |
Main Index |
Thread Index |
Old Index