Skip to content

Commit afd0e5a

Browse files
committed
Refactor haveAnon into useAnon
(ctx->|ssl->options.)useAnon means that the user has signalled that they want anonymous ciphersuites
1 parent b8b847b commit afd0e5a

4 files changed

Lines changed: 24 additions & 45 deletions

File tree

src/internal.c

Lines changed: 9 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1254,7 +1254,7 @@ static int ExportOptions(WOLFSSL* ssl, byte* exp, word32 len, byte ver,
12541254
exp[idx++] = 0;
12551255
#endif
12561256
#ifdef HAVE_ANON
1257-
exp[idx++] = options->haveAnon;
1257+
exp[idx++] = options->useAnon;
12581258
#else
12591259
exp[idx++] = 0;
12601260
#endif
@@ -1459,7 +1459,7 @@ static int ImportOptions(WOLFSSL* ssl, const byte* exp, word32 len, byte ver,
14591459
idx++;
14601460
#endif
14611461
#ifdef HAVE_ANON
1462-
options->haveAnon = exp[idx++]; /* User wants to allow Anon suites */
1462+
options->useAnon = exp[idx++]; /* User wants to allow Anon suites */
14631463
#else
14641464
idx++;
14651465
#endif
@@ -6409,7 +6409,7 @@ void InitSSL_CTX_Suites(WOLFSSL_CTX* ctx)
64096409
havePSK = ctx->havePSK;
64106410
#endif /* NO_PSK */
64116411
#ifdef HAVE_ANON
6412-
haveAnon = ctx->haveAnon;
6412+
haveAnon = ctx->useAnon;
64136413
#endif /* HAVE_ANON*/
64146414
#ifndef NO_CERTS
64156415
keySz = ctx->privateKeySz;
@@ -6442,7 +6442,7 @@ int InitSSL_Suites(WOLFSSL* ssl)
64426442
#endif /* NO_PSK */
64436443
#if !defined(NO_CERTS) && !defined(WOLFSSL_SESSION_EXPORT)
64446444
#ifdef HAVE_ANON
6445-
haveAnon = (byte)ssl->options.haveAnon;
6445+
haveAnon = (byte)ssl->options.useAnon;
64466446
#endif /* HAVE_ANON*/
64476447
#ifdef WOLFSSL_MULTICAST
64486448
haveMcast = (byte)ssl->options.haveMcast;
@@ -6472,7 +6472,7 @@ int InitSSL_Suites(WOLFSSL* ssl)
64726472
havePSK, ssl->options.haveDH, ssl->options.haveECDSAsig,
64736473
ssl->options.haveECC, ssl->options.haveStaticECC,
64746474
ssl->options.haveFalconSig, ssl->options.haveDilithiumSig,
6475-
ssl->options.haveAnon, ssl->options.side);
6475+
ssl->options.useAnon, ssl->options.side);
64766476
}
64776477

64786478
#if !defined(NO_CERTS) && !defined(WOLFSSL_SESSION_EXPORT)
@@ -6692,7 +6692,7 @@ int SetSSL_CTX(WOLFSSL* ssl, WOLFSSL_CTX* ctx, int writeDup)
66926692
#endif
66936693

