NO_MULTIBYTE for multibyte non-supported IDEs

This commit is contained in:
Takashi Kojo
2018-11-26 08:11:31 +09:00
parent 4bf61a81e4
commit c529e011a7
4 changed files with 194 additions and 180 deletions

View File

@ -35,6 +35,7 @@
#define WOLFSSL_CURRTIME_OSTICK /* use OS tich for current_time */ #define WOLFSSL_CURRTIME_OSTICK /* use OS tich for current_time */
#define WOLFSSL_GMTIME #define WOLFSSL_GMTIME
#define NO_MULTIBYTE
// <<< Use Configuration Wizard in Context Menu >>> // <<< Use Configuration Wizard in Context Menu >>>

View File

@ -258,11 +258,13 @@ static const char* client_bench_conmsg[][5] = {
"wolfSSL_connect avg took:", "milliseconds\n", "wolfSSL_connect avg took:", "milliseconds\n",
NULL NULL
}, },
#ifndef NO_MULTIBYTE
/* Japanese */ /* Japanese */
{ {
"wolfSSL_resume 平均時間:", "ミリ秒\n", "wolfSSL_resume 平均時間:", "ミリ秒\n",
"wolfSSL_connect 平均時間:", "ミリ秒\n", "wolfSSL_connect 平均時間:", "ミリ秒\n",
} }
#endif
}; };
static int ClientBenchmarkConnections(WOLFSSL_CTX* ctx, char* host, word16 port, static int ClientBenchmarkConnections(WOLFSSL_CTX* ctx, char* host, word16 port,
@ -817,280 +819,281 @@ static const char* client_usage_msg[][59] = {
"INFINITE\n", /* 2 */ "INFINITE\n", /* 2 */
#endif #endif
"-? <num> Help, print this usage\n" "-? <num> Help, print this usage\n"
" 0: English, 1: Japanese\n", /* 3 */ " 0: English, 1: Japanese\n", /* 3 */
"-h <host> Host to connect to, default", /* 4 */ "-h <host> Host to connect to, default", /* 4 */
"-p <num> Port to connect on, not 0, default", /* 5 */ "-p <num> Port to connect on, not 0, default", /* 5 */
#ifndef WOLFSSL_TLS13 #ifndef WOLFSSL_TLS13
"-v <num> SSL version [0-3], SSLv3(0) - TLS1.2(3)), default", /* 6 */ "-v <num> SSL version [0-3], SSLv3(0) - TLS1.2(3)), default", /* 6 */
"-V Prints valid ssl version numbers" "-V Prints valid ssl version numbers"
", SSLv3(0) - TLS1.2(3)\n", /* 7 */ ", SSLv3(0) - TLS1.2(3)\n", /* 7 */
#else #else
"-v <num> SSL version [0-4], SSLv3(0) - TLS1.3(4)), default", /* 6 */ "-v <num> SSL version [0-4], SSLv3(0) - TLS1.3(4)), default", /* 6 */
"-V Prints valid ssl version numbers," "-V Prints valid ssl version numbers,"
" SSLv3(0) - TLS1.3(4)\n", /* 7 */ " SSLv3(0) - TLS1.3(4)\n", /* 7 */
#endif #endif
"-l <str> Cipher suite list (: delimited)\n", /* 8 */ "-l <str> Cipher suite list (: delimited)\n", /* 8 */
"-c <file> Certificate file, default", /* 9 */ "-c <file> Certificate file, default", /* 9 */
"-k <file> Key file, default", /* 10 */ "-k <file> Key file, default", /* 10 */
"-A <file> Certificate Authority file, default", /* 11 */ "-A <file> Certificate Authority file, default", /* 11 */
#ifndef NO_DH #ifndef NO_DH
"-Z <num> Minimum DH key bits, default", /* 12 */ "-Z <num> Minimum DH key bits, default", /* 12 */
#endif #endif
"-b <num> Benchmark <num> connections and print stats\n", /* 13 */ "-b <num> Benchmark <num> connections and print stats\n", /* 13 */
#ifdef HAVE_ALPN #ifdef HAVE_ALPN
"-L <str> Application-Layer Protocol" "-L <str> Application-Layer Protocol"
" Negotiation ({C,F}:<list>)\n", /* 14 */ " Negotiation ({C,F}:<list>)\n", /* 14 */
#endif #endif
"-B <num> Benchmark throughput" "-B <num> Benchmark throughput"
" using <num> bytes and print stats\n", /* 15 */ " using <num> bytes and print stats\n", /* 15 */
"-s Use pre Shared keys\n", /* 16 */ "-s Use pre Shared keys\n", /* 16 */
"-d Disable peer checks\n", /* 17 */ "-d Disable peer checks\n", /* 17 */
"-D Override Date Errors example\n", /* 18 */ "-D Override Date Errors example\n", /* 18 */
"-e List Every cipher suite available, \n", /* 19 */ "-e List Every cipher suite available, \n", /* 19 */
"-g Send server HTTP GET\n", /* 20 */ "-g Send server HTTP GET\n", /* 20 */
"-u Use UDP DTLS," "-u Use UDP DTLS,"
" add -v 2 for DTLSv1, -v 3 for DTLSv1.2 (default)\n", /* 21 */ " add -v 2 for DTLSv1, -v 3 for DTLSv1.2 (default)\n", /* 21 */
#ifdef WOLFSSL_SCTP #ifdef WOLFSSL_SCTP
"-G Use SCTP DTLS," "-G Use SCTP DTLS,"
" add -v 2 for DTLSv1, -v 3 for DTLSv1.2 (default)\n", /* 22 */ " add -v 2 for DTLSv1, -v 3 for DTLSv1.2 (default)\n", /* 22 */
#endif #endif
"-m Match domain name in cert\n", /* 23 */ "-m Match domain name in cert\n", /* 23 */
"-N Use Non-blocking sockets\n", /* 24 */ "-N Use Non-blocking sockets\n", /* 24 */
#ifndef NO_SESSION_CACHE #ifndef NO_SESSION_CACHE
"-r Resume session\n", /* 25 */ "-r Resume session\n", /* 25 */
#endif
"-w Wait for bidirectional shutdown\n", /* 26 */
"-M <prot> Use STARTTLS, using <prot> protocol (smtp)\n", /* 27 */
#ifdef HAVE_SECURE_RENEGOTIATION
"-R Allow Secure Renegotiation\n", /* 28 */
"-i Force client Initiated Secure Renegotiation\n", /* 29 */
#endif #endif
"-f Fewer packets/group messages\n", /* 30 */ "-w Wait for bidirectional shutdown\n", /* 26 */
"-x Disable client cert/key loading\n", /* 31 */ "-M <prot> Use STARTTLS, using <prot> protocol (smtp)\n", /* 27 */
"-X Driven by eXternal test case\n", /* 32 */ #ifdef HAVE_SECURE_RENEGOTIATION
"-j Use verify callback override\n", /* 33 */ "-R Allow Secure Renegotiation\n", /* 28 */
"-i Force client Initiated Secure Renegotiation\n", /* 29 */
#endif
"-f Fewer packets/group messages\n", /* 30 */
"-x Disable client cert/key loading\n", /* 31 */
"-X Driven by eXternal test case\n", /* 32 */
"-j Use verify callback override\n", /* 33 */
#ifdef SHOW_SIZES #ifdef SHOW_SIZES
"-z Print structure sizes\n", /* 34 */ "-z Print structure sizes\n", /* 34 */
#endif #endif
#ifdef HAVE_SNI #ifdef HAVE_SNI
"-S <str> Use Host Name Indication\n", /* 35 */ "-S <str> Use Host Name Indication\n", /* 35 */
#endif #endif
#ifdef HAVE_MAX_FRAGMENT #ifdef HAVE_MAX_FRAGMENT
"-F <num> Use Maximum Fragment Length [1-6]\n", /* 36 */ "-F <num> Use Maximum Fragment Length [1-6]\n", /* 36 */
#endif #endif
#ifdef HAVE_TRUNCATED_HMAC #ifdef HAVE_TRUNCATED_HMAC
"-T Use Truncated HMAC\n", /* 37 */ "-T Use Truncated HMAC\n", /* 37 */
#endif #endif
#ifdef HAVE_EXTENDED_MASTER #ifdef HAVE_EXTENDED_MASTER
"-n Disable Extended Master Secret\n", /* 38 */ "-n Disable Extended Master Secret\n", /* 38 */
#endif #endif
#ifdef HAVE_OCSP #ifdef HAVE_OCSP
"-o Perform OCSP lookup on peer certificate\n", /* 39 */ "-o Perform OCSP lookup on peer certificate\n", /* 39 */
"-O <url> Perform OCSP lookup using <url> as responder\n", /* 40 */ "-O <url> Perform OCSP lookup using <url> as responder\n", /* 40 */
#endif #endif
#if defined(HAVE_CERTIFICATE_STATUS_REQUEST) \ #if defined(HAVE_CERTIFICATE_STATUS_REQUEST) \
|| defined(HAVE_CERTIFICATE_STATUS_REQUEST_V2) || defined(HAVE_CERTIFICATE_STATUS_REQUEST_V2)
"-W <num> Use OCSP Stapling (1 v1, 2 v2, 3 v2 multi)\n", /* 41 */ "-W <num> Use OCSP Stapling (1 v1, 2 v2, 3 v2 multi)\n", /* 41 */
#endif #endif
#ifdef ATOMIC_USER #ifdef ATOMIC_USER
"-U Atomic User Record Layer Callbacks\n", /* 42 */ "-U Atomic User Record Layer Callbacks\n", /* 42 */
#endif #endif
#ifdef HAVE_PK_CALLBACKS #ifdef HAVE_PK_CALLBACKS
"-P Public Key Callbacks\n", /* 43 */ "-P Public Key Callbacks\n", /* 43 */
#endif #endif
#ifdef HAVE_ANON #ifdef HAVE_ANON
"-a Anonymous client\n", /* 44 */ "-a Anonymous client\n", /* 44 */
#endif #endif
#ifdef HAVE_CRL #ifdef HAVE_CRL
"-C Disable CRL\n", /* 45 */ "-C Disable CRL\n", /* 45 */
#endif #endif
#ifdef WOLFSSL_TRUST_PEER_CERT #ifdef WOLFSSL_TRUST_PEER_CERT
"-E <file> Path to load trusted peer cert\n", /* 46 */ "-E <file> Path to load trusted peer cert\n", /* 46 */
#endif #endif
#ifdef HAVE_WNR #ifdef HAVE_WNR
"-q <file> Whitewood config file, defaults\n", /* 47 */ "-q <file> Whitewood config file, defaults\n", /* 47 */
#endif #endif
"-H <arg> Internal tests" "-H <arg> Internal tests"
" [defCipherList, exitWithRet, verifyFail]\n", /* 48 */ " [defCipherList, exitWithRet, verifyFail]\n", /* 48 */
#ifdef WOLFSSL_TLS13 #ifdef WOLFSSL_TLS13
"-J Use HelloRetryRequest to choose group for KE\n", /* 49 */ "-J Use HelloRetryRequest to choose group for KE\n", /* 49 */
"-K Key Exchange for PSK not using (EC)DHE\n", /* 50 */ "-K Key Exchange for PSK not using (EC)DHE\n", /* 50 */
"-I Update keys and IVs before sending data\n", /* 51 */ "-I Update keys and IVs before sending data\n", /* 51 */
#ifndef NO_DH #ifndef NO_DH
"-y Key Share with FFDHE named groups only\n", /* 52 */ "-y Key Share with FFDHE named groups only\n", /* 52 */
#endif #endif
#ifdef HAVE_ECC #ifdef HAVE_ECC
"-Y Key Share with ECC named groups only\n", /* 53 */ "-Y Key Share with ECC named groups only\n", /* 53 */
#endif #endif
#endif /* WOLFSSL_TLS13 */ #endif /* WOLFSSL_TLS13 */
#ifdef HAVE_CURVE25519 #ifdef HAVE_CURVE25519
"-t Use X25519 for key exchange\n", /* 54 */ "-t Use X25519 for key exchange\n", /* 54 */
#endif #endif
#if defined(WOLFSSL_TLS13) && defined(WOLFSSL_POST_HANDSHAKE_AUTH) #if defined(WOLFSSL_TLS13) && defined(WOLFSSL_POST_HANDSHAKE_AUTH)
"-Q Support requesting certificate post-handshake\n", /* 55 */ "-Q Support requesting certificate post-handshake\n", /* 55 */
#endif #endif
#ifdef WOLFSSL_EARLY_DATA #ifdef WOLFSSL_EARLY_DATA
"-0 Early data sent to server (0-RTT handshake)\n", /* 56 */ "-0 Early data sent to server (0-RTT handshake)\n", /* 56 */
#endif #endif
#ifdef WOLFSSL_MULTICAST #ifdef WOLFSSL_MULTICAST
"-3 <grpid> Multicast, grpid < 256\n", /* 57 */ "-3 <grpid> Multicast, grpid < 256\n", /* 57 */
#endif #endif
"-1 <num> Display a result by specified language.\n" "-1 <num> Display a result by specified language.\n"
" 0: English, 1: Japanese\n", /* 58 */ " 0: English, 1: Japanese\n", /* 58 */
NULL, NULL,
}, },
#ifndef NO_MULTIBYTE
/* Japanese */ /* Japanese */
{ {
" 注意 : 全てのファイルは wolfSSL ホーム・ディレクトリからの相対です。" " 注意 : 全てのファイルは wolfSSL ホーム・ディレクトリからの相対です。"
"\n", /* 0 */ "\n", /* 0 */
"RSAの最大ビットは次のように設定されています: ", /* 1 */ "RSAの最大ビットは次のように設定されています: ", /* 1 */
#ifdef NO_RSA #ifdef NO_RSA
"RSAはサポートされていません。\n", /* 2 */ "RSAはサポートされていません。\n", /* 2 */
#elif defined(WOLFSSL_SP_MATH) /* case of SP math only */ #elif defined(WOLFSSL_SP_MATH) /* case of SP math only */
#ifndef WOLFSSL_SP_NO_3072 #ifndef WOLFSSL_SP_NO_3072
"3072\n", /* 2 */ "3072\n", /* 2 */
#elif !defined(WOLFSSL_SP_NO_2048) #elif !defined(WOLFSSL_SP_NO_2048)
"2048\n", /* 2 */ "2048\n", /* 2 */
#else #else
"0\n", /* 2 */ "0\n", /* 2 */
#endif #endif
#elif defined(USE_FAST_MATH) #elif defined(USE_FAST_MATH)
#else #else
"無限\n", /* 2 */ "無限\n", /* 2 */
#endif #endif
"-? <num> ヘルプ, 使い方を表示\n" "-? <num> ヘルプ, 使い方を表示\n"
" 0: 英語、 1: 日本語\n", /* 3 */ " 0: 英語、 1: 日本語\n", /* 3 */
"-h <host> 接続先ホスト, 既定値", /* 4 */ "-h <host> 接続先ホスト, 既定値", /* 4 */
"-p <num> 接続先ポート, 0は無効, 既定値", /* 5 */ "-p <num> 接続先ポート, 0は無効, 既定値", /* 5 */
#ifndef WOLFSSL_TLS13 #ifndef WOLFSSL_TLS13
"-v <num> SSL バージョン [0-3], SSLv3(0) - TLS1.2(3))," "-v <num> SSL バージョン [0-3], SSLv3(0) - TLS1.2(3)),"
" 既定値", /* 6 */ " 既定値", /* 6 */
"-V 有効な ssl バージョン番号を出力, SSLv3(0) -" "-V 有効な ssl バージョン番号を出力, SSLv3(0) -"
" TLS1.2(3)\n", /* 7 */ " TLS1.2(3)\n", /* 7 */
#else #else
"-v <num> SSL バージョン [0-4], SSLv3(0) - TLS1.3(4))," "-v <num> SSL バージョン [0-4], SSLv3(0) - TLS1.3(4)),"
" 既定値", /* 6 */ " 既定値", /* 6 */
"-V 有効な ssl バージョン番号を出力, SSLv3(0) -" "-V 有効な ssl バージョン番号を出力, SSLv3(0) -"
" TLS1.3(4)\n", /* 7 */ " TLS1.3(4)\n", /* 7 */
#endif #endif
"-l <str> 暗号スイートリスト (区切り文字 :)\n", /* 8 */ "-l <str> 暗号スイートリスト (区切り文字 :)\n", /* 8 */
"-c <file> 証明書ファイル, 既定値", /* 9 */ "-c <file> 証明書ファイル, 既定値", /* 9 */
"-k <file> 鍵ファイル, 既定値", /* 10 */ "-k <file> 鍵ファイル, 既定値", /* 10 */
"-A <file> 認証局ファイル, 既定値", /* 11 */ "-A <file> 認証局ファイル, 既定値", /* 11 */
#ifndef NO_DH #ifndef NO_DH
"-Z <num> 最小 DH 鍵 ビット, 既定値", /* 12 */ "-Z <num> 最小 DH 鍵 ビット, 既定値", /* 12 */
#endif #endif
"-b <num> ベンチマーク <num> 接続及び結果出力する\n", /* 13 */ "-b <num> ベンチマーク <num> 接続及び結果出力する\n", /* 13 */
#ifdef HAVE_ALPN #ifdef HAVE_ALPN
"-L <str> アプリケーション層プロトコルネゴシエーションを行う" "-L <str> アプリケーション層プロトコルネゴシエーションを行う"
" ({C,F}:<list>)\n", /* 14 */ " ({C,F}:<list>)\n", /* 14 */
#endif #endif
"-B <num> <num> バイトを用いてのベンチマーク・スループット測定" "-B <num> <num> バイトを用いてのベンチマーク・スループット測定"
"と結果を出力する\n", /* 15 */ "と結果を出力する\n", /* 15 */
"-s 事前共有鍵を使用する\n", /* 16 */ "-s 事前共有鍵を使用する\n", /* 16 */
"-d ピア確認を無効とする\n", /* 17 */ "-d ピア確認を無効とする\n", /* 17 */
"-D 日付エラー用コールバック例の上書きを行う\n", /* 18 */ "-D 日付エラー用コールバック例の上書きを行う\n", /* 18 */
"-e 利用可能な全ての暗号スイートをリスト, \n", /* 19 */ "-e 利用可能な全ての暗号スイートをリスト, \n", /* 19 */
"-g サーバーへ HTTP GET を送信\n", /* 20 */ "-g サーバーへ HTTP GET を送信\n", /* 20 */
"-u UDP DTLSを使用する。-v 2 を追加指定すると" "-u UDP DTLSを使用する。-v 2 を追加指定すると"
" DTLSv1, -v 3 を追加指定すると DTLSv1.2 (既定値)\n", /* 21 */ " DTLSv1, -v 3 を追加指定すると DTLSv1.2 (既定値)\n", /* 21 */
#ifdef WOLFSSL_SCTP #ifdef WOLFSSL_SCTP
"-G SCTP DTLSを使用する。-v 2 を追加指定すると" "-G SCTP DTLSを使用する。-v 2 を追加指定すると"
" DTLSv1, -v 3 を追加指定すると DTLSv1.2 (既定値)\n", /* 22 */ " DTLSv1, -v 3 を追加指定すると DTLSv1.2 (既定値)\n", /* 22 */
#endif #endif
"-m 証明書内のドメイン名一致を確認する\n", /* 23 */ "-m 証明書内のドメイン名一致を確認する\n", /* 23 */
"-N ノンブロッキング・ソケットを使用する\n", /* 24 */ "-N ノンブロッキング・ソケットを使用する\n", /* 24 */
#ifndef NO_SESSION_CACHE #ifndef NO_SESSION_CACHE
"-r セッションを継続する\n", /* 25 */ "-r セッションを継続する\n", /* 25 */
#endif
"-w 双方向シャットダウンを待つ\n", /* 26 */
"-M <prot> STARTTLSを使用する, <prot>プロトコル(smtp)を"
"使用する\n", /* 27 */
#ifdef HAVE_SECURE_RENEGOTIATION
"-R セキュアな再ネゴシエーションを許可する\n", /* 28 */
"-i クライアント主導のネゴシエーションを強制する\n", /* 29 */
#endif #endif
"-f より少ないパケット/グループメッセージを使用する\n",/* 30 */ "-w 双方向シャットダウンを待つ\n", /* 26 */
"-x クライアントの証明書/鍵のロードを無効する\n", /* 31 */ "-M <prot> STARTTLSを使用する, <prot>プロトコル(smtp)を"
"-X 外部テスト・ケースにより動作する\n", /* 32 */ "使用する\n", /* 27 */
"-j コールバック・オーバーライドの検証を使用する\n", /* 33 */ #ifdef HAVE_SECURE_RENEGOTIATION
"-R セキュアな再ネゴシエーションを許可する\n", /* 28 */
"-i クライアント主導のネゴシエーションを強制する\n", /* 29 */
#endif
"-f より少ないパケット/グループメッセージを使用する\n", /* 30 */
"-x クライアントの証明書/鍵のロードを無効する\n", /* 31 */
"-X 外部テスト・ケースにより動作する\n", /* 32 */
"-j コールバック・オーバーライドの検証を使用する\n", /* 33 */
#ifdef SHOW_SIZES #ifdef SHOW_SIZES
"-z 構造体のサイズを表示する\n", /* 34 */ "-z 構造体のサイズを表示する\n", /* 34 */
#endif #endif
#ifdef HAVE_SNI #ifdef HAVE_SNI
"-S <str> ホスト名表示を使用する\n", /* 35 */ "-S <str> ホスト名表示を使用する\n", /* 35 */
#endif #endif
#ifdef HAVE_MAX_FRAGMENT #ifdef HAVE_MAX_FRAGMENT
"-F <num> 最大フラグメント長[1-6]を設定する\n", /* 36 */ "-F <num> 最大フラグメント長[1-6]を設定する\n", /* 36 */
#endif #endif
#ifdef HAVE_TRUNCATED_HMAC #ifdef HAVE_TRUNCATED_HMAC
"-T Truncated HMACを使用する\n", /* 37 */ "-T Truncated HMACを使用する\n", /* 37 */
#endif #endif
#ifdef HAVE_EXTENDED_MASTER #ifdef HAVE_EXTENDED_MASTER
"-n マスターシークレット拡張を無効にする\n", /* 38 */ "-n マスターシークレット拡張を無効にする\n", /* 38 */
#endif #endif
#ifdef HAVE_OCSP #ifdef HAVE_OCSP
"-o OCSPルックアップをピア証明書で実施する\n", /* 39 */ "-o OCSPルックアップをピア証明書で実施する\n", /* 39 */
"-O <url> OCSPルックアップを、<url>を使用し" "-O <url> OCSPルックアップを、<url>を使用し"
"応答者として実施する\n", /* 40 */ "応答者として実施する\n", /* 40 */
#endif #endif
#if defined(HAVE_CERTIFICATE_STATUS_REQUEST) \ #if defined(HAVE_CERTIFICATE_STATUS_REQUEST) \
|| defined(HAVE_CERTIFICATE_STATUS_REQUEST_V2) || defined(HAVE_CERTIFICATE_STATUS_REQUEST_V2)
"-W <num> OCSP Staplingを使用する" "-W <num> OCSP Staplingを使用する"
" (1 v1, 2 v2, 3 v2 multi)\n", /* 41 */ " (1 v1, 2 v2, 3 v2 multi)\n", /* 41 */
#endif #endif
#ifdef ATOMIC_USER #ifdef ATOMIC_USER
"-U アトミック・ユーザー記録の" "-U アトミック・ユーザー記録の"
"コールバックを利用する\n", /* 42 */ "コールバックを利用する\n", /* 42 */
#endif #endif
#ifdef HAVE_PK_CALLBACKS #ifdef HAVE_PK_CALLBACKS
"-P 公開鍵コールバック\n", /* 43 */ "-P 公開鍵コールバック\n", /* 43 */
#endif #endif
#ifdef HAVE_ANON #ifdef HAVE_ANON
"-a 匿名クライアント\n", /* 44 */ "-a 匿名クライアント\n", /* 44 */
#endif #endif
#ifdef HAVE_CRL #ifdef HAVE_CRL
"-C CRLを無効\n", /* 45 */ "-C CRLを無効\n", /* 45 */
#endif #endif
#ifdef WOLFSSL_TRUST_PEER_CERT #ifdef WOLFSSL_TRUST_PEER_CERT
"-E <file> 信頼出来るピアの証明書ロードの為のパス\n", /* 46 */ "-E <file> 信頼出来るピアの証明書ロードの為のパス\n", /* 46 */
#endif #endif
#ifdef HAVE_WNR #ifdef HAVE_WNR
"-q <file> Whitewood コンフィグファイル, 既定値\n", /* 47 */ "-q <file> Whitewood コンフィグファイル, 既定値\n", /* 47 */
#endif #endif
"-H <arg> 内部テスト" "-H <arg> 内部テスト"
" [defCipherList, exitWithRet, verifyFail]\n", /* 48 */ " [defCipherList, exitWithRet, verifyFail]\n", /* 48 */
#ifdef WOLFSSL_TLS13 #ifdef WOLFSSL_TLS13
"-J HelloRetryRequestをKEのグループ選択に使用する\n", /* 49 */ "-J HelloRetryRequestをKEのグループ選択に使用する\n", /* 49 */
"-K 鍵交換にPSKを使用、(EC)DHEは使用しない\n", /* 50 */ "-K 鍵交換にPSKを使用、(EC)DHEは使用しない\n", /* 50 */
"-I データ送信前に、鍵とIVを更新する\n", /* 51 */ "-I データ送信前に、鍵とIVを更新する\n", /* 51 */
#ifndef NO_DH #ifndef NO_DH
"-y FFDHE名前付きグループとの鍵共有のみ\n", /* 52 */ "-y FFDHE名前付きグループとの鍵共有のみ\n", /* 52 */
#endif #endif
#ifdef HAVE_ECC #ifdef HAVE_ECC
"-Y ECC名前付きグループとの鍵共有のみ\n", /* 53 */ "-Y ECC名前付きグループとの鍵共有のみ\n", /* 53 */
#endif #endif
#endif /* WOLFSSL_TLS13 */ #endif /* WOLFSSL_TLS13 */
#ifdef HAVE_CURVE25519 #ifdef HAVE_CURVE25519
"-t X25519を鍵交換に使用する\n", /* 54 */ "-t X25519を鍵交換に使用する\n", /* 54 */
#endif #endif
#if defined(WOLFSSL_TLS13) && defined(WOLFSSL_POST_HANDSHAKE_AUTH) #if defined(WOLFSSL_TLS13) && defined(WOLFSSL_POST_HANDSHAKE_AUTH)
"-Q ポストハンドシェークの証明要求をサポートする\n", /* 55 */ "-Q ポストハンドシェークの証明要求をサポートする\n", /* 55 */
#endif #endif
#ifdef WOLFSSL_EARLY_DATA #ifdef WOLFSSL_EARLY_DATA
"-0 Early data をサーバーへ送信する" "-0 Early data をサーバーへ送信する"
"0-RTTハンドシェイク\n", /* 56 */ "0-RTTハンドシェイク\n", /* 56 */
#endif #endif
#ifdef WOLFSSL_MULTICAST #ifdef WOLFSSL_MULTICAST
"-3 <grpid> マルチキャスト, grpid < 256\n", /* 57 */ "-3 <grpid> マルチキャスト, grpid < 256\n", /* 57 */
#endif #endif
"-1 <num> 指定された言語で結果を表示します。\n" "-1 <num> 指定された言語で結果を表示します。\n"
" 0: 英語、 1: 日本語\n", /* 58 */ " 0: 英語、 1: 日本語\n", /* 58 */
NULL, NULL,
}, },
#endif
}; };
static void Usage(void) static void Usage(void)

