From 6f0f39cab1e39467bd02ebc04cab24bea5feef33 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Fri, 14 Oct 2005 12:50:11 +0000 Subject: r11027: r10319@SERNOX: metze | 2005-09-19 18:31:23 +0200 - store the wins owner on the record and the wins owner and expire time on each address - we use "0.0.0.0" to mark entries which are registered at the local wins server - we use this ldif-format: address: 172.31.9.1;winsOwner:0.0.0.0;expireTime:20050923032337.0Z address: 172.31.1.1;winsOwner:172.31.9.202;expireTime:20050923032330.0Z metze (This used to be commit 752025a0e10bfea646784087b5128841ec127a65) --- source4/nbt_server/wins/winswack.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'source4/nbt_server/wins/winswack.c') diff --git a/source4/nbt_server/wins/winswack.c b/source4/nbt_server/wins/winswack.c index 461acad981..defa3ad09a 100644 --- a/source4/nbt_server/wins/winswack.c +++ b/source4/nbt_server/wins/winswack.c @@ -69,13 +69,16 @@ static void wins_wack_allow(struct wack_state *state) nbtd_name_registration_reply(state->nbtsock, state->request_packet, &state->src, NBT_RCODE_OK); - rec->addresses = winsdb_addr_list_add(rec->addresses, state->reg_address); - if (rec->addresses == NULL) goto failed; - ttl = wins_server_ttl(state->winssrv, state->request_packet->additional[0].ttl); if (now + ttl > rec->expire_time) { rec->expire_time = now + ttl; } + rec->addresses = winsdb_addr_list_add(rec->addresses, + state->reg_address, + WINSDB_OWNER_LOCAL, + rec->expire_time); + if (rec->addresses == NULL) goto failed; + rec->registered_by = state->src.addr; winsdb_modify(state->winssrv, rec); -- cgit