/**************************************************************************/ /* */ /* Licensed Materials - Property of IBM */ /* */ /* "Restricted Materials of IBM" */ /* */ /* IBM Informix Dynamic Server */ /* (c) Copyright IBM Corporation 1996, 2002 All rights reserved. */ /* */ /**************************************************************************/ /* * Copyright (c) 1992-2005, by Sun Microsystems, Inc. * All rights reserved. */ #ifndef IFXPAM_APPL_H_INCL #define IFXPAM_APPL_H_INCL #include "pam_defs.h" struct pam_message { int msg_style; char *msg; }; struct pam_response { char *resp; int resp_retcode; }; struct pam_conv { int (*conv)(int, struct pam_message **, struct pam_response **, void *); void *appdata_ptr; }; typedef struct pam_handle pam_handle_t; /* * Function prototypes */ extern int pam_start( const char *service_name, const char *user, const struct pam_conv *pam_conv, pam_handle_t **pamh); extern int pam_end( pam_handle_t *pamh, int status); extern int pam_putenv( pam_handle_t *pamh, const char *name_value); extern char * pam_getenv( pam_handle_t *pamh, const char *name); extern int pam_set_item( pam_handle_t *pamh, int item_type, const void *item); extern int pam_get_item( const pam_handle_t *pamh, int item_type, void **item); extern int pam_set_data(pam_handle_t *pamh, const char *module_data_name, void *data, void (*cleanup)(pam_handle_t *pamh, void *data, int error_status)); extern int pam_get_data(pam_handle_t *pamh, const char *module_data_name, const void **datap); extern int pam_authenticate( pam_handle_t *pamh, int flags); extern int pam_acct_mgmt( pam_handle_t *pamh, int flags); extern int pam_open_session( pam_handle_t *pamh, int flags); extern int pam_close_session( pam_handle_t *pamh, int flags); extern int pam_setcred( pam_handle_t *pamh, int flags); extern int pam_chauthtok( pam_handle_t *pamh, int flags); extern const char * pam_strerror( pam_handle_t *pamh, int errnum); #endif /* IFXPAM_APPL_H_INCL */