示例#1
0
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);
}
示例#2
0
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);
}