diff options
author | Thorsten Kukuk <kukuk@thkukuk.de> | 2005-08-16 12:27:38 +0000 |
---|---|---|
committer | Thorsten Kukuk <kukuk@thkukuk.de> | 2005-08-16 12:27:38 +0000 |
commit | 23624ea6f78ec8acc167a2491c00998907fc76b1 (patch) | |
tree | a57b3caee23a167d442d7d4e0419c4689dfba565 /modules/pam_limits | |
parent | 2b5457bbf7352200f7bc77795adbbcfd47550855 (diff) | |
download | pam-23624ea6f78ec8acc167a2491c00998907fc76b1.tar.gz pam-23624ea6f78ec8acc167a2491c00998907fc76b1.tar.bz2 pam-23624ea6f78ec8acc167a2491c00998907fc76b1.zip |
Relevant BUGIDs: none
Purpose of commit: new feature
Commit summary:
---------------
Big "automake/autoconf/libtool" commit
Diffstat (limited to 'modules/pam_limits')
-rw-r--r-- | modules/pam_limits/Makefile | 37 | ||||
-rw-r--r-- | modules/pam_limits/Makefile.am | 21 | ||||
-rw-r--r-- | modules/pam_limits/pam_limits.c | 28 |
3 files changed, 35 insertions, 51 deletions
diff --git a/modules/pam_limits/Makefile b/modules/pam_limits/Makefile deleted file mode 100644 index 5aeb73ce..00000000 --- a/modules/pam_limits/Makefile +++ /dev/null @@ -1,37 +0,0 @@ -# -# $Id$ -# -# This Makefile controls a build process of $(TITLE) module for -# Linux-PAM. You should not modify this Makefile (unless you know -# what you are doing!). -# - -include ../../Make.Rules - -TITLE=pam_limits - -ifeq ($(OS),linux) - -LOCAL_CONFILE=./limits.skel -INSTALLED_CONFILE=$(SCONFIGD)/limits.conf - -DEFS=-DDEFAULT_CONF_FILE=\"$(INSTALLED_CONFILE)\" -CFLAGS += $(DEFS) - -MODULE_SIMPLE_INSTALL=bash -f ../install_conf "$(FAKEROOT)" "$(SCONFIGD)" "$(INSTALLED_CONFILE)" "$(TITLE)" "$(LOCAL_CONFILE)" -MODULE_SIMPLE_REMOVE=rm -f $(FAKEROOT)$(INSTALLED_CONFILE) -MODULE_SIMPLE_CLEAN=rm -f ./.ignore_age -ifeq ($(HAVE_LIBCAP),yes) -MODULE_SIMPLE_EXTRALIBS=-lcap -endif - -include ../Simple.Rules - -#else -#include ../dont_makefile -#endif -else - -include ../dont_makefile - -endif diff --git a/modules/pam_limits/Makefile.am b/modules/pam_limits/Makefile.am new file mode 100644 index 00000000..20bc2dfa --- /dev/null +++ b/modules/pam_limits/Makefile.am @@ -0,0 +1,21 @@ +# +# Copyright (c) 2005 Thorsten Kukuk <kukuk@suse.de> +# + +CLEANFILES = *~ + +EXTRA_DIST = README limits.conf + +securelibdir = $(SECUREDIR) +secureconfdir = $(SCONFIGDIR) + +AM_CFLAGS = -I$(top_srcdir)/libpam/include -I$(top_srcdir)/libpamc/include \ + -I$(top_srcdir)/modules/pammodutil/include/ \ + -DLIMITS_FILE=\"$(SCONFIGDIR)/limits.conf\" +AM_LDFLAGS = -avoid-version -module \ + -L$(top_builddir)/modules/pammodutil -lpammodutil \ + -L$(top_builddir)/libpam -lpam + +securelib_LTLIBRARIES = pam_limits.la + +secureconf_DATA = limits.conf diff --git a/modules/pam_limits/pam_limits.c b/modules/pam_limits/pam_limits.c index 0c245539..d21ad16a 100644 --- a/modules/pam_limits/pam_limits.c +++ b/modules/pam_limits/pam_limits.c @@ -139,13 +139,6 @@ static int _pam_parse(int argc, const char **argv, struct pam_limit_s *pl) } -/* limits stuff */ -#ifdef DEFAULT_CONF_FILE -# define LIMITS_FILE DEFAULT_CONF_FILE -#else -# define LIMITS_FILE "/etc/security/limits.conf" -#endif - #define LIMITED_OK 0 /* limit setting appeared to work */ #define LIMIT_ERR 1 /* error setting a limit */ #define LOGIN_ERR 2 /* too many logins err */ @@ -156,7 +149,7 @@ check_logins (pam_handle_t *pamh, const char *name, int limit, int ctrl, struct pam_limit_s *pl) { struct utmp *ut; - unsigned int count; + int count; if (ctrl & PAM_DEBUG_ARG) { _pam_log(LOG_DEBUG, "checking logins for '%s' (maximum of %d)\n", @@ -265,7 +258,7 @@ static void process_limit(int source, const char *lim_type, int limit_item; int limit_type = 0; int int_value = 0; - unsigned long rlimit_value = 0; + rlim_t rlimit_value = 0; char *endptr; const char *value_orig = lim_value; @@ -361,7 +354,11 @@ static void process_limit(int source, const char *lim_type, return; } } else { +#ifdef __USE_FILE_OFFSET64 + rlimit_value = strtoull (lim_value, &endptr, 10); +#else rlimit_value = strtoul (lim_value, &endptr, 10); +#endif if (rlimit_value == 0 && value_orig == endptr) { _pam_log(LOG_DEBUG, "wrong limit value '%s' for limit type '%s'", lim_value, lim_type); @@ -462,7 +459,8 @@ static int parse_config_file(pam_handle_t *pamh, const char *uname, int ctrl, char ltype[LINE_LENGTH]; char item[LINE_LENGTH]; char value[LINE_LENGTH]; - int i,j; + int i; + size_t j; char *tptr; tptr = buf; @@ -604,8 +602,9 @@ static int setup_limits(pam_handle_t *pamh, } /* now the session stuff */ -PAM_EXTERN int pam_sm_open_session(pam_handle_t *pamh, int flags, - int argc, const char **argv) +PAM_EXTERN int +pam_sm_open_session (pam_handle_t *pamh, int flags UNUSED, + int argc, const char **argv) { int retval; char *user_name; @@ -659,8 +658,9 @@ PAM_EXTERN int pam_sm_open_session(pam_handle_t *pamh, int flags, return PAM_SUCCESS; } -PAM_EXTERN int pam_sm_close_session(pam_handle_t *pamh, int flags, - int argc, const char **argv) +PAM_EXTERN int +pam_sm_close_session (pam_handle_t *pamh UNUSED, int flags UNUSED, + int argc UNUSED, const char **argv UNUSED) { /* nothing to do */ return PAM_SUCCESS; |