home | help
PAM_EXEC(8)		     System Manager's Manual		     PAM_EXEC(8)

NAME
     pam_exec -- Exec PAM module

SYNOPSIS
     [service-name] module-type control-flag pam_exec [arguments]

DESCRIPTION
     The  exec	service  module  for  PAM executes the program designated by its
     first argument if no options are specified, with its remaining arguments as
     command-line arguments.  If options are specified, the program and its  ar-
     guments  follow the last option or -- if the program name conflicts with an
     option name.

     The following options may be passed before the program and its arguments:

     return_prog_exit_status  Use the program exit status as the return code  of
			      the  pam_sm_* function.  It must be a valid return
			      value for this function.

     -- 		      Stop options parsing; program  and  its  arguments
			      follow.

     The  child's environment is set to the current PAM environment list, as re-
     turned by pam_getenvlist(3).  In addition, the following PAM items are  ex-
     ported   as   environment	variables:  PAM_RHOST,	PAM_RUSER,  PAM_SERVICE,
     PAM_SM_FUNC, PAM_TTY and PAM_USER.

     The PAM_SM_FUNC variable contains the name of the PAM service module  func-
     tion being called.  It may be:
	   -   pam_sm_acct_mgmt
	   -   pam_sm_authenticate
	   -   pam_sm_chauthtok
	   -   pam_sm_close_session
	   -   pam_sm_open_session
	   -   pam_sm_setcred

     If  return_prog_exit_status  is not set (default), the PAM_SM_FUNC function
     returns PAM_SUCCESS if the program exit status is 0, PAM_PERM_DENIED other-
     wise.

     If return_prog_exit_status is set, the program exit  status  is  used.   It
     should  be  PAM_SUCCESS  or  one  of the error codes allowed by the calling
     PAM_SM_FUNC function.  The valid codes are documented in each function  man
     page.   If  the  exit status is not a valid return code, PAM_SERVICE_ERR is
     returned.	Each valid codes numerical value is available as an  environment
     variable  (eg. PAM_SUCESS, PAM_USER_UNKNOWN, etc).  This is useful in shell
     scripts for instance.

SEE ALSO
     pam_get_item(3), pam.conf(5), pam(8), pam_sm_acct_mgmt(8), pam_sm_authenti-
     cate(8),  pam_sm_chauthtok(8),  pam_sm_close_session(8),	pam_sm_open_ses-
     sion(8), pam_sm_setcred(8)

AUTHORS
     The  pam_exec  module  and  this manual page were developed for the FreeBSD
     Project by ThinkSec AS and NAI Labs, the Security Research Division of Net-
     work  Associates,	Inc.  under   DARPA/SPAWAR   contract	N66001-01-C-8035
     ("CBOSS"), as part of the DARPA CHATS research program.

FreeBSD 8.4-stable		February 8, 2012		     PAM_EXEC(8)

home | help