c_all.c revision 296341
117304Sserb/* crypto/evp/c_all.c */
217304Sserb/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
317304Sserb * All rights reserved.
417304Sserb *
517304Sserb * This package is an SSL implementation written
617304Sserb * by Eric Young (eay@cryptsoft.com).
717304Sserb * The implementation was written so as to conform with Netscapes SSL.
817304Sserb *
917304Sserb * This library is free for commercial and non-commercial use as long as
1017304Sserb * the following conditions are aheared to.  The following conditions
1117304Sserb * apply to all code found in this distribution, be it the RC4, RSA,
1217304Sserb * lhash, DES, etc., code; not just the SSL code.  The SSL documentation
1317304Sserb * included with this distribution is covered by the same copyright terms
1417304Sserb * except that the holder is Tim Hudson (tjh@cryptsoft.com).
1517304Sserb *
1617304Sserb * Copyright remains Eric Young's, and as such any Copyright notices in
1717304Sserb * the code are not to be removed.
1817304Sserb * If this package is used in a product, Eric Young should be given attribution
1917304Sserb * as the author of the parts of the library used.
2017304Sserb * This can be in the form of a textual message at program startup or
2117304Sserb * in documentation (online or textual) provided with the package.
2217304Sserb *
2317304Sserb * Redistribution and use in source and binary forms, with or without
2417304Sserb * modification, are permitted provided that the following conditions
2517304Sserb * are met:
2617304Sserb * 1. Redistributions of source code must retain the copyright
2717304Sserb *    notice, this list of conditions and the following disclaimer.
2817304Sserb * 2. Redistributions in binary form must reproduce the above copyright
2917304Sserb *    notice, this list of conditions and the following disclaimer in the
3017304Sserb *    documentation and/or other materials provided with the distribution.
3117304Sserb * 3. All advertising materials mentioning features or use of this software
3217304Sserb *    must display the following acknowledgement:
3317304Sserb *    "This product includes cryptographic software written by
3417304Sserb *     Eric Young (eay@cryptsoft.com)"
3517304Sserb *    The word 'cryptographic' can be left out if the rouines from the library
3617304Sserb *    being used are not cryptographic related :-).
3717304Sserb * 4. If you include any Windows specific code (or a derivative thereof) from
3817304Sserb *    the apps directory (application code) you must include an acknowledgement:
3917304Sserb *    "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
4017304Sserb *
4117304Sserb * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
4217304Sserb * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
4317304Sserb * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
4417304Sserb * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
4517304Sserb * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
4617304Sserb * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
4717304Sserb * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
4817304Sserb * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
4917304Sserb * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
5017304Sserb * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
5117304Sserb * SUCH DAMAGE.
5217304Sserb *
5317304Sserb * The licence and distribution terms for any publically available version or
5417304Sserb * derivative of this code cannot be changed.  i.e. this code cannot simply be
5517304Sserb * copied and put under another distribution licence
5617304Sserb * [including the GNU Public Licence.]
5717304Sserb */
5817304Sserb
5917304Sserb#include <stdio.h>
6017304Sserb#include "cryptlib.h"
6117304Sserb#include <openssl/evp.h>
6217304Sserb#ifndef OPENSSL_NO_ENGINE
6317304Sserb# include <openssl/engine.h>
6417304Sserb#endif
6517304Sserb
6617304Sserb#if 0
6717304Sserb# undef OpenSSL_add_all_algorithms
6817304Sserb
6917304Sserbvoid OpenSSL_add_all_algorithms(void)
7017304Sserb{
7117304Sserb    OPENSSL_add_all_algorithms_noconf();
7217304Sserb}
7317304Sserb#endif
7417304Sserb
7517304Sserbvoid OPENSSL_add_all_algorithms_noconf(void)
7617304Sserb{
7717304Sserb    /*
7817304Sserb     * For the moment OPENSSL_cpuid_setup does something
7917304Sserb     * only on IA-32, but we reserve the option for all
8017304Sserb     * platforms...
8117304Sserb     */
8217304Sserb    OPENSSL_cpuid_setup();
8317304Sserb    OpenSSL_add_all_ciphers();
8417304Sserb    OpenSSL_add_all_digests();
8517304Sserb#ifndef OPENSSL_NO_ENGINE
8617304Sserb# if defined(__OpenBSD__) || defined(__FreeBSD__) || defined(HAVE_CRYPTODEV)
8717304Sserb    ENGINE_setup_bsd_cryptodev();
8817304Sserb# endif
8917304Sserb#endif
9017304Sserb}
9117304Sserb