PAM_START - Online Linux Manual PageSection : 3
Updated : 09/03/2021
Source : Linux-PAM Manual
Note : Linux-PAM Manual

NAMEpam_start, pam_start_confdir − initialization of PAM transaction

SYNOPSIS#include <security/pam_appl​.h>int pam_start(const char *service_name, const char *user, const struct pam_conv *pam_conversation, pam_handle_t **pamh); int pam_start_confdir(const char *service_name, const char *user, const struct pam_conv *pam_conversation, const char *confdir, pam_handle_t **pamh);

DESCRIPTIONThe pam_start function creates the PAM context and initiates the PAM transaction​. It is the first of the PAM functions that needs to be called by an application​. The transaction state is contained entirely within the structure identified by this handle, so it is possible to have multiple transactions in parallel​. But it is not possible to use the same handle for different transactions, a new one is needed for every new context​. The service_name argument specifies the name of the service to apply and will be stored as PAM_SERVICE item in the new context​. The policy for the service will be read from the file /etc/pam​.d/service_name or, if that file does not exist, from /etc/pam​.conf​. The user argument can specify the name of the target user and will be stored as PAM_USER item​. If the argument is NULL, the module has to ask for this item if necessary​. The pam_conversation argument points to a struct pam_conv describing the conversation function to use​. An application must provide this for direct communication between a loaded module and the application​. Following a successful return (PAM_SUCCESS) the contents of pamh is a handle that contains the PAM context for successive calls to the PAM functions​. In an error case is the content of pamh undefined​. The pam_handle_t is a blind structure and the application should not attempt to probe it directly for information​. Instead the PAM library provides the functions pam_set_item(3) and pam_get_item(3)​. The PAM handle cannot be used for multiple authentications at the same time as long as pam_end was not called on it before​. The pam_start_confdir function behaves like the pam_start function but it also allows setting confdir argument with a path to a directory to override the default (/etc/pam​.d) path for service policy files​. If the confdir is NULL, the function works exactly the same as pam_start​.

RETURN VALUESPAM_ABORT General failure​. PAM_BUF_ERR Memory buffer error​. PAM_SUCCESS Transaction was successfully started​. PAM_SYSTEM_ERR System error, for example a NULL pointer was submitted instead of a pointer to data​.

SEE ALSOpam_get_data(3), pam_set_data(3), pam_end(3), pam_strerror(3)
0
Johanes Gumabo
Data Size   :   9,554 byte
man-pam_start.3Build   :   2024-12-29, 07:25   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   4 / 259,896
Visitor ID   :     :  
Visitor IP   :   3.139.233.121   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   1000   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.29
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36

Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.