66946694
#ifdef HAVE_ANON
6695-
ssl->options.haveAnon = ctx->haveAnon;
6695+
ssl->options.useAnon = ctx->useAnon;
66966696
#endif
66976697
#ifndef NO_DH
66986698
ssl->options.minDhKeySz = ctx->minDhKeySz;
@@ -26220,9 +26220,6 @@ int SetCipherList(const WOLFSSL_CTX* ctx, const WOLFSSL* ssl, Suites* suites,
2622026220
ProtocolVersion version;
2622126221
int privateKeySz = 0;
2622226222
byte side;
26223-
#ifdef HAVE_ANON
26224-
byte haveAnon = 0;
26225-
#endif
2622626223

2622726224
if (suites == NULL || list == NULL || (ctx == NULL && ssl == NULL)) {
2622826225
WOLFSSL_MSG("SetCipherList parameter error");
@@ -26325,9 +26322,6 @@ int SetCipherList(const WOLFSSL_CTX* ctx, const WOLFSSL* ssl, Suites* suites,
2632526322
haveSig |= SIG_ANON;
2632626323
else
2632726324
haveSig &= ~SIG_ANON;
26328-
#ifdef HAVE_ANON
26329-
haveAnon = (haveSig & SIG_ANON) == SIG_ANON;
26330-
#endif
2633126325
haveRSA = 1;
2633226326
haveDH = 1;
2633326327
haveECC = 1;
@@ -26350,9 +26344,6 @@ int SetCipherList(const WOLFSSL_CTX* ctx, const WOLFSSL* ssl, Suites* suites,
2635026344
if (XSTRCMP(name, "HIGH") == 0 && allowing) {
2635126345
/* Disable static, anonymous, and null ciphers */
2635226346
haveSig &= ~SIG_ANON;
26353-
#ifdef HAVE_ANON
26354-
haveAnon = 0;
26355-
#endif
2635626347
haveRSA = 1;
2635726348
haveDH = 1;
2635826349
haveECC = 1;
@@ -26372,9 +26363,6 @@ int SetCipherList(const WOLFSSL_CTX* ctx, const WOLFSSL* ssl, Suites* suites,
2637226363
haveSig |= SIG_ANON;
2637326364
else
2637426365
haveSig &= ~SIG_ANON;
26375-
#ifdef HAVE_ANON
26376-
haveAnon = allowing;
26377-
#endif
2637826366
if (allowing) {
2637926367
/* Allow RSA by default. */
2638026368
if (!haveECC)
@@ -26649,15 +26637,6 @@ int SetCipherList(const WOLFSSL_CTX* ctx, const WOLFSSL* ssl, Suites* suites,
2664926637
suites->setSuites = 1;
2665026638
}
2665126639

26652-
#ifdef HAVE_ANON
26653-
if (ret == 1) {
26654-
if (ctx != NULL)
26655-
((WOLFSSL_CTX*)ctx)->haveAnon = haveAnon || haveSig | SIG_ANON;
26656-
else
26657-
((WOLFSSL*)ssl)->options.haveAnon = haveAnon || haveSig | SIG_ANON;
26658-
}
26659-
#endif
26660-
2666126640
return ret;
2666226641
}
2666326642

@@ -35344,7 +35323,7 @@ static int DoSessionTicket(WOLFSSL* ssl, const byte* input, word32* inOutIdx,
3534435323
ssl->options.haveDH, ssl->options.haveECDSAsig,
3534535324
ssl->options.haveECC, TRUE, ssl->options.haveStaticECC,
3534635325
ssl->options.haveFalconSig,
35347-
ssl->options.haveDilithiumSig, ssl->options.haveAnon,
35326+
ssl->options.haveDilithiumSig, ssl->options.useAnon,
3534835327
TRUE, ssl->options.side);
3534935328
}
3535035329

@@ -35735,7 +35714,7 @@ static int DoSessionTicket(WOLFSSL* ssl, const byte* input, word32* inOutIdx,
3573535714
ssl->options.haveDH, ssl->options.haveECDSAsig,
3573635715
ssl->options.haveECC, TRUE, ssl->options.haveStaticECC,
3573735716
ssl->options.haveFalconSig,
35738-
ssl->options.haveDilithiumSig, ssl->options.haveAnon,
35717+
ssl->options.haveDilithiumSig, ssl->options.useAnon,
3573935718
TRUE, ssl->options.side);
3574035719
}
3574135720

@@ -35813,7 +35792,7 @@ static int DoSessionTicket(WOLFSSL* ssl, const byte* input, word32* inOutIdx,
3581335792
ssl->options.haveDH, ssl->options.haveECDSAsig,
3581435793
ssl->options.haveECC, TRUE, ssl->options.haveStaticECC,
3581535794
ssl->options.haveFalconSig,
35816-
ssl->options.haveDilithiumSig, ssl->options.haveAnon,
35795+
ssl->options.haveDilithiumSig, ssl->options.useAnon,
3581735796
TRUE, ssl->options.side);
3581835797
}
3581935798
}

src/ssl.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3069,7 +3069,7 @@ int wolfSSL_SetTmpDH(WOLFSSL* ssl, const unsigned char* p, int pSz,
30693069
ssl->options.haveDH, ssl->options.haveECDSAsig,
30703070
ssl->options.haveECC, TRUE, ssl->options.haveStaticECC,
30713071
ssl->options.haveFalconSig, ssl->options.haveDilithiumSig,
3072-
ssl->options.haveAnon, TRUE, ssl->options.side);
3072+
ssl->options.useAnon, TRUE, ssl->options.side);
30733073
}
30743074

