summaryrefslogtreecommitdiffstats
path: root/sdpd/service.c
diff options
context:
space:
mode:
Diffstat (limited to 'sdpd/service.c')
-rw-r--r--sdpd/service.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sdpd/service.c b/sdpd/service.c
index 0834122d..a8d93994 100644
--- a/sdpd/service.c
+++ b/sdpd/service.c
@@ -141,7 +141,10 @@ int service_register_req(sdp_req_t *req, sdp_buf_t *rsp)
return -1;
}
- rec->handle = (uint32_t)rec;
+ rec->handle = sdp_next_handle();
+ if (rec->handle < 0x10000)
+ return -1;
+
sdp_record_add(rec);
if (!(req->flags & SDP_RECORD_PERSIST))
sdp_svcdb_set_collectable(rec, req->sock);