Lines Matching defs:srv
60 service_search_request(server_t *srv, int fd)
68 d.next = srv->ibuf;
69 d.end = srv->ibuf + srv->pdu.len;
99 srv->fdidx[fd].offset = 0;
100 db_unselect(srv, fd);
101 db_select_ssp(srv, fd, &s);
102 } else if (srv->fdidx[fd].offset == 0
104 || be16dec(d.next + 1) != srv->fdidx[fd].offset)
115 d.next = srv->obuf + sizeof(uint16_t) + sizeof(uint16_t);
116 d.end = srv->obuf + srv->fdidx[fd].omtu - 1 - sizeof(uint16_t);
123 while (db_next(srv, fd, &r) && total < max) {
124 if (total >= srv->fdidx[fd].offset
137 be16enc(srv->obuf, total);
138 be16enc(srv->obuf + sizeof(uint16_t), count);
145 srv->fdidx[fd].offset = 0;
146 db_unselect(srv, fd);
150 srv->fdidx[fd].offset += count;
152 be16enc(d.next + 1, srv->fdidx[fd].offset);
159 srv->pdu.pid = SDP_PDU_SERVICE_SEARCH_RESPONSE;
160 srv->pdu.len = d.next - srv->obuf;
165 service_attribute_request(server_t *srv, int fd)
176 d.next = srv->ibuf;
177 d.end = srv->ibuf + srv->pdu.len;
216 srv->fdidx[fd].offset = 0;
217 db_unselect(srv, fd);
218 db_select_handle(srv, fd, handle);
219 } else if (srv->fdidx[fd].offset == 0
221 || be16dec(d.next + 1) != srv->fdidx[fd].offset)
229 b.start = srv->obuf + sizeof(uint16_t);
230 b.next = b.start - srv->fdidx[fd].offset;
231 b.end = srv->obuf + srv->fdidx[fd].omtu - 1;
240 db_next(srv, fd, &r);
256 b.next = srv->obuf + srv->fdidx[fd].omtu - 1 - sizeof(uint16_t);
264 be16enc(srv->obuf, (b.next - b.start));
267 srv->fdidx[fd].offset += (b.next - b.start);
269 be16enc(b.next + 1, srv->fdidx[fd].offset);
273 be16enc(srv->obuf, (b.next - b.start));
276 srv->fdidx[fd].offset = 0;
277 db_unselect(srv, fd);
285 srv->pdu.pid = SDP_PDU_SERVICE_ATTRIBUTE_RESPONSE;
286 srv->pdu.len = b.next - srv->obuf;
291 service_search_attribute_request(server_t *srv, int fd)
301 d.next = srv->ibuf;
302 d.end = srv->ibuf + srv->pdu.len;
339 srv->fdidx[fd].offset = 0;
340 db_unselect(srv, fd);
341 db_select_ssp(srv, fd, &s);
342 } else if (srv->fdidx[fd].offset == 0
344 || be16dec(d.next + 1) != srv->fdidx[fd].offset)
352 b.start = srv->obuf + sizeof(uint16_t);
353 b.end = srv->obuf + srv->fdidx[fd].omtu - 1;
354 b.next = b.start - srv->fdidx[fd].offset;
366 while (db_next(srv, fd, &r)) {
372 sdpd_close_seq(&b, b.start - srv->fdidx[fd].offset);
384 b.next = srv->obuf + srv->fdidx[fd].omtu - 1 - sizeof(uint16_t);
392 be16enc(srv->obuf, (b.next - b.start));
395 srv->fdidx[fd].offset += (b.next - b.start);
397 be16enc(b.next + 1, srv->fdidx[fd].offset);
401 be16enc(srv->obuf, (b.next - b.start));
404 srv->fdidx[fd].offset = 0;
405 db_unselect(srv, fd);
413 srv->pdu.pid = SDP_PDU_SERVICE_SEARCH_ATTRIBUTE_RESPONSE;
414 srv->pdu.len = b.next - srv->obuf;