summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThorsten Kukuk <kukuk@thkukuk.de>2006-06-15 19:47:18 +0000
committerThorsten Kukuk <kukuk@thkukuk.de>2006-06-15 19:47:18 +0000
commit64574a19d8dab5fd71a3931e027201491d7c2ae9 (patch)
tree01eebe6ee8bf105dad7ed47d88c6e79d493728dc
parentdba6cd9abf46b7368c43e668513cf6734b3c41d1 (diff)
Relevant BUGIDs: 1428276
Purpose of commit: bugfix Commit summary: --------------- 2006-06-15 Thorsten Kukuk <kukuk@thkukuk.de> * modules/pam_group/pam_group.c (logic_field): Accept colon in tty name. [#1428276]. * modules/pam_time/pam_time.c (logic_field): Likewise.
-rw-r--r--ChangeLog4
-rw-r--r--modules/pam_group/pam_group.c3
-rw-r--r--modules/pam_time/pam_time.c3
3 files changed, 8 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 24f437c5..2283bddc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2006-06-15 Thorsten Kukuk <kukuk@thkukuk.de>
+ * modules/pam_group/pam_group.c (logic_field): Accept
+ colon in tty name. [#1428276].
+ * modules/pam_time/pam_time.c (logic_field): Likewise.
+
* configure.in: Add special exceptions for icc: different
compiler warnings, no PIE support.
diff --git a/modules/pam_group/pam_group.c b/modules/pam_group/pam_group.c
index 28527e38..80edee5a 100644
--- a/modules/pam_group/pam_group.c
+++ b/modules/pam_group/pam_group.c
@@ -280,7 +280,8 @@ logic_field (const pam_handle_t *pamh, const void *me,
if (next == VAL) {
if (c == '!')
not = !not;
- else if (isalpha(c) || c == '*') {
+ else if (isalpha(c) || c == '*' || isdigit(c) || c == '_'
+ || c == '-' || c == '.' || c == '/' || c == ':') {
right = not ^ agrees(pamh, me, x+at, l, rule);
if (oper == AND)
left &= right;
diff --git a/modules/pam_time/pam_time.c b/modules/pam_time/pam_time.c
index b983ef17..a3e94eb1 100644
--- a/modules/pam_time/pam_time.c
+++ b/modules/pam_time/pam_time.c
@@ -273,7 +273,8 @@ logic_field(pam_handle_t *pamh, const void *me, const char *x, int rule,
if (next == VAL) {
if (c == '!')
not = !not;
- else if (isalpha(c) || c == '*') {
+ else if (isalpha(c) || c == '*' || isdigit(c) || c == '_'
+ || c == '-' || c == '.' || c == '/' || c == ':') {
right = not ^ agrees(pamh, me, x+at, l, rule);
if (oper == AND)
left &= right;