hdb: eliminate hdb_entry_ex

Remove hdb_entry_ex and revert to the original design of hdb_entry (except with
an additional context member in hdb_entry which is managed by the free_entry
method in HDB).
This commit is contained in:
Luke Howard
2022-01-07 12:54:40 +11:00
parent c5551775e2
commit 0e8c4ccc6e
50 changed files with 1035 additions and 1032 deletions

View File

@@ -418,7 +418,7 @@ doit(const char *filename, int mergep)
int lineno;
int flags = O_RDWR;
struct entry e;
hdb_entry_ex ent;
hdb_entry ent;
HDB *db = _kadm5_s_get_db(kadm_handle);
f = fopen(filename, "r");
@@ -506,7 +506,7 @@ doit(const char *filename, int mergep)
skip_next(p);
memset(&ent, 0, sizeof(ent));
ret2 = krb5_parse_name(context, e.principal, &ent.entry.principal);
ret2 = krb5_parse_name(context, e.principal, &ent.principal);
if (ret2) {
const char *msg = krb5_get_error_message(context, ret);
fprintf(stderr, "%s:%d:%s (%s)\n",
@@ -516,7 +516,7 @@ doit(const char *filename, int mergep)
continue;
}
if (parse_keys(&ent.entry, e.key)) {
if (parse_keys(&ent, e.key)) {
fprintf (stderr, "%s:%d:error parsing keys (%s)\n",
filename, lineno, e.key);
hdb_free_entry (context, db, &ent);
@@ -524,35 +524,35 @@ doit(const char *filename, int mergep)
continue;
}
if (parse_event(&ent.entry.created_by, e.created) == -1) {
if (parse_event(&ent.created_by, e.created) == -1) {
fprintf (stderr, "%s:%d:error parsing created event (%s)\n",
filename, lineno, e.created);
hdb_free_entry (context, db, &ent);
ret = 1;
continue;
}
if (parse_event_alloc (&ent.entry.modified_by, e.modified) == -1) {
if (parse_event_alloc (&ent.modified_by, e.modified) == -1) {
fprintf (stderr, "%s:%d:error parsing event (%s)\n",
filename, lineno, e.modified);
hdb_free_entry (context, db, &ent);
ret = 1;
continue;
}
if (parse_time_string_alloc (&ent.entry.valid_start, e.valid_start) == -1) {
if (parse_time_string_alloc (&ent.valid_start, e.valid_start) == -1) {
fprintf (stderr, "%s:%d:error parsing time (%s)\n",
filename, lineno, e.valid_start);
hdb_free_entry (context, db, &ent);
ret = 1;
continue;
}
if (parse_time_string_alloc (&ent.entry.valid_end, e.valid_end) == -1) {
if (parse_time_string_alloc (&ent.valid_end, e.valid_end) == -1) {
fprintf (stderr, "%s:%d:error parsing time (%s)\n",
filename, lineno, e.valid_end);
hdb_free_entry (context, db, &ent);
ret = 1;
continue;
}
if (parse_time_string_alloc (&ent.entry.pw_end, e.pw_end) == -1) {
if (parse_time_string_alloc (&ent.pw_end, e.pw_end) == -1) {
fprintf (stderr, "%s:%d:error parsing time (%s)\n",
filename, lineno, e.pw_end);
hdb_free_entry (context, db, &ent);
@@ -560,7 +560,7 @@ doit(const char *filename, int mergep)
continue;
}
if (parse_integer_alloc (&ent.entry.max_life, e.max_life) == -1) {
if (parse_integer_alloc (&ent.max_life, e.max_life) == -1) {
fprintf (stderr, "%s:%d:error parsing lifetime (%s)\n",
filename, lineno, e.max_life);
hdb_free_entry (context, db, &ent);
@@ -568,7 +568,7 @@ doit(const char *filename, int mergep)
continue;
}
if (parse_integer_alloc (&ent.entry.max_renew, e.max_renew) == -1) {
if (parse_integer_alloc (&ent.max_renew, e.max_renew) == -1) {
fprintf (stderr, "%s:%d:error parsing lifetime (%s)\n",
filename, lineno, e.max_renew);
hdb_free_entry (context, db, &ent);
@@ -576,7 +576,7 @@ doit(const char *filename, int mergep)
continue;
}
if (parse_hdbflags2int (&ent.entry.flags, e.flags) != 1) {
if (parse_hdbflags2int (&ent.flags, e.flags) != 1) {
fprintf (stderr, "%s:%d:error parsing flags (%s)\n",
filename, lineno, e.flags);
hdb_free_entry (context, db, &ent);
@@ -584,7 +584,7 @@ doit(const char *filename, int mergep)
continue;
}
if(parse_generation(e.generation, &ent.entry.generation) == -1) {
if(parse_generation(e.generation, &ent.generation) == -1) {
fprintf (stderr, "%s:%d:error parsing generation (%s)\n",
filename, lineno, e.generation);
hdb_free_entry (context, db, &ent);
@@ -592,7 +592,7 @@ doit(const char *filename, int mergep)
continue;
}
if (parse_extensions(&e.extensions, &ent.entry.extensions) == -1) {
if (parse_extensions(&e.extensions, &ent.extensions) == -1) {
fprintf (stderr, "%s:%d:error parsing extension (%s)\n",
filename, lineno, e.extensions);
hdb_free_entry (context, db, &ent);