129088Smarkm/*-
229088Smarkm * Copyright (c) 1991, 1993
329088Smarkm *	The Regents of the University of California.  All rights reserved.
429088Smarkm *
529088Smarkm * Redistribution and use in source and binary forms, with or without
629088Smarkm * modification, are permitted provided that the following conditions
729088Smarkm * are met:
829088Smarkm * 1. Redistributions of source code must retain the above copyright
929088Smarkm *    notice, this list of conditions and the following disclaimer.
1029088Smarkm * 2. Redistributions in binary form must reproduce the above copyright
1129088Smarkm *    notice, this list of conditions and the following disclaimer in the
1229088Smarkm *    documentation and/or other materials provided with the distribution.
1329088Smarkm * 3. All advertising materials mentioning features or use of this software
1429088Smarkm *    must display the following acknowledgement:
1529088Smarkm *	This product includes software developed by the University of
1629088Smarkm *	California, Berkeley and its contributors.
1729088Smarkm * 4. Neither the name of the University nor the names of its contributors
1829088Smarkm *    may be used to endorse or promote products derived from this software
1929088Smarkm *    without specific prior written permission.
2029088Smarkm *
2129088Smarkm * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
2229088Smarkm * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
2329088Smarkm * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
2429088Smarkm * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
2529088Smarkm * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
2629088Smarkm * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
2729088Smarkm * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
2829088Smarkm * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
2929088Smarkm * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
3029088Smarkm * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
3129088Smarkm * SUCH DAMAGE.
3229088Smarkm *
3329088Smarkm *	@(#)auth-proto.h	8.1 (Berkeley) 6/4/93
3463248Speter * $FreeBSD$
3529088Smarkm */
3629088Smarkm
3729088Smarkm/*
3829088Smarkm * Copyright (C) 1990 by the Massachusetts Institute of Technology
3929088Smarkm *
4029088Smarkm * Export of this software from the United States of America is assumed
4129088Smarkm * to require a specific license from the United States Government.
4229088Smarkm * It is the responsibility of any person or organization contemplating
4329088Smarkm * export to obtain such a license before exporting.
4429088Smarkm *
4529088Smarkm * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and
4629088Smarkm * distribute this software and its documentation for any purpose and
4729088Smarkm * without fee is hereby granted, provided that the above copyright
4829088Smarkm * notice appear in all copies and that both that copyright notice and
4929088Smarkm * this permission notice appear in supporting documentation, and that
5029088Smarkm * the name of M.I.T. not be used in advertising or publicity pertaining
5129088Smarkm * to distribution of the software without specific, written prior
5229088Smarkm * permission.  M.I.T. makes no representations about the suitability of
5329088Smarkm * this software for any purpose.  It is provided "as is" without express
5429088Smarkm * or implied warranty.
5529088Smarkm */
5629088Smarkm
5787139Smarkm#ifdef	AUTHENTICATION
5829088Smarkm
5987139SmarkmAuthenticator *findauthenticator(int, int);
6029088Smarkm
6187139Smarkmvoid auth_init(const char *, int);
6287139Smarkmint auth_cmd(int, char **);
6387139Smarkmvoid auth_request(void);
6487139Smarkmvoid auth_send(unsigned char *, int);
6587139Smarkmvoid auth_send_retry(void);
6687139Smarkmvoid auth_is(unsigned char *, int);
6787139Smarkmvoid auth_reply(unsigned char *, int);
6887139Smarkmvoid auth_finished(Authenticator *, int);
6987139Smarkmint auth_wait(char *);
7087139Smarkmvoid auth_disable_name(char *);
7187139Smarkmvoid auth_gen_printsub(unsigned char *, int, unsigned char *, int);
7287139Smarkmvoid auth_name(unsigned char *, int);
7387139Smarkmvoid auth_printsub(unsigned char *, int, unsigned char *, int);
7487139Smarkmint auth_sendname(unsigned char *, int);
7587139Smarkmvoid auth_encrypt_user(char *);
7687139Smarkmint auth_disable(char *);
7787139Smarkmint auth_enable(char *);
7887139Smarkmint auth_togdebug(int);
7987139Smarkmint auth_status(void);
8087139Smarkm
8187139Smarkmint getauthmask(char *, int *);
8287139Smarkm
8329088Smarkm#ifdef	KRB4
8487139Smarkmint kerberos4_init(Authenticator *, int);
8587139Smarkmint kerberos4_send(Authenticator *);
8687139Smarkmvoid kerberos4_is(Authenticator *, unsigned char *, int);
8787139Smarkmvoid kerberos4_reply(Authenticator *, unsigned char *, int);
8887139Smarkmint kerberos4_status(Authenticator *, char *, int);
8987139Smarkmvoid kerberos4_printsub(unsigned char *, int, unsigned char *, int);
9029088Smarkm#endif
9129088Smarkm
9229088Smarkm#ifdef	KRB5
9387139Smarkmint kerberos5_init(Authenticator *, int);
9487139Smarkmint kerberos5_send_mutual(Authenticator *);
9587139Smarkmint kerberos5_send_oneway(Authenticator *);
9687139Smarkmvoid kerberos5_is(Authenticator *, unsigned char *, int);
9787139Smarkmvoid kerberos5_reply(Authenticator *, unsigned char *, int);
9887139Smarkmint kerberos5_status(Authenticator *, char *, int level);
9987139Smarkmvoid kerberos5_printsub(unsigned char *, int, unsigned char *, int);
10029088Smarkm#endif
10187139Smarkm
10249887Snsayer#ifdef SRA
10387139Smarkmint sra_init(Authenticator *, int);
10487139Smarkmint sra_send(Authenticator *);
10587139Smarkmvoid sra_is(Authenticator *, unsigned char *, int);
10687139Smarkmvoid sra_reply(Authenticator *, unsigned char *, int);
10787139Smarkmint sra_status(Authenticator *, char *, int);
10887139Smarkmvoid sra_printsub(unsigned char *, int, unsigned char *, int);
10929088Smarkm#endif
11087139Smarkm
11149887Snsayer#endif
112