M_CREDENTIALS
*id = malloc(*id_sz, M_CREDENTIALS, M_WAITOK);
free(*id, M_CREDENTIALS, *id_sz);
tmp = malloc(sizeof(struct ipsec_ids), M_CREDENTIALS, M_WAITOK);
free(tmp->id_local, M_CREDENTIALS, id_local_sz);
free(tmp->id_remote, M_CREDENTIALS, id_remote_sz);
free(tmp, M_CREDENTIALS, sizeof(*tmp));
free(ids->id_local, M_CREDENTIALS, 0);
free(ids->id_remote, M_CREDENTIALS, 0);
free(ids, M_CREDENTIALS, 0);