blob: 07578e649b8ad286737a06ca2630e6663625821f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
/* $Id$ */
#ifndef __PAMMISC_H
#define __PAMMISC_H
#include <security/pam_appl.h>
#include <security/pam_client.h>
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
/* include some useful macros */
#include <security/_pam_macros.h>
/* functions defined in pam_misc.* libraries */
extern int misc_conv(int num_msg, const struct pam_message **msgm,
struct pam_response **response, void *appdata_ptr);
#include <time.h>
extern time_t pam_misc_conv_warn_time; /* time that we should warn user */
extern time_t pam_misc_conv_die_time; /* cut-off time for input */
extern const char *pam_misc_conv_warn_line; /* warning notice */
extern const char *pam_misc_conv_die_line; /* cut-off remark */
extern int pam_misc_conv_died; /* 1 = cut-off time reached (0 not) */
extern int (*pam_binary_handler_fn)(void *appdata, pamc_bp_t *prompt_p);
extern void (*pam_binary_handler_free)(void *appdata, pamc_bp_t *prompt_p);
/*
* Environment helper functions
*/
/* transcribe given environment (to pam) */
extern int pam_misc_paste_env(pam_handle_t *pamh
, const char * const * user_env);
/* delete environment as obtained from (pam_getenvlist) */
extern char **pam_misc_drop_env(char **env);
/* provide something like the POSIX setenv function for the (Linux-)PAM
* environment. */
extern int pam_misc_setenv(pam_handle_t *pamh, const char *name
, const char *value, int readonly);
#ifdef __cplusplus
}
#endif /* def __cplusplus */
#endif /* ndef __PAMMISC_H */
|