diff options
Diffstat (limited to 'src/betab.c')
-rw-r--r-- | src/betab.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/betab.c b/src/betab.c index 2979f8b..83d77e3 100644 --- a/src/betab.c +++ b/src/betab.c @@ -79,7 +79,7 @@ struct backend_dfn { size_t vbeIPv6_len; u_long vbePort; - struct VSC_point *vpt[VBE_MAX]; + const volatile uint64_t *vpt[VBE_MAX]; VTAILQ_ENTRY(backend_dfn) list; }; @@ -92,9 +92,6 @@ 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); @@ -127,7 +124,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] = VSC_Clone_Point(vpt); + dfn->vpt[i] = vpt->ptr; break; } } @@ -162,7 +159,7 @@ backendTable_load(netsnmp_cache *cache, void *vmagic) for (i = 0; i < VBE_MAX; i++) { U64 *u = (U64*)((char*)ent + betab_trans[i].off); - uint64_t n = *(const volatile uint64_t*)dfn->vpt[i]->ptr; + uint64_t n = *dfn->vpt[i]; u->high = n >> 32; u->low = n & 0xffffffff; } |