mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-08-04 21:24:43 +02:00
fedora crypto-policies: initial support.
This commit is contained in:
@@ -1168,7 +1168,7 @@ static int ClientWriteRead(WOLFSSL* ssl, const char* msg, int msgSz,
|
||||
/* 4. add the same message into Japanese section */
|
||||
/* (will be translated later) */
|
||||
/* 5. add printf() into suitable position of Usage() */
|
||||
static const char* client_usage_msg[][77] = {
|
||||
static const char* client_usage_msg[][78] = {
|
||||
/* English */
|
||||
{
|
||||
" NOTE: All files relative to wolfSSL home dir\n", /* 0 */
|
||||
@@ -1404,9 +1404,12 @@ static const char* client_usage_msg[][77] = {
|
||||
"--rpk Use RPK for the defined certificates\n", /* 74 */
|
||||
#endif
|
||||
"--files-are-der Specified files are in DER, not PEM format\n", /* 75 */
|
||||
#ifdef WOLFSSL_SYS_CRYPTO_POLICY
|
||||
"--crypto-policy <path to crypto policy file>\n", /* 76 */
|
||||
#endif
|
||||
"\n"
|
||||
"For simpler wolfSSL TLS client examples, visit\n"
|
||||
"https://github.com/wolfSSL/wolfssl-examples/tree/master/tls\n", /* 76 */
|
||||
"https://github.com/wolfSSL/wolfssl-examples/tree/master/tls\n", /* 77 */
|
||||
NULL,
|
||||
},
|
||||
#ifndef NO_MULTIBYTE_PRINT
|
||||
@@ -1649,10 +1652,13 @@ static const char* client_usage_msg[][77] = {
|
||||
"--rpk Use RPK for the defined certificates\n", /* 74 */
|
||||
#endif
|
||||
"--files-are-der Specified files are in DER, not PEM format\n", /* 75 */
|
||||
#ifdef WOLFSSL_SYS_CRYPTO_POLICY
|
||||
"--crypto-policy <path to crypto policy file>\n", /* 76 */
|
||||
#endif
|
||||
"\n"
|
||||
"より簡単なwolfSSL TLS クライアントの例については"
|
||||
"下記にアクセスしてください\n"
|
||||
"https://github.com/wolfSSL/wolfssl-examples/tree/master/tls\n", /* 76 */
|
||||
"https://github.com/wolfSSL/wolfssl-examples/tree/master/tls\n", /* 77 */
|
||||
NULL,
|
||||
},
|
||||
#endif
|
||||
@@ -2069,6 +2075,9 @@ THREAD_RETURN WOLFSSL_THREAD client_test(void* args)
|
||||
{ "rpk", 0, 267 },
|
||||
#endif /* HAVE_RPK */
|
||||
{ "files-are-der", 0, 268 },
|
||||
#if defined(WOLFSSL_SYS_CRYPTO_POLICY)
|
||||
{ "crypto-policy", 1, 269 },
|
||||
#endif /* WOLFSSL_SYS_CRYPTO_POLICY */
|
||||
{ 0, 0, 0 }
|
||||
};
|
||||
#endif
|
||||
@@ -2213,6 +2222,10 @@ THREAD_RETURN WOLFSSL_THREAD client_test(void* args)
|
||||
int useRPK = 0;
|
||||
#endif /* HAVE_RPK */
|
||||
int fileFormat = WOLFSSL_FILETYPE_PEM;
|
||||
#if defined(WOLFSSL_SYS_CRYPTO_POLICY)
|
||||
const char * policy = NULL;
|
||||
#endif /* WOLFSSL_SYS_CRYPTO_POLICY */
|
||||
|
||||
|
||||
char buffer[WOLFSSL_MAX_ERROR_SZ];
|
||||
|
||||
@@ -2932,6 +2945,12 @@ THREAD_RETURN WOLFSSL_THREAD client_test(void* args)
|
||||
case 268:
|
||||
fileFormat = WOLFSSL_FILETYPE_ASN1;
|
||||
break;
|
||||
case 269:
|
||||
#if defined(WOLFSSL_SYS_CRYPTO_POLICY)
|
||||
policy = myoptarg;
|
||||
#endif /* WOLFSSL_SYS_CRYPTO_POLICY */
|
||||
break;
|
||||
|
||||
default:
|
||||
Usage();
|
||||
XEXIT_T(MY_EX_USAGE);
|
||||
@@ -3159,6 +3178,13 @@ THREAD_RETURN WOLFSSL_THREAD client_test(void* args)
|
||||
if (method == NULL)
|
||||
err_sys("unable to get method");
|
||||
|
||||
#if defined(WOLFSSL_SYS_CRYPTO_POLICY)
|
||||
if (policy != NULL) {
|
||||
if (wolfSSL_crypto_policy_enable(policy) != WOLFSSL_SUCCESS) {
|
||||
err_sys("wolfSSL_crypto_policy_enable failed");
|
||||
}
|
||||
}
|
||||
#endif /* WOLFSSL_SYS_CRYPTO_POLICY */
|
||||
|
||||
#ifdef WOLFSSL_STATIC_MEMORY
|
||||
#if defined(DEBUG_WOLFSSL) && !defined(WOLFSSL_STATIC_MEMORY_LEAN)
|
||||
@@ -4821,7 +4847,6 @@ exit:
|
||||
{
|
||||
func_args args;
|
||||
|
||||
|
||||
StartTCP();
|
||||
|
||||
#if defined(WOLFSSL_SRTP) && defined(WOLFSSL_COND)
|
||||
|
1
examples/crypto_policies/default/wolfssl.txt
Normal file
1
examples/crypto_policies/default/wolfssl.txt
Normal file
@@ -0,0 +1 @@
|
||||
@SECLEVEL=2:EECDH:kRSA:EDH:PSK:DHEPSK:ECDHEPSK:RSAPSK:!RC4:!eNULL:!aNULL
|
1
examples/crypto_policies/future/wolfssl.txt
Normal file
1
examples/crypto_policies/future/wolfssl.txt
Normal file
@@ -0,0 +1 @@
|
||||
@SECLEVEL=3:EECDH:EDH:PSK:DHEPSK:ECDHEPSK:!RSAPSK:!kRSA:!AES128:!RC4:!eNULL:!aNULL:!SHA1
|
1
examples/crypto_policies/legacy/wolfssl.txt
Normal file
1
examples/crypto_policies/legacy/wolfssl.txt
Normal file
@@ -0,0 +1 @@
|
||||
@SECLEVEL=1:EECDH:kRSA:EDH:PSK:DHEPSK:ECDHEPSK:RSAPSK:!eNULL:!aNULL
|
@@ -873,7 +873,7 @@ static void SetKeyShare(WOLFSSL* ssl, int onlyKeyShare, int useX25519,
|
||||
/* 4. add the same message into Japanese section */
|
||||
/* (will be translated later) */
|
||||
/* 5. add printf() into suitable position of Usage() */
|
||||
static const char* server_usage_msg[][65] = {
|
||||
static const char* server_usage_msg[][66] = {
|
||||
/* English */
|
||||
{
|
||||
" NOTE: All files relative to wolfSSL home dir\n", /* 0 */
|
||||
@@ -1056,11 +1056,14 @@ static const char* server_usage_msg[][65] = {
|
||||
#ifdef WOLFSSL_DUAL_ALG_CERTS
|
||||
"--altPrivKey <file> Generate alternative signature with this key.\n",
|
||||
/* 65 */
|
||||
#endif
|
||||
#ifdef WOLFSSL_SYS_CRYPTO_POLICY
|
||||
"--crypto-policy <path to crypto policy file>\n", /* 66 */
|
||||
#endif
|
||||
"\n"
|
||||
"For simpler wolfSSL TLS server examples, visit\n"
|
||||
"https://github.com/wolfSSL/wolfssl-examples/tree/master/tls\n",
|
||||
/* 66 */
|
||||
/* 67 */
|
||||
NULL,
|
||||
},
|
||||
#ifndef NO_MULTIBYTE_PRINT
|
||||
@@ -1261,12 +1264,15 @@ static const char* server_usage_msg[][65] = {
|
||||
#ifdef WOLFSSL_DUAL_ALG_CERTS
|
||||
"--altPrivKey <file> Generate alternative signature with this key.\n",
|
||||
/* 65 */
|
||||
#endif
|
||||
#ifdef WOLFSSL_SYS_CRYPTO_POLICY
|
||||
"--crypto-policy <path to crypto policy file>\n", /* 66 */
|
||||
#endif
|
||||
"\n"
|
||||
"より簡単なwolfSSL TSL クライアントの例については"
|
||||
"下記にアクセスしてください\n"
|
||||
"https://github.com/wolfSSL/wolfssl-examples/tree/master/tls\n",
|
||||
/* 66 */
|
||||
/* 67 */
|
||||
NULL,
|
||||
},
|
||||
#endif
|
||||
@@ -1545,6 +1551,9 @@ THREAD_RETURN WOLFSSL_THREAD server_test(void* args)
|
||||
#ifdef WOLFSSL_DUAL_ALG_CERTS
|
||||
{ "altPrivKey", 1, 267},
|
||||
#endif
|
||||
#if defined(WOLFSSL_SYS_CRYPTO_POLICY)
|
||||
{ "crypto-policy", 1, 268 },
|
||||
#endif /* WOLFSSL_SYS_CRYPTO_POLICY */
|
||||
{ 0, 0, 0 }
|
||||
};
|
||||
#endif
|
||||
@@ -1669,6 +1678,9 @@ THREAD_RETURN WOLFSSL_THREAD server_test(void* args)
|
||||
#if defined(HAVE_CRL) && !defined(NO_FILESYSTEM)
|
||||
char* crlDir = NULL;
|
||||
#endif
|
||||
#if defined(WOLFSSL_SYS_CRYPTO_POLICY)
|
||||
const char * policy = NULL;
|
||||
#endif /* WOLFSSL_SYS_CRYPTO_POLICY */
|
||||
|
||||
#ifdef WOLFSSL_STATIC_MEMORY
|
||||
/* Note: Actual memory used is much less, this is the entire buffer buckets,
|
||||
@@ -2438,6 +2450,11 @@ THREAD_RETURN WOLFSSL_THREAD server_test(void* args)
|
||||
altPrivKey = myoptarg;
|
||||
break;
|
||||
#endif
|
||||
case 268:
|
||||
#if defined(WOLFSSL_SYS_CRYPTO_POLICY)
|
||||
policy = myoptarg;
|
||||
#endif /* WOLFSSL_SYS_CRYPTO_POLICY */
|
||||
break;
|
||||
|
||||
case -1:
|
||||
default:
|
||||
@@ -2592,6 +2609,14 @@ THREAD_RETURN WOLFSSL_THREAD server_test(void* args)
|
||||
if (method == NULL)
|
||||
err_sys_ex(runWithErrors, "unable to get method");
|
||||
|
||||
#if defined(WOLFSSL_SYS_CRYPTO_POLICY)
|
||||
if (policy != NULL) {
|
||||
if (wolfSSL_crypto_policy_enable(policy) != WOLFSSL_SUCCESS) {
|
||||
err_sys("wolfSSL_crypto_policy_enable failed");
|
||||
}
|
||||
}
|
||||
#endif /* WOLFSSL_SYS_CRYPTO_POLICY */
|
||||
|
||||
#ifdef WOLFSSL_STATIC_MEMORY
|
||||
#if defined(DEBUG_WOLFSSL) && !defined(WOLFSSL_STATIC_MEMORY_LEAN)
|
||||
/* print off helper buffer sizes for use with static memory
|
||||
|
Reference in New Issue
Block a user