1 1.11 kre /* $NetBSD: enc-proto.h,v 1.11 2024/10/29 13:10:06 kre Exp $ */ 2 1.4 thorpej 3 1.1 cgd /*- 4 1.4 thorpej * Copyright (c) 1991, 1993 5 1.4 thorpej * The Regents of the University of California. All rights reserved. 6 1.1 cgd * 7 1.1 cgd * Redistribution and use in source and binary forms, with or without 8 1.1 cgd * modification, are permitted provided that the following conditions 9 1.1 cgd * are met: 10 1.1 cgd * 1. Redistributions of source code must retain the above copyright 11 1.1 cgd * notice, this list of conditions and the following disclaimer. 12 1.1 cgd * 2. Redistributions in binary form must reproduce the above copyright 13 1.1 cgd * notice, this list of conditions and the following disclaimer in the 14 1.1 cgd * documentation and/or other materials provided with the distribution. 15 1.5 agc * 3. Neither the name of the University nor the names of its contributors 16 1.1 cgd * may be used to endorse or promote products derived from this software 17 1.1 cgd * without specific prior written permission. 18 1.1 cgd * 19 1.1 cgd * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 20 1.1 cgd * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 21 1.1 cgd * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 22 1.1 cgd * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 23 1.1 cgd * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 24 1.1 cgd * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 25 1.1 cgd * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 26 1.1 cgd * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 27 1.1 cgd * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 28 1.1 cgd * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 29 1.1 cgd * SUCH DAMAGE. 30 1.1 cgd * 31 1.4 thorpej * from: @(#)enc-proto.h 8.1 (Berkeley) 6/4/93 32 1.1 cgd */ 33 1.1 cgd 34 1.1 cgd /* 35 1.1 cgd * Copyright (C) 1990 by the Massachusetts Institute of Technology 36 1.1 cgd * 37 1.1 cgd * Export of this software from the United States of America is assumed 38 1.1 cgd * to require a specific license from the United States Government. 39 1.1 cgd * It is the responsibility of any person or organization contemplating 40 1.1 cgd * export to obtain such a license before exporting. 41 1.1 cgd * 42 1.1 cgd * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and 43 1.1 cgd * distribute this software and its documentation for any purpose and 44 1.1 cgd * without fee is hereby granted, provided that the above copyright 45 1.1 cgd * notice appear in all copies and that both that copyright notice and 46 1.1 cgd * this permission notice appear in supporting documentation, and that 47 1.1 cgd * the name of M.I.T. not be used in advertising or publicity pertaining 48 1.1 cgd * to distribution of the software without specific, written prior 49 1.1 cgd * permission. M.I.T. makes no representations about the suitability of 50 1.1 cgd * this software for any purpose. It is provided "as is" without express 51 1.1 cgd * or implied warranty. 52 1.1 cgd */ 53 1.1 cgd 54 1.4 thorpej #ifdef ENCRYPTION 55 1.4 thorpej #include <sys/cdefs.h> 56 1.4 thorpej 57 1.6 perry Encryptions *findencryption(int); 58 1.6 perry Encryptions *finddecryption(int); 59 1.6 perry void encrypt_init(const char *, int); 60 1.6 perry void encrypt_list_types(void); 61 1.6 perry int EncryptEnable(char *, char *); 62 1.6 perry int EncryptDisable(char *, char *); 63 1.6 perry int EncryptType(char *, char *); 64 1.10 maya int EncryptStart(char *, char *); 65 1.10 maya int EncryptStartInput(char *, char *); 66 1.10 maya int EncryptStartOutput(char *, char *); 67 1.10 maya int EncryptStop(char *, char *); 68 1.10 maya int EncryptStopInput(char *, char *); 69 1.10 maya int EncryptStopOutput(char *, char *); 70 1.10 maya int EncryptStatus(char *, char *); 71 1.6 perry void encrypt_send_support(void); 72 1.6 perry int EncryptDebug(int); 73 1.6 perry int EncryptVerbose(int); 74 1.6 perry int EncryptAutoEnc(int); 75 1.6 perry int EncryptAutoDec(int); 76 1.11 kre int encrypt_debug(void); 77 1.6 perry void encrypt_support(unsigned char *, int); 78 1.6 perry void encrypt_is(unsigned char *, int); 79 1.6 perry void encrypt_reply(unsigned char *, int); 80 1.6 perry void encrypt_start(unsigned char *, int); 81 1.6 perry void encrypt_session_key(Session_Key *, int); 82 1.6 perry void encrypt_end(void); 83 1.6 perry void encrypt_request_end(void); 84 1.6 perry void encrypt_request_start(unsigned char *, int); 85 1.6 perry void encrypt_enc_keyid(unsigned char *, int); 86 1.6 perry void encrypt_dec_keyid(unsigned char *, int); 87 1.4 thorpej struct key_info; 88 1.6 perry void encrypt_keyid(struct key_info *, unsigned char *, int); 89 1.9 christos void encrypt_send_keyid(int, const unsigned char *, int, int); 90 1.6 perry void encrypt_auto(int); 91 1.6 perry void decrypt_auto(int); 92 1.6 perry void encrypt_start_output(int); 93 1.6 perry void encrypt_send_end(void); 94 1.6 perry void encrypt_send_request_start(void); 95 1.6 perry void encrypt_send_request_end(void); 96 1.6 perry void encrypt_wait(void); 97 1.6 perry void encrypt_gen_printsub(unsigned char *, int, unsigned char *, int ); 98 1.6 perry void encrypt_printsub(unsigned char *, int, unsigned char *, int ); 99 1.1 cgd 100 1.1 cgd #ifdef TELENTD 101 1.6 perry void encrypt_wait(void); 102 1.1 cgd #else 103 1.8 agc void printsub(int, unsigned char *, int); 104 1.6 perry int encrypt_cmd(int, char **); 105 1.6 perry void encrypt_display(void); 106 1.1 cgd #endif 107 1.1 cgd 108 1.6 perry void krbdes_encrypt(unsigned char *, int); 109 1.6 perry int krbdes_decrypt(int); 110 1.6 perry int krbdes_is(unsigned char *, int); 111 1.6 perry int krbdes_reply(unsigned char *, int); 112 1.6 perry void krbdes_init(int); 113 1.6 perry int krbdes_start(int, int); 114 1.6 perry void krbdes_session(Session_Key *, int); 115 1.6 perry void krbdes_printsub(unsigned char *, int, unsigned char *, int); 116 1.6 perry 117 1.6 perry void cfb64_encrypt(unsigned char *, int); 118 1.6 perry int cfb64_decrypt(int); 119 1.6 perry void cfb64_init(int); 120 1.6 perry int cfb64_start(int, int); 121 1.6 perry int cfb64_is(unsigned char *, int); 122 1.6 perry int cfb64_reply(unsigned char *, int); 123 1.6 perry void cfb64_session(Session_Key *, int); 124 1.6 perry int cfb64_keyid(int, unsigned char *, int *); 125 1.6 perry void cfb64_printsub(unsigned char *, int, unsigned char *, int); 126 1.6 perry 127 1.6 perry void ofb64_encrypt(unsigned char *, int); 128 1.6 perry int ofb64_decrypt(int); 129 1.6 perry void ofb64_init(int); 130 1.6 perry int ofb64_start(int, int); 131 1.6 perry int ofb64_is(unsigned char *, int); 132 1.6 perry int ofb64_reply(unsigned char *, int); 133 1.6 perry void ofb64_session(Session_Key *, int); 134 1.6 perry int ofb64_keyid(int, unsigned char *, int *); 135 1.6 perry void ofb64_printsub(unsigned char *, int, unsigned char *, int); 136 1.1 cgd 137 1.9 christos void fb64_printsub(const unsigned char *, int, unsigned char *, int, 138 1.9 christos const unsigned char *); 139 1.4 thorpej 140 1.4 thorpej #endif /* ENCRYPTION */ 141