View File

@ -447,129 +447,131 @@ static const char* server_usage_msg[][49] = {
#endif #endif
#endif /* WOLFSSL_TLS13 */ #endif /* WOLFSSL_TLS13 */
#ifdef WOLFSSL_EARLY_DATA #ifdef WOLFSSL_EARLY_DATA
"-0 Early data read from client (0-RTT handshake)\n", /* 46 */ "-0 Early data read from client (0-RTT handshake)\n", /* 46 */
#endif #endif
#ifdef WOLFSSL_MULTICAST #ifdef WOLFSSL_MULTICAST
"-3 <grpid> Multicast, grpid < 256\n", /* 47 */ "-3 <grpid> Multicast, grpid < 256\n", /* 47 */
#endif #endif
"-1 <num> Display a result by specified language." "-1 <num> Display a result by specified language."
"\n 0: English, 1: Japanese\n", /* 48 */ "\n 0: English, 1: Japanese\n", /* 48 */
NULL, NULL,
}, },
#ifndef NO_MULTIBYTE
/* Japanese */ /* Japanese */
{ {
" 注意 : 全てのファイルは" " 注意 : 全てのファイルは"
" wolfSSL ホーム・ディレクトリからの相対です。\n", /* 0 */ " wolfSSL ホーム・ディレクトリからの相対です。\n", /* 0 */
"-? <num> ヘルプ, 使い方を表示\n" "-? <num> ヘルプ, 使い方を表示\n"
" 0: 英語、 1: 日本語\n", /* 1 */ " 0: 英語、 1: 日本語\n", /* 1 */
"-p <num> 接続先ポート, 0は無効, 既定値", /* 2 */ "-p <num> 接続先ポート, 0は無効, 既定値", /* 2 */
#ifndef WOLFSSL_TLS13 #ifndef WOLFSSL_TLS13
"-v <num> SSL バージョン [0-3], SSLv3(0) - TLS1.2(3))," "-v <num> SSL バージョン [0-3], SSLv3(0) - TLS1.2(3)),"
" 既定値", /* 3 */ " 既定値", /* 3 */
#else #else
"-v <num> SSL バージョン [0-4], SSLv3(0) - TLS1.3(4))," "-v <num> SSL バージョン [0-4], SSLv3(0) - TLS1.3(4)),"
" 既定値", /* 3 */ " 既定値", /* 3 */
#endif #endif
"-l <str> 暗号スイートリスト (区切り文字 :)\n", /* 4 */ "-l <str> 暗号スイートリスト (区切り文字 :)\n", /* 4 */
"-c <file> 証明書ファイル, 既定値", /* 5 */ "-c <file> 証明書ファイル, 既定値", /* 5 */
"-k <file> 鍵ファイル, 既定値", /* 6 */ "-k <file> 鍵ファイル, 既定値", /* 6 */
"-A <file> 認証局ファイル, 既定値", /* 7 */ "-A <file> 認証局ファイル, 既定値", /* 7 */
"-R <file> 外部モニタ用の準備完了ファイルを作成する。" "-R <file> 外部モニタ用の準備完了ファイルを作成する。"
"既定値 なし\n", /* 8 */ "既定値 なし\n", /* 8 */
#ifndef NO_DH #ifndef NO_DH
"-D <file> ディフィー・ヘルマンのパラメータファイル," "-D <file> ディフィー・ヘルマンのパラメータファイル,"
" 既定値", /* 9 */ " 既定値", /* 9 */
"-Z <num> 最小 DH 鍵 ビット, 既定値", /* 10 */ "-Z <num> 最小 DH 鍵 ビット, 既定値", /* 10 */
#endif #endif
#ifdef HAVE_ALPN #ifdef HAVE_ALPN
"-L <str> アプリケーション層プロトコルネゴシエーションを行う" "-L <str> アプリケーション層プロトコルネゴシエーションを行う"
" ({C,F}:<list>)\n", /* 11 */ " ({C,F}:<list>)\n", /* 11 */
#endif #endif
"-d クライアント認証を無効とする\n", /* 12 */ "-d クライアント認証を無効とする\n", /* 12 */
"-b ローカルホスト以外のインターフェースへも" "-b ローカルホスト以外のインターフェースへも"
"バインドする\n", /* 13 */ "バインドする\n", /* 13 */
"-s 事前共有鍵を使用する\n", /* 14 */ "-s 事前共有鍵を使用する\n", /* 14 */
"-u UDP DTLSを使用する。-v 2 を追加指定すると" "-u UDP DTLSを使用する。-v 2 を追加指定すると"
" DTLSv1, -v 3 を追加指定すると DTLSv1.2 (既定値)\n", /* 15 */ " DTLSv1, -v 3 を追加指定すると DTLSv1.2 (既定値)\n", /* 15 */
#ifdef WOLFSSL_SCTP #ifdef WOLFSSL_SCTP
"-G SCTP DTLSを使用する。-v 2 を追加指定すると" "-G SCTP DTLSを使用する。-v 2 を追加指定すると"
" DTLSv1, -v 3 を追加指定すると DTLSv1.2 (既定値)\n", /* 16 */ " DTLSv1, -v 3 を追加指定すると DTLSv1.2 (既定値)\n", /* 16 */
#endif #endif
"-f より少ないパケット/グループメッセージを使用する\n",/* 17 */ "-f より少ないパケット/グループメッセージを使用する\n", /* 17 */
"-r クライアントの再開を許可する\n", /* 18 */ "-r クライアントの再開を許可する\n", /* 18 */
"-N ノンブロッキング・ソケットを使用する\n", /* 19 */ "-N ノンブロッキング・ソケットを使用する\n", /* 19 */
"-S <str> ホスト名表示を使用する\n", /* 20 */ "-S <str> ホスト名表示を使用する\n", /* 20 */
"-w 双方向シャットダウンを待つ\n", /* 21 */ "-w 双方向シャットダウンを待つ\n", /* 21 */
#ifdef HAVE_OCSP #ifdef HAVE_OCSP
"-o OCSPルックアップをピア証明書で実施する\n", /* 22 */ "-o OCSPルックアップをピア証明書で実施する\n", /* 22 */
"-O <url> OCSPルックアップを、" "-O <url> OCSPルックアップを、"
"<url>を使用し応答者として実施する\n", /* 23 */ "<url>を使用し応答者として実施する\n", /* 23 */
#endif #endif
#ifdef HAVE_PK_CALLBACKS #ifdef HAVE_PK_CALLBACKS
"-P 公開鍵コールバック\n", /* 24 */ "-P 公開鍵コールバック\n", /* 24 */
#endif #endif
#ifdef HAVE_ANON #ifdef HAVE_ANON
"-a 匿名サーバー\n", /* 25 */ "-a 匿名サーバー\n", /* 25 */
#endif #endif
#ifndef NO_PSK #ifndef NO_PSK
"-I PSKアイデンティティのヒントを送信しない\n", /* 26 */ "-I PSKアイデンティティのヒントを送信しない\n", /* 26 */
#endif #endif
"-x サーバーエラーを出力するが接続を切断しない\n", /* 27 */ "-x サーバーエラーを出力するが接続を切断しない\n", /* 27 */
"-i 無期限にループする(繰り返し接続を許可)\n", /* 28 */ "-i 無期限にループする(繰り返し接続を許可)\n", /* 28 */
"-e エコー・データモード" "-e エコー・データモード"
"(受け取ったバイトデータを返す)\n", /* 29 */ "(受け取ったバイトデータを返す)\n", /* 29 */
#ifdef HAVE_NTRU #ifdef HAVE_NTRU
"-n NTRU鍵を使用する(NTRUスイートに必要)\n", /* 30 */ "-n NTRU鍵を使用する(NTRUスイートに必要)\n", /* 30 */
#endif #endif
"-B <num> <num> バイトを用いてのベンチマーク・スループット" "-B <num> <num> バイトを用いてのベンチマーク・スループット"
"測定と結果を出力する\n", /* 31 */ "測定と結果を出力する\n", /* 31 */
#ifdef HAVE_CRL #ifdef HAVE_CRL
"-V CRLを無効とする\n", /* 32 */ "-V CRLを無効とする\n", /* 32 */
#endif #endif
#ifdef WOLFSSL_TRUST_PEER_CERT #ifdef WOLFSSL_TRUST_PEER_CERT
"-E <file> 信頼出来るピアの証明書ロードの為のパス\n\n", /* 33 */ "-E <file> 信頼出来るピアの証明書ロードの為のパス\n\n", /* 33 */
#endif #endif
#ifdef HAVE_WNR #ifdef HAVE_WNR
"-q <file> Whitewood コンフィグファイル, 既定値", /* 34 */ "-q <file> Whitewood コンフィグファイル, 既定値", /* 34 */
#endif #endif
"-g 基本的な Web ページを返す\n", /* 35 */ "-g 基本的な Web ページを返す\n", /* 35 */
"-C <num> アクセプト可能な接続数を指定する。既定値: 1\n", /* 36 */ "-C <num> アクセプト可能な接続数を指定する。既定値: 1\n", /* 36 */
"-H <arg> 内部テスト" "-H <arg> 内部テスト"
" [defCipherList, exitWithRet, verifyFail]\n", /* 37 */ " [defCipherList, exitWithRet, verifyFail]\n", /* 37 */
#ifdef WOLFSSL_TLS13 #ifdef WOLFSSL_TLS13
"-U データ送信前に、鍵とIVを更新する\n", /* 38 */ "-U データ送信前に、鍵とIVを更新する\n", /* 38 */
"-K 鍵交換にPSKを使用、(EC)DHEは使用しない\n", /* 39 */ "-K 鍵交換にPSKを使用、(EC)DHEは使用しない\n", /* 39 */
#ifndef NO_DH #ifndef NO_DH
"-y FFDHE_2048のみを使用して鍵共有を事前生成する\n", /* 40 */ "-y FFDHE_2048のみを使用して鍵共有を事前生成する\n", /* 40 */
#endif #endif
#ifdef HAVE_ECC #ifdef HAVE_ECC
"-Y P-256のみを使用したキー共有の事前生成\n", /* 41 */ "-Y P-256のみを使用したキー共有の事前生成\n", /* 41 */
#endif #endif
#ifdef HAVE_CURVE25519 #ifdef HAVE_CURVE25519
"-t Curve25519のみを使用して鍵共有を事前生成する\n", /* 42 */ "-t Curve25519のみを使用して鍵共有を事前生成する\n", /* 42 */
#endif #endif
#ifdef HAVE_SESSION_TICKET #ifdef HAVE_SESSION_TICKET
"-T セッションチケットを生成しない\n", /* 43 */ "-T セッションチケットを生成しない\n", /* 43 */
#endif #endif
#ifdef WOLFSSL_POST_HANDSHAKE_AUTH #ifdef WOLFSSL_POST_HANDSHAKE_AUTH
"-Q クライアントのポストハンドシェイクから" "-Q クライアントのポストハンドシェイクから"
"証明書を要求する\n", /* 44 */ "証明書を要求する\n", /* 44 */
#endif #endif
#ifdef WOLFSSL_SEND_HRR_COOKIE #ifdef WOLFSSL_SEND_HRR_COOKIE
"-J サーバーの状態を含むTLS Cookie 拡張を送信する\n", /* 45 */ "-J サーバーの状態を含むTLS Cookie 拡張を送信する\n", /* 45 */
#endif #endif
#endif /* WOLFSSL_TLS13 */ #endif /* WOLFSSL_TLS13 */
#ifdef WOLFSSL_EARLY_DATA #ifdef WOLFSSL_EARLY_DATA
"-0 クライアントからの Early Data 読み取り" "-0 クライアントからの Early Data 読み取り"
"0-RTTハンドシェイク\n", /* 46 */ "0-RTTハンドシェイク\n", /* 46 */
#endif #endif
#ifdef WOLFSSL_MULTICAST #ifdef WOLFSSL_MULTICAST
"-3 <grpid> マルチキャスト, grpid < 256\n", /* 47 */ "-3 <grpid> マルチキャスト, grpid < 256\n", /* 47 */
#endif #endif
"-1 <num> 指定された言語で結果を表示します。" "-1 <num> 指定された言語で結果を表示します。"
"\n 0: 英語、 1: 日本語\n", /* 48 */ "\n 0: 英語、 1: 日本語\n", /* 48 */
NULL, NULL,
}, },
#endif
}; };

