aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorTobias Stoeckmann <tobias@stoeckmann.org>2024-01-14 00:01:25 +0100
committerDmitry V. Levin <ldv@strace.io>2024-01-14 15:08:02 +0000
commit8328672289a4a275a9f78781bfb5118ba5a8873e (patch)
tree4ccb58115f89dd961ca49bc2feef4e6c74155dcf /modules
parent4130bc323f9ce99a97aa4566e170725415556060 (diff)
downloadpam-8328672289a4a275a9f78781bfb5118ba5a8873e.tar.gz
pam-8328672289a4a275a9f78781bfb5118ba5a8873e.tar.bz2
pam-8328672289a4a275a9f78781bfb5118ba5a8873e.zip
pam_succeed_if: empty strings are no number
If an empty string is encountered, do not treat it as 0. Instead, return PAM_SERVICE_ERR as specified in comment. Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
Diffstat (limited to 'modules')
-rw-r--r--modules/pam_succeed_if/pam_succeed_if.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/modules/pam_succeed_if/pam_succeed_if.c b/modules/pam_succeed_if/pam_succeed_if.c
index 522fc5cf..05be13da 100644
--- a/modules/pam_succeed_if/pam_succeed_if.c
+++ b/modules/pam_succeed_if/pam_succeed_if.c
@@ -70,13 +70,13 @@ evaluate_num(const pam_handle_t *pamh, const char *left,
errno = 0;
l = strtoll(left, &p, 0);
- if ((p == NULL) || (*p != '\0') || errno) {
+ if ((p == NULL) || (*p != '\0') || (p == left) || errno) {
pam_syslog(pamh, LOG_INFO, "\"%s\" is not a number", left);
ret = PAM_SERVICE_ERR;
}
r = strtoll(right, &p, 0);
- if ((p == NULL) || (*p != '\0') || errno) {
+ if ((p == NULL) || (*p != '\0') || (p == right) || errno) {
pam_syslog(pamh, LOG_INFO, "\"%s\" is not a number", right);
ret = PAM_SERVICE_ERR;
}