On Mon, Apr 10, 2017 at 05:43:33PM +0200, Claudio Jeker wrote: > > --- usr.sbin/relayd/relayd.c 24 Jan 2017 10:49:14 -0000 1.165 > > +++ usr.sbin/relayd/relayd.c 10 Apr 2017 15:06:38 -0000 > > @@ -550,8 +550,7 @@ purge_key(char **ptr, off_t len) > > if (key == NULL || len == 0) > > return; > > I think this can also be dropped because freezero(NULL, 0) is save.
Indeed, saw the thread regarding imsg, that makes sense. Revised diff below. OK? Index: usr.sbin/relayd/relayd.c =================================================================== RCS file: /cvs/src/usr.sbin/relayd/relayd.c,v retrieving revision 1.165 diff -u -p -r1.165 relayd.c --- usr.sbin/relayd/relayd.c 24 Jan 2017 10:49:14 -0000 1.165 +++ usr.sbin/relayd/relayd.c 11 Apr 2017 06:57:26 -0000 @@ -547,11 +547,7 @@ purge_key(char **ptr, off_t len) { char *key = *ptr; - if (key == NULL || len == 0) - return; - - explicit_bzero(key, len); - free(key); + freezero(key, len); *ptr = NULL; }