diff options
author | Andy Green <andy@warmcat.com> | 2021-11-08 10:44:55 +0000 |
---|---|---|
committer | Andy Green <andy@warmcat.com> | 2021-11-08 11:05:28 +0000 |
commit | f9fc45bd9896e19b00a40da64134845ccf5fcea0 (patch) | |
tree | 32250dc48d46136a6989636a1087f477955ea8ab | |
parent | 1db45d17dfd6282ee7a88676ac01525714305cce (diff) | |
download | libwebsockets-f9fc45bd9896e19b00a40da64134845ccf5fcea0.tar.gz |
sspc: proxy: coverity: handle unknown metadata name
-rw-r--r-- | lib/secure-streams/secure-streams-serialize.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/lib/secure-streams/secure-streams-serialize.c b/lib/secure-streams/secure-streams-serialize.c index 2202e029..53a9ed81 100644 --- a/lib/secure-streams/secure-streams-serialize.c +++ b/lib/secure-streams/secure-streams-serialize.c @@ -1156,8 +1156,22 @@ payload_ff: if (client) { *par->rxmetaval++ = *cp++; - } else + } else { + + if (!par->ssmd) { + /* we don't recognize the name */ + + cp++; + + if (--par->rem) + break; + + par->ps = RPAR_TYPE; + break; + } + ((uint8_t *)(par->ssmd->value__may_own_heap))[par->ctr++] = *cp++; + } if (--par->rem) break; |