Lines Matching refs:di
53 struct hdb_dbinfo *di;
62 di = calloc(1, sizeof(*di));
63 if (di == NULL) {
67 di->label = strdup(label);
68 di->dbname = strdup(p);
72 di->realm = strdup(p);
75 di->mkey_file = strdup(p);
78 di->acl_file = strdup(p);
81 di->log_file = strdup(p);
83 di->binding = db_binding;
85 *db = di;
94 struct hdb_dbinfo *di, **dt, *databases;
111 ret = get_dbinfo(context, db_binding, "default", &di);
112 if (ret == 0 && di) {
113 databases = di;
114 dt = &di->next;
123 db_binding->name, &di);
127 if (di == NULL)
131 *dt = di;
133 databases = di;
134 dt = &di->next;
141 di = calloc(1, sizeof(*di));
142 databases = di;
143 di->label = strdup("default");
146 for(di = databases; di; di = di->next) {
147 if(di->dbname == NULL) {
148 di->dbname = strdup(default_dbname);
149 if (di->mkey_file == NULL)
150 di->mkey_file = strdup(default_mkey);
152 if(di->mkey_file == NULL) {
153 p = strrchr(di->dbname, '.');
156 asprintf(&di->mkey_file, "%s.mkey", di->dbname);
160 asprintf(&di->mkey_file, "%.*s.mkey",
161 (int)(p - di->dbname), di->dbname);
163 if(di->acl_file == NULL)
164 di->acl_file = strdup(default_acl);
225 struct hdb_dbinfo *di, *ndi;
227 for(di = *dbp; di != NULL; di = ndi) {
228 ndi = di->next;
229 free (di->label);
230 free (di->realm);
231 free (di->dbname);
232 free (di->mkey_file);
233 free (di->acl_file);
234 free (di->log_file);
235 free(di);