SQLRETURN desc_free(TDS_DESC * desc) { if (desc) { desc_free_records(desc); odbc_errs_reset(&desc->errs); tds_mutex_free(&desc->mtx); free(desc); } return SQL_SUCCESS; }
static void pool_destroy(TDS_POOL *pool) { pool_mbr_destroy(pool); pool_user_destroy(pool); CLOSESOCKET(pool->wakeup_fd); CLOSESOCKET(pool->listen_fd); CLOSESOCKET(pool->event_fd); tds_mutex_free(&pool->events_mtx); free(pool->user); free(pool->password); free(pool->server); free(pool->database); free(pool->name); free(pool); }