113498266Sopenharmony_ci/* File: GNV$CONFTEST.C_FIRST
213498266Sopenharmony_ci *
313498266Sopenharmony_ci * Copyright (C) John Malmberg
413498266Sopenharmony_ci *
513498266Sopenharmony_ci * Permission to use, copy, modify, and/or distribute this software for any
613498266Sopenharmony_ci * purpose with or without fee is hereby granted, provided that the above
713498266Sopenharmony_ci * copyright notice and this permission notice appear in all copies.
813498266Sopenharmony_ci *
913498266Sopenharmony_ci * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
1013498266Sopenharmony_ci * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
1113498266Sopenharmony_ci * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
1213498266Sopenharmony_ci * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
1313498266Sopenharmony_ci * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
1413498266Sopenharmony_ci * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
1513498266Sopenharmony_ci * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
1613498266Sopenharmony_ci *
1713498266Sopenharmony_ci * SPDX-License-Identifier: ISC
1813498266Sopenharmony_ci *
1913498266Sopenharmony_ci */
2013498266Sopenharmony_ci
2113498266Sopenharmony_ci/* This is needed for Configure tests to get the correct exit status */
2213498266Sopenharmony_civoid __posix_exit(int __status);
2313498266Sopenharmony_ci#define exit(__p1) __posix_exit(__p1)
2413498266Sopenharmony_ci
2513498266Sopenharmony_ci/* Fake pass the test to find a standard ldap routine that we know is */
2613498266Sopenharmony_ci/* present on VMS, but with the wrong case for the symbol */
2713498266Sopenharmony_cichar ldap_url_parse(void) {return 0;}
2813498266Sopenharmony_ci
2913498266Sopenharmony_ci/* These are to pass the test that does not use headers */
3013498266Sopenharmony_ci/* Because configure does an #undef which keeps us from using #define */
3113498266Sopenharmony_ci/* char CRYPTO_add_lock(void) {return 0;} */
3213498266Sopenharmony_cichar SSL_connect(void) {return 0;}
3313498266Sopenharmony_cichar ENGINE_init(void) {return 0;}
3413498266Sopenharmony_cichar RAND_status(void) {return 0;}
3513498266Sopenharmony_ci/* char RAND_screen(void) {return 0;} In headers, but not present */
3613498266Sopenharmony_cichar CRYPTO_cleanup_all_ex_data(void) {return 0;}
3713498266Sopenharmony_cichar SSL_get_shutdown(void) {return 0;}
3813498266Sopenharmony_cichar ENGINE_load_builtin_engines (void) {return 0;}
3913498266Sopenharmony_ci
4013498266Sopenharmony_ci/* And these are to pass the test that uses headers. */
4113498266Sopenharmony_ci/* Because the HP OpenSSL transfer vectors are currently in Upper case only */
4213498266Sopenharmony_ci#pragma message disable macroredef
4313498266Sopenharmony_ci#define CRYPTO_add_lock CRYPTO_ADD_LOCK
4413498266Sopenharmony_ci#define SSL_connect SSL_CONNECT
4513498266Sopenharmony_ci#define ENGINE_init ENGINE_INIT
4613498266Sopenharmony_ci#define RAND_status RAND_STATUS
4713498266Sopenharmony_ci/* #define RAND_screen RAND_SCREEN */
4813498266Sopenharmony_ci#define CRYPTO_cleanup_all_ex_data CRYPTO_CLEANUP_ALL_EX_DATA
4913498266Sopenharmony_ci#define SSL_get_shutdown SSL_GET_SHUTDOWN
5013498266Sopenharmony_ci#define ENGINE_load_builtin_engines ENGINE_LOAD_BUILTIN_ENGINES
5113498266Sopenharmony_ci
5213498266Sopenharmony_ci/* Can not use the #define macro to fix the case on CRYPTO_lock because */
5313498266Sopenharmony_ci/* there is a macro CRYPTO_LOCK that is a number */
5413498266Sopenharmony_ci
5513498266Sopenharmony_ci/* After all the work to get configure to pass the CRYPTO_LOCK tests,
5613498266Sopenharmony_ci * it turns out that VMS does not have the CRYPTO_LOCK symbol in the
5713498266Sopenharmony_ci * transfer vector, even though it is in the header file.
5813498266Sopenharmony_ci */
59