aboutsummaryrefslogtreecommitdiff
path: root/modules/pam_pwhistory
diff options
context:
space:
mode:
authorChristian Göttsche <cgzones@googlemail.com>2023-08-07 12:46:40 +0200
committerDmitry V. Levin <ldv@strace.io>2023-08-07 10:46:40 +0000
commit43abfff43537092e20bc129f8208d082e73aff1a (patch)
tree0a474a6ecf44fd9b0090d75f0f528fb9b55e62ce /modules/pam_pwhistory
parent4020ca8c0fe3ac88eccc5c62aa8d8c63a4043578 (diff)
downloadpam-43abfff43537092e20bc129f8208d082e73aff1a.tar.gz
pam-43abfff43537092e20bc129f8208d082e73aff1a.tar.bz2
pam-43abfff43537092e20bc129f8208d082e73aff1a.zip
modules: cast to unsigned char for character handling function
Character handling functions, like isspace(3), expect a value representable as unsigned char or equal to EOF. Otherwise the behavior is undefined. See https://wiki.sei.cmu.edu/confluence/display/c/STR37-C.+Arguments+to+character-handling+functions+must+be+representable+as+an+unsigned+char
Diffstat (limited to 'modules/pam_pwhistory')
-rw-r--r--modules/pam_pwhistory/opasswd.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/modules/pam_pwhistory/opasswd.c b/modules/pam_pwhistory/opasswd.c
index fc610e2f..6e44ed2a 100644
--- a/modules/pam_pwhistory/opasswd.c
+++ b/modules/pam_pwhistory/opasswd.c
@@ -199,7 +199,7 @@ check_old_pass, const char *user, const char *newpass, const char *filename, int
tmp = strchr (cp, '#'); /* remove comments */
if (tmp)
*tmp = '\0';
- while (isspace ((int)*cp)) /* remove spaces and tabs */
+ while (isspace ((unsigned char)*cp)) /* remove spaces and tabs */
++cp;
if (*cp == '\0') /* ignore empty lines */
continue;
@@ -420,7 +420,7 @@ save_old_pass, const char *user, int howmany, const char *filename, int debug UN
tmp = strchr (cp, '#'); /* remove comments */
if (tmp)
*tmp = '\0';
- while (isspace ((int)*cp)) /* remove spaces and tabs */
+ while (isspace ((unsigned char)*cp)) /* remove spaces and tabs */
++cp;
if (*cp == '\0') /* ignore empty lines */
goto write_old_data;