View File

@ -433,6 +433,7 @@ static const char* bench_Usage_msg1[][10] = {
"-lng <num> Display benchmark result by specified language.\n 0: English, 1: Japanese\n", "-lng <num> Display benchmark result by specified language.\n 0: English, 1: Japanese\n",
"<num> Size of block in bytes\n", "<num> Size of block in bytes\n",
}, },
#ifndef NO_MULTIBYTE
/* 1 Japanese */ /* 1 Japanese */
{ "-? <num> ヘルプ, 使い方を表示します。\n 0: 英語、 1: 日本語\n", { "-? <num> ヘルプ, 使い方を表示します。\n 0: 英語、 1: 日本語\n",
"-csv csv 形式で端末に出力します。\n", "-csv csv 形式で端末に出力します。\n",
@ -445,11 +446,14 @@ static const char* bench_Usage_msg1[][10] = {
"-lng <num> 指定された言語でベンチマーク結果を表示します。\n 0: 英語、 1: 日本語\n", "-lng <num> 指定された言語でベンチマーク結果を表示します。\n 0: 英語、 1: 日本語\n",
"<num> ブロックサイズをバイト単位で指定します。\n", "<num> ブロックサイズをバイト単位で指定します。\n",
}, },
#endif
}; };
static const char* bench_result_words1[][4] = { static const char* bench_result_words1[][4] = {
{ "tooks", "seconds" , "Cycles per byte", NULL }, /* 0 English */ { "tooks", "seconds" , "Cycles per byte", NULL }, /* 0 English */
#ifndef NO_MULTIBYTE
{ "" , "秒で処理", "1バイトあたりのサイクル数", NULL }, /* 1 Japanese */ { "" , "秒で処理", "1バイトあたりのサイクル数", NULL }, /* 1 Japanese */
#endif
}; };
#if !defined(NO_RSA) ||defined(WOLFSSL_KEY_GEN) || defined(HAVE_NTRU) || \ #if !defined(NO_RSA) ||defined(WOLFSSL_KEY_GEN) || defined(HAVE_NTRU) || \
@ -460,7 +464,9 @@ static const char* bench_result_words1[][4] = {
static const char* bench_desc_words[][9] = { static const char* bench_desc_words[][9] = {
/* 0 1 2 3 4 5 6 7 8 */ /* 0 1 2 3 4 5 6 7 8 */
{"public", "private", "key gen", "agree" , "sign", "verify", "encryption", "decryption", NULL}, /* 0 English */ {"public", "private", "key gen", "agree" , "sign", "verify", "encryption", "decryption", NULL}, /* 0 English */
#ifndef NO_MULTIBYTE
{"公開鍵", "秘密鍵" ,"鍵生成" , "鍵共有" , "署名", "検証" , "暗号化" , "復号化" , NULL}, /* 1 Japanese */ {"公開鍵", "秘密鍵" ,"鍵生成" , "鍵共有" , "署名", "検証" , "暗号化" , "復号化" , NULL}, /* 1 Japanese */
#endif
}; };
#endif #endif
@ -577,7 +583,9 @@ static const char* bench_desc_words[][9] = {
#if defined(BENCH_ASYM) #if defined(BENCH_ASYM)
static const char* bench_result_words2[][5] = { static const char* bench_result_words2[][5] = {
{ "ops took", "sec" , "avg" , "ops/sec", NULL }, /* 0 English */ { "ops took", "sec" , "avg" , "ops/sec", NULL }, /* 0 English */
#ifndef NO_MULTIBYTE
{ "回処理を", "秒で実施", "平均", "処理/秒", NULL }, /* 1 Japanese */ { "回処理を", "秒で実施", "平均", "処理/秒", NULL }, /* 1 Japanese */
#endif
}; };
#endif #endif