2 * OpenSSH PAM authentication support.
12 #include <pwd.h> /* For struct passwd */
14 void start_pam(struct passwd *pw);
15 void finish_pam(void);
16 int auth_pam_password(Authctxt *authctxt, const char *password);
17 char **fetch_pam_environment(void);
18 int do_pam_account(char *username, char *remote_user);
19 void do_pam_session(char *username, const char *ttyname);
20 void do_pam_setcred(void);
21 void print_pam_messages(void);
22 int pam_password_change_required(void);
23 void do_pam_chauthtok(void);
25 struct inverted_pam_cookie {
26 int state; /* Which state have we reached? */
27 pid_t pid; /* PID of child process */
29 /* Only valid in state STATE_CONV */
30 int num_msg; /* Number of messages */
31 struct pam_message **msg; /* Message structures */
32 struct pam_response **resp; /* Response structures */
33 struct inverted_pam_userdata *userdata;
35 void ipam_free_cookie(struct inverted_pam_cookie *cookie);
36 struct inverted_pam_cookie *ipam_start_auth(const char *, const char *);
39 #endif /* AUTH_PAM_H */