[SECNET PATCH 10/12] site.c: Don't overwrite `st->sharedsecret' if it's null.

Ian Jackson ijackson at chiark.greenend.org.uk
Sat May 18 01:21:55 BST 2019


From: Mark Wooding <mdw at distorted.org.uk>

In this case, `st->sharesecretlen' is zero, but this is still undefined
behaviour.

Signed-off-by: Mark Wooding <mdw at distorted.org.uk>
---
 site.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/site.c b/site.c
index 0da21ef..04e3a0d 100644
--- a/site.c
+++ b/site.c
@@ -1456,7 +1456,7 @@ static void enter_state_run(struct site *st)
     FILLZERO(st->remoteN);
     dispose_transform(&st->new_transform);
     memset(st->dhsecret,0,st->dh->len);
-    memset(st->sharedsecret,0,st->sharedsecretlen);
+    if (st->sharedsecret) memset(st->sharedsecret,0,st->sharedsecretlen);
     set_link_quality(st);
 
     if (st->keepalive && !current_valid(st))
-- 
2.11.0




More information about the sgo-software-discuss mailing list