bsaes-armv7.pl: remove partial register operations in CTR subroutine.
[openssl.git] / crypto / symhacks.h
1 /* ====================================================================
2  * Copyright (c) 1999 The OpenSSL Project.  All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  *
8  * 1. Redistributions of source code must retain the above copyright
9  *    notice, this list of conditions and the following disclaimer. 
10  *
11  * 2. Redistributions in binary form must reproduce the above copyright
12  *    notice, this list of conditions and the following disclaimer in
13  *    the documentation and/or other materials provided with the
14  *    distribution.
15  *
16  * 3. All advertising materials mentioning features or use of this
17  *    software must display the following acknowledgment:
18  *    "This product includes software developed by the OpenSSL Project
19  *    for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
20  *
21  * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
22  *    endorse or promote products derived from this software without
23  *    prior written permission. For written permission, please contact
24  *    openssl-core@openssl.org.
25  *
26  * 5. Products derived from this software may not be called "OpenSSL"
27  *    nor may "OpenSSL" appear in their names without prior written
28  *    permission of the OpenSSL Project.
29  *
30  * 6. Redistributions of any form whatsoever must retain the following
31  *    acknowledgment:
32  *    "This product includes software developed by the OpenSSL Project
33  *    for use in the OpenSSL Toolkit (http://www.openssl.org/)"
34  *
35  * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
36  * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
37  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
38  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE OpenSSL PROJECT OR
39  * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
40  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
41  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
42  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
43  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
44  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
45  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
46  * OF THE POSSIBILITY OF SUCH DAMAGE.
47  * ====================================================================
48  *
49  * This product includes cryptographic software written by Eric Young
50  * (eay@cryptsoft.com).  This product includes software written by Tim
51  * Hudson (tjh@cryptsoft.com).
52  *
53  */
54
55 #ifndef HEADER_SYMHACKS_H
56 #define HEADER_SYMHACKS_H
57
58 #include <openssl/e_os2.h>
59
60 /* Hacks to solve the problem with linkers incapable of handling very long
61    symbol names.  In the case of VMS, the limit is 31 characters on VMS for
62    VAX. */
63 /* Note that this affects util/libeay.num and util/ssleay.num...  you may
64    change those manually, but that's not recommended, as those files are
65    controlled centrally and updated on Unix, and the central definition
66    may disagree with yours, which in turn may come with shareable library
67    incompatibilities. */
68 #ifdef OPENSSL_SYS_VMS
69
70 /* Hack a long name in crypto/ex_data.c */
71 #undef CRYPTO_get_ex_data_implementation
72 #define CRYPTO_get_ex_data_implementation       CRYPTO_get_ex_data_impl
73 #undef CRYPTO_set_ex_data_implementation
74 #define CRYPTO_set_ex_data_implementation       CRYPTO_set_ex_data_impl
75
76 /* Hack a long name in crypto/asn1/a_mbstr.c */
77 #undef ASN1_STRING_set_default_mask_asc
78 #define ASN1_STRING_set_default_mask_asc        ASN1_STRING_set_def_mask_asc
79
80 #if 0 /* No longer needed, since safestack macro magic does the job */
81 /* Hack the names created with DECLARE_ASN1_SET_OF(PKCS7_SIGNER_INFO) */
82 #undef i2d_ASN1_SET_OF_PKCS7_SIGNER_INFO
83 #define i2d_ASN1_SET_OF_PKCS7_SIGNER_INFO       i2d_ASN1_SET_OF_PKCS7_SIGINF
84 #undef d2i_ASN1_SET_OF_PKCS7_SIGNER_INFO
85 #define d2i_ASN1_SET_OF_PKCS7_SIGNER_INFO       d2i_ASN1_SET_OF_PKCS7_SIGINF
86 #endif
87
88 #if 0 /* No longer needed, since safestack macro magic does the job */
89 /* Hack the names created with DECLARE_ASN1_SET_OF(PKCS7_RECIP_INFO) */
90 #undef i2d_ASN1_SET_OF_PKCS7_RECIP_INFO
91 #define i2d_ASN1_SET_OF_PKCS7_RECIP_INFO        i2d_ASN1_SET_OF_PKCS7_RECINF
92 #undef d2i_ASN1_SET_OF_PKCS7_RECIP_INFO
93 #define d2i_ASN1_SET_OF_PKCS7_RECIP_INFO        d2i_ASN1_SET_OF_PKCS7_RECINF
94 #endif
95
96 #if 0 /* No longer needed, since safestack macro magic does the job */
97 /* Hack the names created with DECLARE_ASN1_SET_OF(ACCESS_DESCRIPTION) */
98 #undef i2d_ASN1_SET_OF_ACCESS_DESCRIPTION
99 #define i2d_ASN1_SET_OF_ACCESS_DESCRIPTION      i2d_ASN1_SET_OF_ACC_DESC
100 #undef d2i_ASN1_SET_OF_ACCESS_DESCRIPTION
101 #define d2i_ASN1_SET_OF_ACCESS_DESCRIPTION      d2i_ASN1_SET_OF_ACC_DESC
102 #endif
103
104 /* Hack the names created with DECLARE_PEM_rw(NETSCAPE_CERT_SEQUENCE) */
105 #undef PEM_read_NETSCAPE_CERT_SEQUENCE
106 #define PEM_read_NETSCAPE_CERT_SEQUENCE         PEM_read_NS_CERT_SEQ
107 #undef PEM_write_NETSCAPE_CERT_SEQUENCE
108 #define PEM_write_NETSCAPE_CERT_SEQUENCE        PEM_write_NS_CERT_SEQ
109 #undef PEM_read_bio_NETSCAPE_CERT_SEQUENCE
110 #define PEM_read_bio_NETSCAPE_CERT_SEQUENCE     PEM_read_bio_NS_CERT_SEQ
111 #undef PEM_write_bio_NETSCAPE_CERT_SEQUENCE
112 #define PEM_write_bio_NETSCAPE_CERT_SEQUENCE    PEM_write_bio_NS_CERT_SEQ
113 #undef PEM_write_cb_bio_NETSCAPE_CERT_SEQUENCE
114 #define PEM_write_cb_bio_NETSCAPE_CERT_SEQUENCE PEM_write_cb_bio_NS_CERT_SEQ
115
116 /* Hack the names created with DECLARE_PEM_rw(PKCS8_PRIV_KEY_INFO) */
117 #undef PEM_read_PKCS8_PRIV_KEY_INFO
118 #define PEM_read_PKCS8_PRIV_KEY_INFO            PEM_read_P8_PRIV_KEY_INFO
119 #undef PEM_write_PKCS8_PRIV_KEY_INFO
120 #define PEM_write_PKCS8_PRIV_KEY_INFO           PEM_write_P8_PRIV_KEY_INFO
121 #undef PEM_read_bio_PKCS8_PRIV_KEY_INFO
122 #define PEM_read_bio_PKCS8_PRIV_KEY_INFO        PEM_read_bio_P8_PRIV_KEY_INFO
123 #undef PEM_write_bio_PKCS8_PRIV_KEY_INFO
124 #define PEM_write_bio_PKCS8_PRIV_KEY_INFO       PEM_write_bio_P8_PRIV_KEY_INFO
125 #undef PEM_write_cb_bio_PKCS8_PRIV_KEY_INFO
126 #define PEM_write_cb_bio_PKCS8_PRIV_KEY_INFO    PEM_wrt_cb_bio_P8_PRIV_KEY_INFO
127
128 /* Hack other PEM names */
129 #undef PEM_write_bio_PKCS8PrivateKey_nid
130 #define PEM_write_bio_PKCS8PrivateKey_nid       PEM_write_bio_PKCS8PrivKey_nid
131
132 /* Hack some long X509 names */
133 #undef X509_REVOKED_get_ext_by_critical
134 #define X509_REVOKED_get_ext_by_critical        X509_REVOKED_get_ext_by_critic
135 #undef X509_policy_tree_get0_user_policies
136 #define X509_policy_tree_get0_user_policies     X509_pcy_tree_get0_usr_policies
137 #undef X509_policy_node_get0_qualifiers
138 #define X509_policy_node_get0_qualifiers        X509_pcy_node_get0_qualifiers
139 #undef X509_STORE_CTX_get_explicit_policy
140 #define X509_STORE_CTX_get_explicit_policy      X509_STORE_CTX_get_expl_policy
141 #undef X509_STORE_CTX_get0_current_issuer
142 #define X509_STORE_CTX_get0_current_issuer      X509_STORE_CTX_get0_cur_issuer
143
144 /* Hack some long CRYPTO names */
145 #undef CRYPTO_set_dynlock_destroy_callback
146 #define CRYPTO_set_dynlock_destroy_callback     CRYPTO_set_dynlock_destroy_cb
147 #undef CRYPTO_set_dynlock_create_callback
148 #define CRYPTO_set_dynlock_create_callback      CRYPTO_set_dynlock_create_cb
149 #undef CRYPTO_set_dynlock_lock_callback
150 #define CRYPTO_set_dynlock_lock_callback        CRYPTO_set_dynlock_lock_cb
151 #undef CRYPTO_get_dynlock_lock_callback
152 #define CRYPTO_get_dynlock_lock_callback        CRYPTO_get_dynlock_lock_cb
153 #undef CRYPTO_get_dynlock_destroy_callback
154 #define CRYPTO_get_dynlock_destroy_callback     CRYPTO_get_dynlock_destroy_cb
155 #undef CRYPTO_get_dynlock_create_callback
156 #define CRYPTO_get_dynlock_create_callback      CRYPTO_get_dynlock_create_cb
157 #undef CRYPTO_set_locked_mem_ex_functions
158 #define CRYPTO_set_locked_mem_ex_functions      CRYPTO_set_locked_mem_ex_funcs
159 #undef CRYPTO_get_locked_mem_ex_functions
160 #define CRYPTO_get_locked_mem_ex_functions      CRYPTO_get_locked_mem_ex_funcs
161
162 /* Hack some long SSL/TLS names */
163 #undef SSL_CTX_set_default_verify_paths
164 #define SSL_CTX_set_default_verify_paths        SSL_CTX_set_def_verify_paths
165 #undef SSL_get_ex_data_X509_STORE_CTX_idx
166 #define SSL_get_ex_data_X509_STORE_CTX_idx      SSL_get_ex_d_X509_STORE_CTX_idx
167 #undef SSL_add_file_cert_subjects_to_stack
168 #define SSL_add_file_cert_subjects_to_stack     SSL_add_file_cert_subjs_to_stk
169 #undef SSL_add_dir_cert_subjects_to_stack
170 #define SSL_add_dir_cert_subjects_to_stack      SSL_add_dir_cert_subjs_to_stk
171 #undef SSL_CTX_use_certificate_chain_file
172 #define SSL_CTX_use_certificate_chain_file      SSL_CTX_use_cert_chain_file
173 #undef SSL_CTX_set_cert_verify_callback
174 #define SSL_CTX_set_cert_verify_callback        SSL_CTX_set_cert_verify_cb
175 #undef SSL_CTX_set_default_passwd_cb_userdata
176 #define SSL_CTX_set_default_passwd_cb_userdata  SSL_CTX_set_def_passwd_cb_ud
177 #undef SSL_COMP_get_compression_methods
178 #define SSL_COMP_get_compression_methods        SSL_COMP_get_compress_methods
179 #undef ssl_add_clienthello_renegotiate_ext
180 #define ssl_add_clienthello_renegotiate_ext     ssl_add_clienthello_reneg_ext
181 #undef ssl_add_serverhello_renegotiate_ext
182 #define ssl_add_serverhello_renegotiate_ext     ssl_add_serverhello_reneg_ext
183 #undef ssl_parse_clienthello_renegotiate_ext
184 #define ssl_parse_clienthello_renegotiate_ext   ssl_parse_clienthello_reneg_ext
185 #undef ssl_parse_serverhello_renegotiate_ext
186 #define ssl_parse_serverhello_renegotiate_ext   ssl_parse_serverhello_reneg_ext
187 #undef SSL_srp_server_param_with_username
188 #define SSL_srp_server_param_with_username      SSL_srp_server_param_with_un
189 #undef SSL_CTX_set_srp_client_pwd_callback
190 #define SSL_CTX_set_srp_client_pwd_callback     SSL_CTX_set_srp_client_pwd_cb
191 #undef SSL_CTX_set_srp_verify_param_callback
192 #define SSL_CTX_set_srp_verify_param_callback   SSL_CTX_set_srp_vfy_param_cb
193 #undef SSL_CTX_set_srp_username_callback
194 #define SSL_CTX_set_srp_username_callback       SSL_CTX_set_srp_un_cb
195 #undef ssl_add_clienthello_use_srtp_ext
196 #define ssl_add_clienthello_use_srtp_ext        ssl_add_clihello_use_srtp_ext
197 #undef ssl_add_serverhello_use_srtp_ext
198 #define ssl_add_serverhello_use_srtp_ext        ssl_add_serhello_use_srtp_ext
199 #undef ssl_parse_clienthello_use_srtp_ext
200 #define ssl_parse_clienthello_use_srtp_ext      ssl_parse_clihello_use_srtp_ext
201 #undef ssl_parse_serverhello_use_srtp_ext
202 #define ssl_parse_serverhello_use_srtp_ext      ssl_parse_serhello_use_srtp_ext
203 #undef SSL_CTX_set_next_protos_advertised_cb
204 #define SSL_CTX_set_next_protos_advertised_cb   SSL_CTX_set_next_protos_adv_cb
205 #undef SSL_CTX_set_next_proto_select_cb
206 #define SSL_CTX_set_next_proto_select_cb        SSL_CTX_set_next_proto_sel_cb
207 #undef SSL_CTX_set_not_resumable_session_callback
208 #define SSL_CTX_set_not_resumable_session_callback \
209                                                 SSL_CTX_set_not_resumbl_sess_cb
210 #undef SSL_set_not_resumable_session_callback
211 #define SSL_set_not_resumable_session_callback  SSL_set_not_resumbl_sess_cb
212
213 #undef tls1_send_server_supplemental_data
214 #define tls1_send_server_supplemental_data      tls1_send_server_suppl_data
215 #undef tls1_send_client_supplemental_data
216 #define tls1_send_client_supplemental_data      tls1_send_client_suppl_data
217 #undef tls1_get_server_supplemental_data
218 #define tls1_get_server_supplemental_data       tls1_get_server_suppl_data
219 #undef tls1_get_client_supplemental_data
220 #define tls1_get_client_supplemental_data       tls1_get_client_suppl_data
221
222 /* Hack some long ENGINE names */
223 #undef ENGINE_get_default_BN_mod_exp_crt
224 #define ENGINE_get_default_BN_mod_exp_crt       ENGINE_get_def_BN_mod_exp_crt
225 #undef ENGINE_set_default_BN_mod_exp_crt
226 #define ENGINE_set_default_BN_mod_exp_crt       ENGINE_set_def_BN_mod_exp_crt
227 #undef ENGINE_set_load_privkey_function
228 #define ENGINE_set_load_privkey_function        ENGINE_set_load_privkey_fn
229 #undef ENGINE_get_load_privkey_function
230 #define ENGINE_get_load_privkey_function        ENGINE_get_load_privkey_fn
231 #undef ENGINE_unregister_pkey_asn1_meths
232 #define ENGINE_unregister_pkey_asn1_meths       ENGINE_unreg_pkey_asn1_meths
233 #undef ENGINE_register_all_pkey_asn1_meths
234 #define ENGINE_register_all_pkey_asn1_meths     ENGINE_reg_all_pkey_asn1_meths
235 #undef ENGINE_set_default_pkey_asn1_meths
236 #define ENGINE_set_default_pkey_asn1_meths      ENGINE_set_def_pkey_asn1_meths
237 #undef ENGINE_get_pkey_asn1_meth_engine
238 #define ENGINE_get_pkey_asn1_meth_engine        ENGINE_get_pkey_asn1_meth_eng
239 #undef ENGINE_set_load_ssl_client_cert_function
240 #define ENGINE_set_load_ssl_client_cert_function \
241                                                 ENGINE_set_ld_ssl_clnt_cert_fn
242 #undef ENGINE_get_ssl_client_cert_function
243 #define ENGINE_get_ssl_client_cert_function     ENGINE_get_ssl_client_cert_fn
244
245 /* Hack some long OCSP names */
246 #undef OCSP_REQUEST_get_ext_by_critical
247 #define OCSP_REQUEST_get_ext_by_critical        OCSP_REQUEST_get_ext_by_crit
248 #undef OCSP_BASICRESP_get_ext_by_critical
249 #define OCSP_BASICRESP_get_ext_by_critical      OCSP_BASICRESP_get_ext_by_crit
250 #undef OCSP_SINGLERESP_get_ext_by_critical
251 #define OCSP_SINGLERESP_get_ext_by_critical     OCSP_SINGLERESP_get_ext_by_crit
252
253 /* Hack some long DES names */
254 #undef _ossl_old_des_ede3_cfb64_encrypt
255 #define _ossl_old_des_ede3_cfb64_encrypt        _ossl_odes_ede3_cfb64_encrypt
256 #undef _ossl_old_des_ede3_ofb64_encrypt
257 #define _ossl_old_des_ede3_ofb64_encrypt        _ossl_odes_ede3_ofb64_encrypt
258
259 /* Hack some long EVP names */
260 #undef OPENSSL_add_all_algorithms_noconf
261 #define OPENSSL_add_all_algorithms_noconf       OPENSSL_add_all_algo_noconf
262 #undef OPENSSL_add_all_algorithms_conf
263 #define OPENSSL_add_all_algorithms_conf         OPENSSL_add_all_algo_conf
264 #undef EVP_PKEY_meth_set_verify_recover
265 #define EVP_PKEY_meth_set_verify_recover        EVP_PKEY_meth_set_vrfy_recover
266
267 /* Hack some long EC names */
268 #undef EC_GROUP_set_point_conversion_form
269 #define EC_GROUP_set_point_conversion_form      EC_GROUP_set_point_conv_form
270 #undef EC_GROUP_get_point_conversion_form
271 #define EC_GROUP_get_point_conversion_form      EC_GROUP_get_point_conv_form
272 #undef EC_GROUP_clear_free_all_extra_data
273 #define EC_GROUP_clear_free_all_extra_data      EC_GROUP_clr_free_all_xtra_data
274 #undef EC_KEY_set_public_key_affine_coordinates
275 #define EC_KEY_set_public_key_affine_coordinates \
276                                                 EC_KEY_set_pub_key_aff_coords
277 #undef EC_POINT_set_Jprojective_coordinates_GFp
278 #define EC_POINT_set_Jprojective_coordinates_GFp \
279                                                 EC_POINT_set_Jproj_coords_GFp
280 #undef EC_POINT_get_Jprojective_coordinates_GFp
281 #define EC_POINT_get_Jprojective_coordinates_GFp \
282                                                 EC_POINT_get_Jproj_coords_GFp
283 #undef EC_POINT_set_affine_coordinates_GFp
284 #define EC_POINT_set_affine_coordinates_GFp     EC_POINT_set_affine_coords_GFp
285 #undef EC_POINT_get_affine_coordinates_GFp
286 #define EC_POINT_get_affine_coordinates_GFp     EC_POINT_get_affine_coords_GFp
287 #undef EC_POINT_set_compressed_coordinates_GFp
288 #define EC_POINT_set_compressed_coordinates_GFp EC_POINT_set_compr_coords_GFp
289 #undef EC_POINT_set_affine_coordinates_GF2m
290 #define EC_POINT_set_affine_coordinates_GF2m    EC_POINT_set_affine_coords_GF2m
291 #undef EC_POINT_get_affine_coordinates_GF2m
292 #define EC_POINT_get_affine_coordinates_GF2m    EC_POINT_get_affine_coords_GF2m
293 #undef EC_POINT_set_compressed_coordinates_GF2m
294 #define EC_POINT_set_compressed_coordinates_GF2m \
295                                                 EC_POINT_set_compr_coords_GF2m
296 #undef ec_GF2m_simple_group_clear_finish
297 #define ec_GF2m_simple_group_clear_finish       ec_GF2m_simple_grp_clr_finish
298 #undef ec_GF2m_simple_group_check_discriminant
299 #define ec_GF2m_simple_group_check_discriminant ec_GF2m_simple_grp_chk_discrim
300 #undef ec_GF2m_simple_point_clear_finish
301 #define ec_GF2m_simple_point_clear_finish       ec_GF2m_simple_pt_clr_finish
302 #undef ec_GF2m_simple_point_set_to_infinity
303 #define ec_GF2m_simple_point_set_to_infinity    ec_GF2m_simple_pt_set_to_inf
304 #undef ec_GF2m_simple_points_make_affine
305 #define ec_GF2m_simple_points_make_affine       ec_GF2m_simple_pts_make_affine
306 #undef ec_GF2m_simple_point_set_affine_coordinates
307 #define ec_GF2m_simple_point_set_affine_coordinates \
308                                                 ec_GF2m_smp_pt_set_af_coords
309 #undef ec_GF2m_simple_point_get_affine_coordinates
310 #define ec_GF2m_simple_point_get_affine_coordinates \
311                                                 ec_GF2m_smp_pt_get_af_coords
312 #undef ec_GF2m_simple_set_compressed_coordinates
313 #define ec_GF2m_simple_set_compressed_coordinates \
314                                                 ec_GF2m_smp_set_compr_coords
315 #undef ec_GFp_simple_group_set_curve_GFp
316 #define ec_GFp_simple_group_set_curve_GFp       ec_GFp_simple_grp_set_curve_GFp
317 #undef ec_GFp_simple_group_get_curve_GFp
318 #define ec_GFp_simple_group_get_curve_GFp       ec_GFp_simple_grp_get_curve_GFp
319 #undef ec_GFp_simple_group_clear_finish
320 #define ec_GFp_simple_group_clear_finish        ec_GFp_simple_grp_clear_finish
321 #undef ec_GFp_simple_group_set_generator
322 #define ec_GFp_simple_group_set_generator       ec_GFp_simple_grp_set_generator
323 #undef ec_GFp_simple_group_get0_generator
324 #define ec_GFp_simple_group_get0_generator      ec_GFp_simple_grp_gt0_generator
325 #undef ec_GFp_simple_group_get_cofactor
326 #define ec_GFp_simple_group_get_cofactor        ec_GFp_simple_grp_get_cofactor
327 #undef ec_GFp_simple_point_clear_finish
328 #define ec_GFp_simple_point_clear_finish        ec_GFp_simple_pt_clear_finish
329 #undef ec_GFp_simple_point_set_to_infinity
330 #define ec_GFp_simple_point_set_to_infinity     ec_GFp_simple_pt_set_to_inf
331 #undef ec_GFp_simple_points_make_affine
332 #define ec_GFp_simple_points_make_affine        ec_GFp_simple_pts_make_affine
333 #undef ec_GFp_simple_set_Jprojective_coordinates_GFp
334 #define ec_GFp_simple_set_Jprojective_coordinates_GFp \
335                                                 ec_GFp_smp_set_Jproj_coords_GFp
336 #undef ec_GFp_simple_get_Jprojective_coordinates_GFp
337 #define ec_GFp_simple_get_Jprojective_coordinates_GFp \
338                                                 ec_GFp_smp_get_Jproj_coords_GFp
339 #undef ec_GFp_simple_point_set_affine_coordinates_GFp
340 #define ec_GFp_simple_point_set_affine_coordinates_GFp \
341                                                 ec_GFp_smp_pt_set_af_coords_GFp
342 #undef ec_GFp_simple_point_get_affine_coordinates_GFp
343 #define ec_GFp_simple_point_get_affine_coordinates_GFp \
344                                                 ec_GFp_smp_pt_get_af_coords_GFp
345 #undef ec_GFp_simple_set_compressed_coordinates_GFp
346 #define ec_GFp_simple_set_compressed_coordinates_GFp \
347                                                 ec_GFp_smp_set_compr_coords_GFp
348 #undef ec_GFp_simple_point_set_affine_coordinates
349 #define ec_GFp_simple_point_set_affine_coordinates \
350                                                 ec_GFp_smp_pt_set_af_coords
351 #undef ec_GFp_simple_point_get_affine_coordinates
352 #define ec_GFp_simple_point_get_affine_coordinates \
353                                                 ec_GFp_smp_pt_get_af_coords
354 #undef ec_GFp_simple_set_compressed_coordinates
355 #define ec_GFp_simple_set_compressed_coordinates \
356                                                 ec_GFp_smp_set_compr_coords
357 #undef ec_GFp_simple_group_check_discriminant
358 #define ec_GFp_simple_group_check_discriminant  ec_GFp_simple_grp_chk_discrim
359
360 /* Hack som long STORE names */
361 #undef STORE_method_set_initialise_function
362 #define STORE_method_set_initialise_function    STORE_meth_set_initialise_fn
363 #undef STORE_method_set_cleanup_function
364 #define STORE_method_set_cleanup_function       STORE_meth_set_cleanup_fn
365 #undef STORE_method_set_generate_function
366 #define STORE_method_set_generate_function      STORE_meth_set_generate_fn
367 #undef STORE_method_set_modify_function
368 #define STORE_method_set_modify_function        STORE_meth_set_modify_fn
369 #undef STORE_method_set_revoke_function
370 #define STORE_method_set_revoke_function        STORE_meth_set_revoke_fn
371 #undef STORE_method_set_delete_function
372 #define STORE_method_set_delete_function        STORE_meth_set_delete_fn
373 #undef STORE_method_set_list_start_function
374 #define STORE_method_set_list_start_function    STORE_meth_set_list_start_fn
375 #undef STORE_method_set_list_next_function
376 #define STORE_method_set_list_next_function     STORE_meth_set_list_next_fn
377 #undef STORE_method_set_list_end_function
378 #define STORE_method_set_list_end_function      STORE_meth_set_list_end_fn
379 #undef STORE_method_set_update_store_function
380 #define STORE_method_set_update_store_function  STORE_meth_set_update_store_fn
381 #undef STORE_method_set_lock_store_function
382 #define STORE_method_set_lock_store_function    STORE_meth_set_lock_store_fn
383 #undef STORE_method_set_unlock_store_function
384 #define STORE_method_set_unlock_store_function  STORE_meth_set_unlock_store_fn
385 #undef STORE_method_get_initialise_function
386 #define STORE_method_get_initialise_function    STORE_meth_get_initialise_fn
387 #undef STORE_method_get_cleanup_function
388 #define STORE_method_get_cleanup_function       STORE_meth_get_cleanup_fn
389 #undef STORE_method_get_generate_function
390 #define STORE_method_get_generate_function      STORE_meth_get_generate_fn
391 #undef STORE_method_get_modify_function
392 #define STORE_method_get_modify_function        STORE_meth_get_modify_fn
393 #undef STORE_method_get_revoke_function
394 #define STORE_method_get_revoke_function        STORE_meth_get_revoke_fn
395 #undef STORE_method_get_delete_function
396 #define STORE_method_get_delete_function        STORE_meth_get_delete_fn
397 #undef STORE_method_get_list_start_function
398 #define STORE_method_get_list_start_function    STORE_meth_get_list_start_fn
399 #undef STORE_method_get_list_next_function
400 #define STORE_method_get_list_next_function     STORE_meth_get_list_next_fn
401 #undef STORE_method_get_list_end_function
402 #define STORE_method_get_list_end_function      STORE_meth_get_list_end_fn
403 #undef STORE_method_get_update_store_function
404 #define STORE_method_get_update_store_function  STORE_meth_get_update_store_fn
405 #undef STORE_method_get_lock_store_function
406 #define STORE_method_get_lock_store_function    STORE_meth_get_lock_store_fn
407 #undef STORE_method_get_unlock_store_function
408 #define STORE_method_get_unlock_store_function  STORE_meth_get_unlock_store_fn
409
410 /* Hack some long TS names */
411 #undef TS_RESP_CTX_set_status_info_cond
412 #define TS_RESP_CTX_set_status_info_cond        TS_RESP_CTX_set_stat_info_cond
413 #undef TS_RESP_CTX_set_clock_precision_digits
414 #define TS_RESP_CTX_set_clock_precision_digits  TS_RESP_CTX_set_clk_prec_digits
415 #undef TS_CONF_set_clock_precision_digits
416 #define TS_CONF_set_clock_precision_digits      TS_CONF_set_clk_prec_digits
417
418 /* Hack some long CMS names */
419 #undef CMS_RecipientInfo_ktri_get0_algs
420 #define CMS_RecipientInfo_ktri_get0_algs        CMS_RecipInfo_ktri_get0_algs
421 #undef CMS_RecipientInfo_ktri_get0_signer_id
422 #define CMS_RecipientInfo_ktri_get0_signer_id   CMS_RecipInfo_ktri_get0_sigr_id
423 #undef CMS_OtherRevocationInfoFormat_it
424 #define CMS_OtherRevocationInfoFormat_it        CMS_OtherRevocInfoFormat_it
425 #undef CMS_KeyAgreeRecipientIdentifier_it
426 #define CMS_KeyAgreeRecipientIdentifier_it      CMS_KeyAgreeRecipIdentifier_it
427 #undef CMS_OriginatorIdentifierOrKey_it
428 #define CMS_OriginatorIdentifierOrKey_it        CMS_OriginatorIdOrKey_it
429 #undef cms_SignerIdentifier_get0_signer_id
430 #define cms_SignerIdentifier_get0_signer_id     cms_SignerId_get0_signer_id
431
432 /* Hack some long DTLS1 names */
433 #undef dtls1_retransmit_buffered_messages
434 #define dtls1_retransmit_buffered_messages      dtls1_retransmit_buffered_msgs
435
436 /* Hack some long SRP names */
437 #undef SRP_generate_server_master_secret
438 #define SRP_generate_server_master_secret       SRP_gen_server_master_secret
439 #undef SRP_generate_client_master_secret
440 #define SRP_generate_client_master_secret       SRP_gen_client_master_secret
441
442 /* Hack some long UI names */
443 #undef UI_method_get_prompt_constructor
444 #define UI_method_get_prompt_constructor        UI_method_get_prompt_constructr
445 #undef UI_method_set_prompt_constructor
446 #define UI_method_set_prompt_constructor        UI_method_set_prompt_constructr
447
448 #endif /* defined OPENSSL_SYS_VMS */
449
450
451 /* Case insensitive linking causes problems.... */
452 #if defined(OPENSSL_SYS_VMS) || defined(OPENSSL_SYS_OS2)
453 #undef ERR_load_CRYPTO_strings
454 #define ERR_load_CRYPTO_strings                 ERR_load_CRYPTOlib_strings
455 #undef OCSP_crlID_new
456 #define OCSP_crlID_new                          OCSP_crlID2_new
457
458 #undef d2i_ECPARAMETERS
459 #define d2i_ECPARAMETERS                        d2i_UC_ECPARAMETERS
460 #undef i2d_ECPARAMETERS
461 #define i2d_ECPARAMETERS                        i2d_UC_ECPARAMETERS
462 #undef d2i_ECPKPARAMETERS
463 #define d2i_ECPKPARAMETERS                      d2i_UC_ECPKPARAMETERS
464 #undef i2d_ECPKPARAMETERS
465 #define i2d_ECPKPARAMETERS                      i2d_UC_ECPKPARAMETERS
466
467 /* These functions do not seem to exist!  However, I'm paranoid...
468    Original command in x509v3.h:
469    These functions are being redefined in another directory,
470    and clash when the linker is case-insensitive, so let's
471    hide them a little, by giving them an extra 'o' at the
472    beginning of the name... */
473 #undef X509v3_cleanup_extensions
474 #define X509v3_cleanup_extensions               oX509v3_cleanup_extensions
475 #undef X509v3_add_extension
476 #define X509v3_add_extension                    oX509v3_add_extension
477 #undef X509v3_add_netscape_extensions
478 #define X509v3_add_netscape_extensions          oX509v3_add_netscape_extensions
479 #undef X509v3_add_standard_extensions
480 #define X509v3_add_standard_extensions          oX509v3_add_standard_extensions
481
482 /* This one clashes with CMS_data_create */
483 #undef cms_Data_create
484 #define cms_Data_create                         priv_cms_Data_create
485
486 #endif
487
488
489 #endif /* ! defined HEADER_VMS_IDHACKS_H */