static void vdi_simple_fini(const struct director *d) { struct vdi_simple *vs; ASSERT_CLI(); CHECK_OBJ_NOTNULL(d, DIRECTOR_MAGIC); CAST_OBJ_NOTNULL(vs, d->priv, VDI_SIMPLE_MAGIC); VBE_DropRefVcl(vs->backend); free(vs->dir.vcl_name); vs->dir.magic = 0; FREE_OBJ(vs); }
void VRT_fini_dir(struct cli *cli, struct director *d) { struct vdi_simple *vs; (void)cli; ASSERT_CLI(); CHECK_OBJ_NOTNULL(d, DIRECTOR_MAGIC); CAST_OBJ_NOTNULL(vs, d->priv, VDI_SIMPLE_MAGIC); VBE_DropRefVcl(vs->backend); free(vs->dir.vcl_name); vs->dir.magic = 0; FREE_OBJ(vs); d->priv = NULL; }