{- join("\n",map { "/* $_ */" } @autowarntext) -} /* ==================================================================== * Copyright (c) 2016 The OpenSSL Project. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * 3. All advertising materials mentioning features or use of this * software must display the following acknowledgment: * "This product includes software developed by the OpenSSL Project * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" * * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to * endorse or promote products derived from this software without * prior written permission. For written permission, please contact * openssl-core@openssl.org. * * 5. Products derived from this software may not be called "OpenSSL" * nor may "OpenSSL" appear in their names without prior written * permission of the OpenSSL Project. * * 6. Redistributions of any form whatsoever must retain the following * acknowledgment: * "This product includes software developed by the OpenSSL Project * for use in the OpenSSL Toolkit (http://www.openssl.org/)" * * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED * OF THE POSSIBILITY OF SUCH DAMAGE. * ==================================================================== * * This product includes cryptographic software written by Eric Young * (eay@cryptsoft.com). This product includes software written by Tim * Hudson (tjh@cryptsoft.com). * */ #ifndef HEADER_DES_CONF_H # define HEADER_DES_CONF_H /* the following is tweaked from a config script, that is why it is a * protected undef/define */ # ifndef DES_PTR {- $config{des_ptr} ? "#define" : "#undef" -} DES_PTR # endif /* This helps C compiler generate the correct code for multiple functional * units. It reduces register dependancies at the expense of 2 more * registers */ # ifndef DES_RISC1 {- $config{des_risc1} ? "#define" : "#undef" -} DES_RISC1 # endif # ifndef DES_RISC2 {- $config{des_risc2} ? "#define" : "#undef" -} DES_RISC2 # endif # if defined(DES_RISC1) && defined(DES_RISC2) # error YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! # endif /* Unroll the inner loop, this sometimes helps, sometimes hinders. * Very mucy CPU dependant */ # ifndef DES_UNROLL {- $config{des_unroll} ? "#define" : "#undef" -} DES_UNROLL # endif /* * These default values were supplied by * Peter Gutman * They are only used if nothing else has been defined */ # if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) /* * Special defines which change the way the code is built depending on the * CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find * even newer MIPS CPU's, but at the moment one size fits all for * optimization options. Older Sparc's work better with only UNROLL, but * there's no way to tell at compile time what it is you're running on. */ # if defined(sparc) || defined(__sparc__) /* Newer Sparc's */ # define DES_PTR # define DES_RISC1 # define DES_UNROLL # elif defined( __ultrix ) /* Older MIPS */ # define DES_PTR # define DES_RISC2 # define DES_UNROLL # elif defined( __osf1__ ) /* Alpha */ # define DES_PTR # define DES_RISC2 # elif defined ( _AIX ) /* RS6000 */ /* Unknown */ # elif defined( __hpux ) /* HP-PA */ /* Unknown */ # elif defined( __aux ) /* 68K */ /* Unknown */ # elif defined( __sgi ) /* Newer MIPS */ # define DES_PTR # define DES_RISC2 # define DES_UNROLL # elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ # define DES_PTR # define DES_RISC1 # define DES_UNROLL # endif # endif #endif