157416Smarkm/*- 257416Smarkm * Copyright (c) 1991, 1993 357416Smarkm * The Regents of the University of California. All rights reserved. 457416Smarkm * 557416Smarkm * Redistribution and use in source and binary forms, with or without 657416Smarkm * modification, are permitted provided that the following conditions 757416Smarkm * are met: 857416Smarkm * 1. Redistributions of source code must retain the above copyright 957416Smarkm * notice, this list of conditions and the following disclaimer. 1057416Smarkm * 2. Redistributions in binary form must reproduce the above copyright 1157416Smarkm * notice, this list of conditions and the following disclaimer in the 1257416Smarkm * documentation and/or other materials provided with the distribution. 1357416Smarkm * 3. All advertising materials mentioning features or use of this software 1457416Smarkm * must display the following acknowledgement: 1557416Smarkm * This product includes software developed by the University of 1657416Smarkm * California, Berkeley and its contributors. 1757416Smarkm * 4. Neither the name of the University nor the names of its contributors 1857416Smarkm * may be used to endorse or promote products derived from this software 1957416Smarkm * without specific prior written permission. 2057416Smarkm * 2157416Smarkm * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 2257416Smarkm * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 2357416Smarkm * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 2457416Smarkm * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 2557416Smarkm * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 2657416Smarkm * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2757416Smarkm * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2857416Smarkm * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2957416Smarkm * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 3057416Smarkm * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 3157416Smarkm * SUCH DAMAGE. 3257416Smarkm * 3357416Smarkm * @(#)auth-proto.h 8.1 (Berkeley) 6/4/93 3457416Smarkm */ 3557416Smarkm 3657416Smarkm/* 3757416Smarkm * Copyright (C) 1990 by the Massachusetts Institute of Technology 3857416Smarkm * 3957416Smarkm * Export of this software from the United States of America is assumed 4057416Smarkm * to require a specific license from the United States Government. 4157416Smarkm * It is the responsibility of any person or organization contemplating 4257416Smarkm * export to obtain such a license before exporting. 43233294Sstas * 4457416Smarkm * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and 4557416Smarkm * distribute this software and its documentation for any purpose and 4657416Smarkm * without fee is hereby granted, provided that the above copyright 4757416Smarkm * notice appear in all copies and that both that copyright notice and 4857416Smarkm * this permission notice appear in supporting documentation, and that 4957416Smarkm * the name of M.I.T. not be used in advertising or publicity pertaining 5057416Smarkm * to distribution of the software without specific, written prior 5157416Smarkm * permission. M.I.T. makes no representations about the suitability of 5257416Smarkm * this software for any purpose. It is provided "as is" without express 5357416Smarkm * or implied warranty. 5457416Smarkm */ 5557416Smarkm 56233294Sstas/* $Id$ */ 5757416Smarkm 5857416Smarkm#ifdef AUTHENTICATION 5957416SmarkmAuthenticator *findauthenticator (int, int); 6057416Smarkm 6157416Smarkmint auth_wait (char *, size_t); 6257416Smarkmvoid auth_disable_name (char *); 6357416Smarkmvoid auth_finished (Authenticator *, int); 64233294Sstasvoid auth_gen_printsub (unsigned char *, size_t, unsigned char *, size_t); 6557416Smarkmvoid auth_init (const char *, int); 6657416Smarkmvoid auth_is (unsigned char *, int); 6757416Smarkmvoid auth_name(unsigned char*, int); 6857416Smarkmvoid auth_reply (unsigned char *, int); 6957416Smarkmvoid auth_request (void); 7057416Smarkmvoid auth_send (unsigned char *, int); 7157416Smarkmvoid auth_send_retry (void); 72233294Sstasvoid auth_printsub(unsigned char*, size_t, unsigned char*, size_t); 7357416Smarkmint getauthmask(char *type, int *maskp); 7457416Smarkmint auth_enable(char *type); 7557416Smarkmint auth_disable(char *type); 7657416Smarkmint auth_onoff(char *type, int on); 7757416Smarkmint auth_togdebug(int on); 7857416Smarkmint auth_status(void); 7957416Smarkmint auth_sendname(unsigned char *cp, int len); 8057416Smarkmvoid auth_debug(int mode); 8157416Smarkm 8257416Smarkm#ifdef UNSAFE 8357416Smarkmint unsafe_init (Authenticator *, int); 8457416Smarkmint unsafe_send (Authenticator *); 8557416Smarkmvoid unsafe_is (Authenticator *, unsigned char *, int); 8657416Smarkmvoid unsafe_reply (Authenticator *, unsigned char *, int); 8757416Smarkmint unsafe_status (Authenticator *, char *, int); 88233294Sstasvoid unsafe_printsub (unsigned char *, size_t, unsigned char *, size_t); 8957416Smarkm#endif 9057416Smarkm 9157416Smarkm#ifdef SRA 9257416Smarkmint sra_init (Authenticator *, int); 9357416Smarkmint sra_send (Authenticator *); 9457416Smarkmvoid sra_is (Authenticator *, unsigned char *, int); 9557416Smarkmvoid sra_reply (Authenticator *, unsigned char *, int); 9657416Smarkmint sra_status (Authenticator *, char *, int); 97233294Sstasvoid sra_printsub (unsigned char *, size_t, unsigned char *, size_t); 9857416Smarkm#endif 9957416Smarkm 10057416Smarkm#ifdef KRB5 10157416Smarkmint kerberos5_init (Authenticator *, int); 10257416Smarkmint kerberos5_send_mutual (Authenticator *); 10357416Smarkmint kerberos5_send_oneway (Authenticator *); 10457416Smarkmvoid kerberos5_is (Authenticator *, unsigned char *, int); 10557416Smarkmvoid kerberos5_reply (Authenticator *, unsigned char *, int); 10657416Smarkmint kerberos5_status (Authenticator *, char *, size_t, int); 107233294Sstasvoid kerberos5_printsub (unsigned char *, size_t, unsigned char *, size_t); 108102644Snectarint kerberos5_set_forward(int); 109102644Snectarint kerberos5_set_forwardable(int); 11057416Smarkm#endif 11157416Smarkm#endif 112