Commit 4978ecb2 authored by Pauli's avatar Pauli
Browse files

Add a compile time test to verify that openssl/rsa.h and complex.h can


coexist.

Reviewed-by: default avatarTim Hudson <tjh@openssl.org>
Reviewed-by: default avatarRichard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/7233)

(cherry picked from commit da5fac72b1cba5651b871902eea234e693cf01e5)
parent 9b977afc
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -59,6 +59,7 @@ Makefile
/test/v3ext
/test/versions
/test/ossl_shim/ossl_shim
/test/rsa_complex

# Certain files that get created by tests on the fly
/test/test-runs
+4 −1
Original line number Diff line number Diff line
@@ -26,7 +26,7 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN
  PROGRAMS_NO_INST=\
          versions \
          aborttest test_test \
          sanitytest exdatatest bntest \
          sanitytest rsa_complex exdatatest bntest \
          ectest ecstresstest ecdsatest gmdifftest pbelutest ideatest \
          md2test \
          hmactest \
@@ -64,6 +64,9 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN
  INCLUDE[sanitytest]=../include
  DEPEND[sanitytest]=../libcrypto libtestutil.a

  SOURCE[rsa_complex]=rsa_complex.c
  INCLUDE[rsa_complex]=../include

  SOURCE[test_test]=test_test.c
  INCLUDE[test_test]=../include
  DEPEND[test_test]=../libcrypto libtestutil.a

test/rsa_complex.c

0 → 100644
+27 −0
Original line number Diff line number Diff line
/*
 * Copyright 2018 The OpenSSL Project Authors. All Rights Reserved.
 *
 * Licensed under the OpenSSL license (the "License").  You may not use
 * this file except in compliance with the License.  You can obtain a copy
 * in the file LICENSE in the source distribution or at
 * https://www.openssl.org/source/license.html
 */

/*
 * Check to see if there is a conflict between complex.h and openssl/rsa.h.
 * The former defines "I" as a macro and earlier versions of the latter use
 * for function arguments.
 */
#if defined(__STDC_VERSION__)
# if __STDC_VERSION__ >= 199901L
#  include <complex.h>
# endif
#endif
#include <openssl/rsa.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
    /* There are explicitly no run time checks for this one */
    return EXIT_SUCCESS;
}