30753075
WOLFSSL_LEAVE("wolfSSL_SetTmpDH", 0);
@@ -5330,7 +5330,7 @@ int wolfSSL_SetVersion(WOLFSSL* ssl, int version)
53305330
ssl->options.haveDH, ssl->options.haveECDSAsig,
53315331
ssl->options.haveECC, TRUE, ssl->options.haveStaticECC,
53325332
ssl->options.haveFalconSig, ssl->options.haveDilithiumSig,
5333-
ssl->options.haveAnon, TRUE, ssl->options.side);
5333+
ssl->options.useAnon, TRUE, ssl->options.side);
53345334
return WOLFSSL_SUCCESS;
53355335
}
53365336
#endif /* !leanpsk */
@@ -7951,7 +7951,7 @@ int ProcessBuffer(WOLFSSL_CTX* ctx, const unsigned char* buff,
79517951
havePSK, ssl->options.haveDH, ssl->options.haveECDSAsig,
79527952
ssl->options.haveECC, TRUE, ssl->options.haveStaticECC,
79537953
ssl->options.haveFalconSig, ssl->options.haveDilithiumSig,
7954-
ssl->options.haveAnon, TRUE, ssl->options.side);
7954+
ssl->options.useAnon, TRUE, ssl->options.side);
79557955
}
79567956
else if (ctx && resetSuites) {
79577957
word16 havePSK = 0;
@@ -7975,7 +7975,7 @@ int ProcessBuffer(WOLFSSL_CTX* ctx, const unsigned char* buff,
79757975
ctx->haveECC, TRUE, ctx->haveStaticECC,
79767976
ctx->haveFalconSig, ctx->haveDilithiumSig,
79777977
#ifdef HAVE_ANON
7978-
ctx->haveAnon,
7978+
ctx->useAnon,
79797979
#else
79807980
FALSE,
79817981
#endif
@@ -13107,7 +13107,7 @@ int wolfSSL_DTLS_SetCookieSecret(WOLFSSL* ssl,
1310713107
(void)havePSK;
1310813108

1310913109
#ifdef HAVE_ANON
13110-
haveAnon = ssl->options.haveAnon;
13110+
haveAnon = ssl->options.useAnon;
1311113111
#endif
1311213112
(void)haveAnon;
1311313113

@@ -15706,7 +15706,7 @@ int wolfSSL_set_compression(WOLFSSL* ssl)
1570615706
ssl->options.haveDH, ssl->options.haveECDSAsig,
1570715707
ssl->options.haveECC, TRUE, ssl->options.haveStaticECC,
1570815708
ssl->options.haveFalconSig, ssl->options.haveDilithiumSig,
15709-
ssl->options.haveAnon, TRUE, ssl->options.side);
15709+
ssl->options.useAnon, TRUE, ssl->options.side);
1571015710
}
1571115711
#ifdef OPENSSL_EXTRA
1571215712
/**
@@ -15763,7 +15763,7 @@ int wolfSSL_set_compression(WOLFSSL* ssl)
1576315763
ssl->options.haveDH, ssl->options.haveECDSAsig,
1576415764
ssl->options.haveECC, TRUE, ssl->options.haveStaticECC,
1576515765
ssl->options.haveFalconSig, ssl->options.haveDilithiumSig,
15766-
ssl->options.haveAnon, TRUE, ssl->options.side);
15766+
ssl->options.useAnon, TRUE, ssl->options.side);
1576715767
}
1576815768

1576915769
const char* wolfSSL_get_psk_identity_hint(const WOLFSSL* ssl)
@@ -15854,7 +15854,7 @@ int wolfSSL_set_compression(WOLFSSL* ssl)
1585415854
if (ctx == NULL)
1585515855
return WOLFSSL_FAILURE;
1585615856

15857-
ctx->haveAnon = 1;
15857+
ctx->useAnon = 1;
1585815858

1585915859
return WOLFSSL_SUCCESS;
1586015860
}
@@ -21971,7 +21971,7 @@ long wolfSSL_set_options(WOLFSSL* ssl, long op)
2197121971
ssl->options.haveDH, ssl->options.haveECDSAsig,
2197221972
ssl->options.haveECC, TRUE, ssl->options.haveStaticECC,
2197321973
ssl->options.haveFalconSig, ssl->options.haveDilithiumSig,
21974-
ssl->options.haveAnon, TRUE, ssl->options.side);
21974+
ssl->options.useAnon, TRUE, ssl->options.side);
2197521975
}
2197621976

2197721977
return ssl->options.mask;

src/tls13.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13486,7 +13486,7 @@ void wolfSSL_set_psk_client_cs_callback(WOLFSSL* ssl,
1348613486
ssl->options.haveDH, ssl->options.haveECDSAsig,
1348713487
ssl->options.haveECC, TRUE, ssl->options.haveStaticECC,
1348813488
ssl->options.haveFalconSig, ssl->options.haveDilithiumSig,
13489-
ssl->options.haveAnon, TRUE, ssl->options.side);
13489+
ssl->options.useAnon, TRUE, ssl->options.side);
1349013490
}
1349113491

1349213492
/* Set the PSK callback that returns the cipher suite for a client to use
@@ -13539,7 +13539,7 @@ void wolfSSL_set_psk_client_tls13_callback(WOLFSSL* ssl,
1353913539
ssl->options.haveDH, ssl->options.haveECDSAsig,
1354013540
ssl->options.haveECC, TRUE, ssl->options.haveStaticECC,
1354113541
ssl->options.haveFalconSig, ssl->options.haveDilithiumSig,
13542-
ssl->options.haveAnon, TRUE, ssl->options.side);
13542+
ssl->options.useAnon, TRUE, ssl->options.side);
1354313543
}
1354413544

1354513545
/* Set the PSK callback that returns the cipher suite for a server to use
@@ -13589,7 +13589,7 @@ void wolfSSL_set_psk_server_tls13_callback(WOLFSSL* ssl,
1358913589
ssl->options.haveDH, ssl->options.haveECDSAsig,
1359013590
ssl->options.haveECC, TRUE, ssl->options.haveStaticECC,
1359113591
ssl->options.haveFalconSig, ssl->options.haveDilithiumSig,
13592-
ssl->options.haveAnon, TRUE, ssl->options.side);
13592+
ssl->options.useAnon, TRUE, ssl->options.side);
1359313593
}
1359413594

1359513595
/* Get name of first supported cipher suite that uses the hash indicated.

wolfssl/internal.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2339,7 +2339,7 @@ struct Suites {
23392339
word16 hashSigAlgoSz; /* SigAlgo extension length in bytes */
23402340
byte suites[WOLFSSL_MAX_SUITE_SZ];
23412341
byte hashSigAlgo[WOLFSSL_MAX_SIGALGO]; /* sig/algo to offer */
2342-
byte setSuites; /* user set suites from default */
2342+
byte setSuites:1; /* user set suites from default */
23432343
};
23442344

23452345
typedef struct CipherSuite {
@@ -3762,7 +3762,7 @@ struct WOLFSSL_CTX {
37623762
word32 maxEarlyDataSz;
37633763
#endif
37643764
#ifdef HAVE_ANON
3765-
byte haveAnon; /* User wants to allow Anon suites */
3765+
byte useAnon; /* User wants to allow Anon suites */
37663766
#endif /* HAVE_ANON */
37673767
#ifdef WOLFSSL_ENCRYPTED_KEYS
37683768
wc_pem_password_cb* passwd_cb;
@@ -4698,7 +4698,7 @@ struct Options {
46984698
#ifdef HAVE_POLY1305
46994699
word16 oldPoly:1; /* set when to use old rfc way of poly*/
47004700
#endif
4701-
word16 haveAnon:1; /* User wants to allow Anon suites */
4701+
word16 useAnon:1; /* User wants to allow Anon suites */
47024702
#ifdef HAVE_SESSION_TICKET
47034703
word16 createTicket:1; /* Server to create new Ticket */
47044704
word16 useTicket:1; /* Use Ticket not session cache */

0 commit comments

Comments
 (0)