static void dict_cache_delete_behind_reset(DICT_CACHE *cp) { #define FREE_AND_WIPE(s) do { if (s) { myfree(s); (s) = 0; } } while (0) DC_CANCEL_DELETE_BEHIND(cp); FREE_AND_WIPE(cp->saved_curr_key); FREE_AND_WIPE(cp->saved_curr_val); }
void smtpd_xforward_reset(SMTPD_STATE *state) { #define FREE_AND_WIPE(s) { if (s) myfree(s); s = 0; } state->xforward.flags = 0; FREE_AND_WIPE(state->xforward.name); FREE_AND_WIPE(state->xforward.addr); FREE_AND_WIPE(state->xforward.namaddr); FREE_AND_WIPE(state->xforward.protocol); FREE_AND_WIPE(state->xforward.helo_name); FREE_AND_WIPE(state->xforward.ident); }