e30408c5d9
- report failed logins from btmp in pam_lastlog - allow larger groups in modutil functions - fix leaked file descriptor in pam_tally
76 lines
3.0 KiB
Diff
76 lines
3.0 KiB
Diff
diff -up Linux-PAM-1.0.2/libpam/pam_modutil_getpwnam.c.many-groups Linux-PAM-1.0.2/libpam/pam_modutil_getpwnam.c
|
|
--- Linux-PAM-1.0.2/libpam/pam_modutil_getpwnam.c.many-groups 2007-08-30 06:00:39.000000000 +0200
|
|
+++ Linux-PAM-1.0.2/libpam/pam_modutil_getpwnam.c 2008-09-23 15:59:46.000000000 +0200
|
|
@@ -104,7 +104,7 @@ pam_modutil_getpwnam(pam_handle_t *pamh,
|
|
break;
|
|
}
|
|
|
|
- length <<= 2;
|
|
+ length <<= PWD_LENGTH_SHIFT;
|
|
|
|
} while (length < PWD_ABSURD_PWD_LENGTH);
|
|
|
|
diff -up Linux-PAM-1.0.2/libpam/pam_modutil_getpwuid.c.many-groups Linux-PAM-1.0.2/libpam/pam_modutil_getpwuid.c
|
|
--- Linux-PAM-1.0.2/libpam/pam_modutil_getpwuid.c.many-groups 2007-08-30 06:00:39.000000000 +0200
|
|
+++ Linux-PAM-1.0.2/libpam/pam_modutil_getpwuid.c 2008-09-23 15:59:59.000000000 +0200
|
|
@@ -115,7 +115,7 @@ pam_modutil_getpwuid(pam_handle_t *pamh,
|
|
break;
|
|
}
|
|
|
|
- length <<= 2;
|
|
+ length <<= PWD_LENGTH_SHIFT;
|
|
|
|
} while (length < PWD_ABSURD_PWD_LENGTH);
|
|
|
|
diff -up Linux-PAM-1.0.2/libpam/pam_modutil_getgrnam.c.many-groups Linux-PAM-1.0.2/libpam/pam_modutil_getgrnam.c
|
|
--- Linux-PAM-1.0.2/libpam/pam_modutil_getgrnam.c.many-groups 2007-08-30 06:00:39.000000000 +0200
|
|
+++ Linux-PAM-1.0.2/libpam/pam_modutil_getgrnam.c 2008-09-23 15:59:29.000000000 +0200
|
|
@@ -104,7 +104,7 @@ pam_modutil_getgrnam(pam_handle_t *pamh,
|
|
break;
|
|
}
|
|
|
|
- length <<= 2;
|
|
+ length <<= PWD_LENGTH_SHIFT;
|
|
|
|
} while (length < PWD_ABSURD_PWD_LENGTH);
|
|
|
|
diff -up Linux-PAM-1.0.2/libpam/pam_modutil_getspnam.c.many-groups Linux-PAM-1.0.2/libpam/pam_modutil_getspnam.c
|
|
--- Linux-PAM-1.0.2/libpam/pam_modutil_getspnam.c.many-groups 2007-08-30 06:00:39.000000000 +0200
|
|
+++ Linux-PAM-1.0.2/libpam/pam_modutil_getspnam.c 2008-09-23 16:00:11.000000000 +0200
|
|
@@ -104,7 +104,7 @@ pam_modutil_getspnam(pam_handle_t *pamh,
|
|
break;
|
|
}
|
|
|
|
- length <<= 2;
|
|
+ length <<= PWD_LENGTH_SHIFT;
|
|
|
|
} while (length < PWD_ABSURD_PWD_LENGTH);
|
|
|
|
diff -up Linux-PAM-1.0.2/libpam/pam_modutil_getgrgid.c.many-groups Linux-PAM-1.0.2/libpam/pam_modutil_getgrgid.c
|
|
--- Linux-PAM-1.0.2/libpam/pam_modutil_getgrgid.c.many-groups 2007-08-30 06:00:39.000000000 +0200
|
|
+++ Linux-PAM-1.0.2/libpam/pam_modutil_getgrgid.c 2008-09-23 15:59:07.000000000 +0200
|
|
@@ -115,7 +115,7 @@ pam_modutil_getgrgid(pam_handle_t *pamh,
|
|
break;
|
|
}
|
|
|
|
- length <<= 2;
|
|
+ length <<= PWD_LENGTH_SHIFT;
|
|
|
|
} while (length < PWD_ABSURD_PWD_LENGTH);
|
|
|
|
diff -up Linux-PAM-1.0.2/libpam/pam_modutil_private.h.many-groups Linux-PAM-1.0.2/libpam/pam_modutil_private.h
|
|
--- Linux-PAM-1.0.2/libpam/pam_modutil_private.h.many-groups 2005-09-21 12:00:58.000000000 +0200
|
|
+++ Linux-PAM-1.0.2/libpam/pam_modutil_private.h 2008-09-23 16:00:30.000000000 +0200
|
|
@@ -13,8 +13,9 @@
|
|
#include <security/pam_modules.h>
|
|
#include <security/pam_modutil.h>
|
|
|
|
-#define PWD_INITIAL_LENGTH 0x100
|
|
-#define PWD_ABSURD_PWD_LENGTH 0x8000
|
|
+#define PWD_INITIAL_LENGTH 0x400
|
|
+#define PWD_ABSURD_PWD_LENGTH 0x40001
|
|
+#define PWD_LENGTH_SHIFT 4 /* 2^4 == 16 */
|
|
|
|
extern void
|
|
pam_modutil_cleanup(pam_handle_t *pamh, void *data,
|