You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

config_crypto.c 2.3KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. /*
  2. * This program is free software; you can redistribute it and/or
  3. * modify it under the terms of the GNU General Public License as
  4. * published by the Free Software Foundation; either version 2 of the
  5. * License, or (at your option) any later version.
  6. *
  7. * This program is distributed in the hope that it will be useful, but
  8. * WITHOUT ANY WARRANTY; without even the implied warranty of
  9. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  10. * General Public License for more details.
  11. *
  12. * You should have received a copy of the GNU General Public License
  13. * along with this program; if not, write to the Free Software
  14. * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
  15. * 02110-1301, USA.
  16. *
  17. * You can also choose to distribute this program under the terms of
  18. * the Unmodified Binary Distribution Licence (as given in the file
  19. * COPYING.UBDL), provided that you have satisfied its requirements.
  20. */
  21. FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
  22. #include <config/crypto.h>
  23. /** @file
  24. *
  25. * Cryptographic configuration
  26. *
  27. * Cryptographic configuration is slightly messy since we need to drag
  28. * in objects based on combinations of build options.
  29. */
  30. PROVIDE_REQUIRING_SYMBOL();
  31. /* RSA and MD5 */
  32. #if defined ( CRYPTO_PUBKEY_RSA ) && defined ( CRYPTO_DIGEST_MD5 )
  33. REQUIRE_OBJECT ( rsa_md5 );
  34. #endif
  35. /* RSA and SHA-1 */
  36. #if defined ( CRYPTO_PUBKEY_RSA ) && defined ( CRYPTO_DIGEST_SHA1 )
  37. REQUIRE_OBJECT ( rsa_sha1 );
  38. #endif
  39. /* RSA and SHA-224 */
  40. #if defined ( CRYPTO_PUBKEY_RSA ) && defined ( CRYPTO_DIGEST_SHA224 )
  41. REQUIRE_OBJECT ( rsa_sha224 );
  42. #endif
  43. /* RSA and SHA-256 */
  44. #if defined ( CRYPTO_PUBKEY_RSA ) && defined ( CRYPTO_DIGEST_SHA256 )
  45. REQUIRE_OBJECT ( rsa_sha256 );
  46. #endif
  47. /* RSA and SHA-384 */
  48. #if defined ( CRYPTO_PUBKEY_RSA ) && defined ( CRYPTO_DIGEST_SHA384 )
  49. REQUIRE_OBJECT ( rsa_sha384 );
  50. #endif
  51. /* RSA and SHA-512 */
  52. #if defined ( CRYPTO_PUBKEY_RSA ) && defined ( CRYPTO_DIGEST_SHA512 )
  53. REQUIRE_OBJECT ( rsa_sha512 );
  54. #endif
  55. /* RSA, AES-CBC, and SHA-1 */
  56. #if defined ( CRYPTO_PUBKEY_RSA ) && defined ( CRYPTO_CIPHER_AES_CBC ) && \
  57. defined ( CRYPTO_DIGEST_SHA1 )
  58. REQUIRE_OBJECT ( rsa_aes_cbc_sha1 );
  59. #endif
  60. /* RSA, AES-CBC, and SHA-256 */
  61. #if defined ( CRYPTO_PUBKEY_RSA ) && defined ( CRYPTO_CIPHER_AES_CBC ) && \
  62. defined ( CRYPTO_DIGEST_SHA256 )
  63. REQUIRE_OBJECT ( rsa_aes_cbc_sha256 );
  64. #endif