summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Nordberg <linus@nordu.net>2011-03-21 14:17:55 +0100
committerLinus Nordberg <linus@nordu.net>2011-03-21 14:17:55 +0100
commit6cefe9483fda567d9db2447bda2f09f63d1101af (patch)
tree973a8e6d361811f1e0ec6917971d4cc21780b7ab
parent217d24060890986d38848e0a9fd68ae6e7d1727f (diff)
(rs_context_destroy): Use free() rather than rs_free() for realm->name.
-rw-r--r--lib/conf.c4
-rw-r--r--lib/radsec.c2
2 files changed, 4 insertions, 2 deletions
diff --git a/lib/conf.c b/lib/conf.c
index a1ac5b7..06ae3aa 100644
--- a/lib/conf.c
+++ b/lib/conf.c
@@ -99,10 +99,12 @@ rs_context_read_config(struct rs_context *ctx, const char *config_file)
else
config->realms = r;
cfg_realm = cfg_getnsec (cfg, "realm", i);
+ /* We use a copy of return value of cfg_title since it's a
+ const. */
s = cfg_title (cfg_realm);
if (s == NULL)
return rs_err_ctx_push_fl (ctx, RSE_CONFIG, __FILE__, __LINE__,
- "missing config name");
+ "missing realm name");
r->name = strdup (s); /* FIXME: Don't strdup. */
if (!r->name)
return rs_err_ctx_push_fl (ctx, RSE_NOMEM, __FILE__, __LINE__, NULL);
diff --git a/lib/radsec.c b/lib/radsec.c
index 6ff047d..c7ba68c 100644
--- a/lib/radsec.c
+++ b/lib/radsec.c
@@ -158,7 +158,7 @@ rs_context_destroy (struct rs_context *ctx)
p = p->next;
rs_free (ctx, tmp);
}
- rs_free (ctx, r->name); /* FIXME: Stop freeing once we stop strdup in rs_context_read_config(). */
+ free (ctx, r->name);
r = r->next;
rs_free (ctx, tmp);
}