1/* File: GNV$CONFTEST.C_FIRST
2 *
3 * $Id$
4 *
5 * Copyright 2009 - 2020, John Malmberg
6 *
7 * Permission to use, copy, modify, and/or distribute this software for any
8 * purpose with or without fee is hereby granted, provided that the above
9 * copyright notice and this permission notice appear in all copies.
10 *
11 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
12 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
13 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
14 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
15 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
16 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
17 * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
18 *
19 */
20
21/* This is needed for Configure tests to get the correct exit status */
22void __posix_exit(int __status);
23#define exit(__p1) __posix_exit(__p1)
24
25/* Fake pass the test to find a standard ldap routine that we know is */
26/* present on VMS, but with the wrong case for the symbol */
27char ldap_url_parse(void) {return 0;}
28
29/* These are to pass the test that does not use headers */
30/* Because configure does an #undef which keeps us from using #define */
31/* char CRYPTO_add_lock(void) {return 0;} */
32char SSL_connnect(void) {return 0;}
33char ENGINE_init(void) {return 0;}
34char RAND_status(void) {return 0;}
35/* char RAND_screen(void) {return 0;} In headers, but not present */
36char RAND_egd(void) {return 0;}
37char CRYPTO_cleanup_all_ex_data(void) {return 0;}
38char SSL_get_shutdown(void) {return 0;}
39char ENGINE_load_builtin_engines (void) {return 0;}
40
41/* And these are to pass the test that uses headers. */
42/* Because the HP OpenSSL transfer vectors are currently in Upper case only */
43#pragma message disable macroredef
44#define CRYPTO_add_lock CRYPTO_ADD_LOCK
45#define SSL_connect SSL_CONNECT
46#define ENGINE_init ENGINE_INIT
47#define RAND_status RAND_STATUS
48/* #define RAND_screen RAND_SCREEN */
49#define RAND_egd RAND_EGD
50#define CRYPTO_cleanup_all_ex_data CRYPTO_CLEANUP_ALL_EX_DATA
51#define SSL_get_shutdown SSL_GET_SHUTDOWN
52#define ENGINE_load_builtin_engines ENGINE_LOAD_BUILTIN_ENGINES
53
54/* Can not use the #define macro to fix the case on CRYPTO_lock because */
55/* there is a macro CRYPTO_LOCK that is a number */
56
57/* After all the work to get configure to pass the CRYPTO_LOCK tests,
58 * it turns out that VMS does not have the CRYPTO_LOCK symbol in the
59 * transfer vector, even though it is in the header file.
60 */
61