aboutsummaryrefslogtreecommitdiff
path: root/src/betab.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/betab.c')
-rw-r--r--src/betab.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/betab.c b/src/betab.c
index afec48a..2979f8b 100644
--- a/src/betab.c
+++ b/src/betab.c
@@ -79,7 +79,7 @@ struct backend_dfn {
size_t vbeIPv6_len;
u_long vbePort;
- const struct VSC_point *vpt[VBE_MAX];
+ struct VSC_point *vpt[VBE_MAX];
VTAILQ_ENTRY(backend_dfn) list;
};
@@ -92,6 +92,9 @@ backend_clear(void)
{
while (!VTAILQ_EMPTY(&backends)) {
struct backend_dfn *dfn = VTAILQ_FIRST(&backends);
+ int i;
+ for (i = 0; i < VBE_MAX; i++)
+ VSC_Destroy_Point(&dfn->vpt[i]);
VTAILQ_REMOVE(&backends, dfn, list);
free(dfn->vbeIdent);
SNMP_FREE(dfn);
@@ -124,7 +127,7 @@ backend_register(char const *name, size_t len, char const *param,
}
for (i = 0; betab_trans[i].param; i++) {
if (strcmp(betab_trans[i].param, param) == 0) {
- dfn->vpt[i] = vpt;
+ dfn->vpt[i] = VSC_Clone_Point(vpt);
break;
}
}

Return to:

Send suggestions and report system problems to the System administrator.