1219019Sgabor/* ssl/kssl.h -*- mode: C; c-file-style: "eay" -*- */ 2219019Sgabor/* 3219019Sgabor * Written by Vern Staats <staatsvr@asc.hpc.mil> for the OpenSSL project 4219019Sgabor * 2000. project 2000. 5219019Sgabor */ 6219019Sgabor/* ==================================================================== 7219019Sgabor * Copyright (c) 2000 The OpenSSL Project. All rights reserved. 8219019Sgabor * 9219019Sgabor * Redistribution and use in source and binary forms, with or without 10219019Sgabor * modification, are permitted provided that the following conditions 11219019Sgabor * are met: 12219019Sgabor * 13219019Sgabor * 1. Redistributions of source code must retain the above copyright 14219019Sgabor * notice, this list of conditions and the following disclaimer. 15219019Sgabor * 16219019Sgabor * 2. Redistributions in binary form must reproduce the above copyright 17219019Sgabor * notice, this list of conditions and the following disclaimer in 18219019Sgabor * the documentation and/or other materials provided with the 19219019Sgabor * distribution. 20219019Sgabor * 21219019Sgabor * 3. All advertising materials mentioning features or use of this 22219019Sgabor * software must display the following acknowledgment: 23219019Sgabor * "This product includes software developed by the OpenSSL Project 24219019Sgabor * for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" 25219019Sgabor * 26219019Sgabor * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to 27219019Sgabor * endorse or promote products derived from this software without 28219019Sgabor * prior written permission. For written permission, please contact 29219019Sgabor * licensing@OpenSSL.org. 30219019Sgabor * 31219019Sgabor * 5. Products derived from this software may not be called "OpenSSL" 32219019Sgabor * nor may "OpenSSL" appear in their names without prior written 33219019Sgabor * permission of the OpenSSL Project. 34219019Sgabor * 35219019Sgabor * 6. Redistributions of any form whatsoever must retain the following 36219019Sgabor * acknowledgment: 37219019Sgabor * "This product includes software developed by the OpenSSL Project 38219019Sgabor * for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" 39219019Sgabor * 40219019Sgabor * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY 41219019Sgabor * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 42219019Sgabor * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 43219019Sgabor * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR 44219019Sgabor * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 45219019Sgabor * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 46219019Sgabor * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 47219019Sgabor * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 48219019Sgabor * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 49219019Sgabor * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 50219019Sgabor * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 51219019Sgabor * OF THE POSSIBILITY OF SUCH DAMAGE. 52219019Sgabor * ==================================================================== 53219019Sgabor * 54219019Sgabor * This product includes cryptographic software written by Eric Young 55219019Sgabor * (eay@cryptsoft.com). This product includes software written by Tim 56219019Sgabor * Hudson (tjh@cryptsoft.com). 57219019Sgabor * 58219019Sgabor */ 59219019Sgabor 60219019Sgabor#ifndef KSSL_LCL_H 61219019Sgabor# define KSSL_LCL_H 62219019Sgabor 63219019Sgabor# include <openssl/kssl.h> 64219019Sgabor 65219019Sgabor# ifndef OPENSSL_NO_KRB5 66219019Sgabor 67219019Sgabor#ifdef __cplusplus 68219019Sgaborextern "C" { 69219019Sgabor#endif 70219019Sgabor 71219019Sgabor/* Private (internal to OpenSSL) */ 72219019Sgaborvoid print_krb5_data(char *label, krb5_data *kdata); 73219019Sgaborvoid print_krb5_authdata(char *label, krb5_authdata **adata); 74219019Sgaborvoid print_krb5_keyblock(char *label, krb5_keyblock *keyblk); 75 76char *kstring(char *string); 77char *knumber(int len, krb5_octet *contents); 78 79EVP_CIPHER *kssl_map_enc(krb5_enctype enctype); 80 81int kssl_keytab_is_available(KSSL_CTX *kssl_ctx); 82int kssl_tgt_is_available(KSSL_CTX *kssl_ctx); 83 84#ifdef __cplusplus 85} 86#endif 87# endif /* OPENSSL_NO_KRB5 */ 88#endif /* KSSL_LCL_H */ 89