1f388f5efSDag-Erling Smørgrav /* 2f388f5efSDag-Erling Smørgrav * Copyright (c) 2000 Damien Miller. All rights reserved. 3f388f5efSDag-Erling Smørgrav * 4f388f5efSDag-Erling Smørgrav * Redistribution and use in source and binary forms, with or without 5f388f5efSDag-Erling Smørgrav * modification, are permitted provided that the following conditions 6f388f5efSDag-Erling Smørgrav * are met: 7f388f5efSDag-Erling Smørgrav * 1. Redistributions of source code must retain the above copyright 8f388f5efSDag-Erling Smørgrav * notice, this list of conditions and the following disclaimer. 9f388f5efSDag-Erling Smørgrav * 2. Redistributions in binary form must reproduce the above copyright 10f388f5efSDag-Erling Smørgrav * notice, this list of conditions and the following disclaimer in the 11f388f5efSDag-Erling Smørgrav * documentation and/or other materials provided with the distribution. 12f388f5efSDag-Erling Smørgrav * 13f388f5efSDag-Erling Smørgrav * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 14f388f5efSDag-Erling Smørgrav * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 15f388f5efSDag-Erling Smørgrav * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 16f388f5efSDag-Erling Smørgrav * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 17f388f5efSDag-Erling Smørgrav * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 18f388f5efSDag-Erling Smørgrav * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 19f388f5efSDag-Erling Smørgrav * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 20f388f5efSDag-Erling Smørgrav * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 21f388f5efSDag-Erling Smørgrav * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 22f388f5efSDag-Erling Smørgrav * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 23f388f5efSDag-Erling Smørgrav */ 24989dd127SDag-Erling Smørgrav 2509958426SBrian Feldman #include "includes.h" 2609958426SBrian Feldman #ifdef USE_PAM 2709958426SBrian Feldman 2847dd1d1bSDag-Erling Smørgrav struct ssh; 2947dd1d1bSDag-Erling Smørgrav 3019261079SEd Maste void start_pam(struct ssh *); 3109958426SBrian Feldman void finish_pam(void); 32cf2b5f3bSDag-Erling Smørgrav u_int do_pam_account(void); 3347dd1d1bSDag-Erling Smørgrav void do_pam_session(struct ssh *); 34*0fdf8faeSEd Maste void do_pam_setcred(void); 3509958426SBrian Feldman void do_pam_chauthtok(void); 36cf2b5f3bSDag-Erling Smørgrav int do_pam_putenv(char *, char *); 37cf2b5f3bSDag-Erling Smørgrav char ** fetch_pam_environment(void); 381ec0d754SDag-Erling Smørgrav char ** fetch_pam_child_environment(void); 39cf2b5f3bSDag-Erling Smørgrav void free_pam_environment(char **); 401ec0d754SDag-Erling Smørgrav void sshpam_thread_cleanup(void); 411ec0d754SDag-Erling Smørgrav void sshpam_cleanup(void); 4221e764dfSDag-Erling Smørgrav int sshpam_auth_passwd(Authctxt *, const char *); 43076ad2f8SDag-Erling Smørgrav int sshpam_get_maxtries_reached(void); 44076ad2f8SDag-Erling Smørgrav void sshpam_set_maxtries_reached(int); 45aa49c926SDag-Erling Smørgrav int is_pam_session_open(void); 4609958426SBrian Feldman 4709958426SBrian Feldman #endif /* USE_PAM */ 48