forked from wolfSSL/wolfssl
Merge pull request #4823 from haydenroche5/alpn_bug
Fix bug in TLSX_ALPN_ParseAndSet when using ALPN select callback.
This commit is contained in:
@@ -1571,16 +1571,14 @@ static int TLSX_ALPN_ParseAndSet(WOLFSSL *ssl, const byte *input, word16 length,
|
|||||||
WOLFSSL_MSG("ALPN protocol match");
|
WOLFSSL_MSG("ALPN protocol match");
|
||||||
/* clears out all current ALPN extensions set */
|
/* clears out all current ALPN extensions set */
|
||||||
TLSX_Remove(&ssl->extensions, TLSX_APPLICATION_LAYER_PROTOCOL, ssl->heap);
|
TLSX_Remove(&ssl->extensions, TLSX_APPLICATION_LAYER_PROTOCOL, ssl->heap);
|
||||||
|
extension = NULL;
|
||||||
if (TLSX_UseALPN(&ssl->extensions, (char*)out, outLen, 0, ssl->heap)
|
if (TLSX_UseALPN(&ssl->extensions, (char*)out, outLen, 0, ssl->heap)
|
||||||
== WOLFSSL_SUCCESS) {
|
== WOLFSSL_SUCCESS) {
|
||||||
if (extension == NULL) {
|
|
||||||
extension = TLSX_Find(ssl->extensions,
|
extension = TLSX_Find(ssl->extensions,
|
||||||
TLSX_APPLICATION_LAYER_PROTOCOL);
|
TLSX_APPLICATION_LAYER_PROTOCOL);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (extension == NULL || extension->data == NULL) {
|
if (extension == NULL || extension->data == NULL) {
|
||||||
|
Reference in New Issue
Block a user