From 42e4da795736953d9356d5cce14e57f180056a14 Mon Sep 17 00:00:00 2001 From: rwx403335 Date: Wed, 10 Nov 2021 17:23:58 +0800 Subject: [PATCH] update patch --- 0001-bugfix-cannot-open-database-file.patch | 93 ++++++++++----------- pam.spec | 5 +- 2 files changed, 48 insertions(+), 50 deletions(-) diff --git a/0001-bugfix-cannot-open-database-file.patch b/0001-bugfix-cannot-open-database-file.patch index 33527bf..8e6265d 100644 --- a/0001-bugfix-cannot-open-database-file.patch +++ b/0001-bugfix-cannot-open-database-file.patch @@ -1,49 +1,44 @@ -From 3bd5a1244a35974c8a0e21a9ac866cb5935f662e Mon Sep 17 00:00:00 2001 -From: yaqiang chen -Date: Wed, 15 Sep 2021 10:05:49 +0800 -Subject: [PATCH] bugfix cannot open database file - ---- - modules/pam_userdb/pam_userdb.c | 23 ++++++++++++++++++++--- - 1 file changed, 20 insertions(+), 3 deletions(-) - -diff --git a/modules/pam_userdb/pam_userdb.c b/modules/pam_userdb/pam_userdb.c -index dc2ca23..a9992a7 100644 ---- a/modules/pam_userdb/pam_userdb.c -+++ b/modules/pam_userdb/pam_userdb.c -@@ -147,13 +147,30 @@ user_lookup (pam_handle_t *pamh, const char *database, const char *cryptmode, - { - DBM *dbm; - datum key, data; -+ int retval; - -+ /* Init the DB file. */ -+ retval = dbminit(database); -+ if (retval) { -+ pam_syslog(pamh, LOG_ERR, -+ "user_lookup: could not init database `%s': %m", database); -+ return -2; -+ } - /* Open the DB file. */ - dbm = dbm_open(database, O_RDONLY, 0644); - if (dbm == NULL) { -- pam_syslog(pamh, LOG_ERR, -- "user_lookup: could not open database `%s': %m", database); -- return -2; -+ retval = dbminit(database); -+ if (retval){ -+ pam_syslog(pamh, LOG_ERR, -+ "user_lookup: could not re-init database `%s': %m", database); -+ } else { -+ dbm = dbm_open(database, O_RDONLY, 0644); -+ if(dbm == NULL) { -+ pam_syslog(pamh, LOG_ERR, -+ "user_lookup: could not open database `%s': %m", database); -+ return -2; -+ } -+ } - } - - /* dump out the database contents for debugging */ --- -1.8.3.1 \ No newline at end of file +From 3bd5a1244a35974c8a0e21a9ac866cb5935f662e Mon Sep 17 00:00:00 2001 +From: yaqiang chen +Date: Wed, 15 Sep 2021 10:05:49 +0800 +Subject: [PATCH] bugfix cannot open database file + +--- + modules/pam_userdb/pam_userdb.c | 17 ++++++++++++++--- + 1 file changed, 14 insertions(+), 3 deletions(-) + +diff --git a/modules/pam_userdb/pam_userdb.c b/modules/pam_userdb/pam_userdb.c +index dc2ca23..a9992a7 100644 +--- a/modules/pam_userdb/pam_userdb.c ++++ b/modules/pam_userdb/pam_userdb.c +@@ -147,13 +147,24 @@ user_lookup (pam_handle_t *pamh, const char *database, const char *cryptmode, + { + DBM *dbm; + datum key, data; ++ int retval; + + /* Open the DB file. */ + dbm = dbm_open(database, O_RDONLY, 0644); + if (dbm == NULL) { +- pam_syslog(pamh, LOG_ERR, +- "user_lookup: could not open database `%s': %m", database); +- return -2; ++ retval = dbminit(database); ++ if (retval){ ++ pam_syslog(pamh, LOG_ERR, ++ "user_lookup: could not init database `%s': %m", database); ++ return -2; ++ } else { ++ dbm = dbm_open(database, O_RDONLY, 0644); ++ if (dbm == NULL) { ++ pam_syslog(pamh, LOG_ERR, ++ "user_lookup: could not open database `%s': %m", database); ++ return -2; ++ } ++ } + } + + /* dump out the database contents for debugging */ +-- +1.8.3.1 + diff --git a/pam.spec b/pam.spec index 36b36cc..2c7abbb 100644 --- a/pam.spec +++ b/pam.spec @@ -4,7 +4,7 @@ %define _pamconfdir %{_sysconfdir}/pam.d Name: pam Version: 1.5.1 -Release: 4 +Release: 5 Summary: Pluggable Authentication Modules for Linux License: BSD and GPLv2+ URL: http://www.linux-pam.org/ @@ -170,6 +170,9 @@ fi %changelog +* Wed Nov 10 2021 renhongxun - 1.5.1-5 +- cleancode + * Wed Sep 15 2021 chenyaqiang - 1.5.1-4 - bugfix with cannot open database file