Lines Matching refs:item
1778 struct server_reply_item **itemp, *item; in evdns_server_request_add_reply() local
1805 item = mm_malloc(sizeof(struct server_reply_item)); in evdns_server_request_add_reply()
1806 if (!item) in evdns_server_request_add_reply()
1808 item->next = NULL; in evdns_server_request_add_reply()
1809 if (!(item->name = mm_strdup(name))) { in evdns_server_request_add_reply()
1810 mm_free(item); in evdns_server_request_add_reply()
1813 item->type = type; in evdns_server_request_add_reply()
1814 item->dns_question_class = class; in evdns_server_request_add_reply()
1815 item->ttl = ttl; in evdns_server_request_add_reply()
1816 item->is_name = is_name != 0; in evdns_server_request_add_reply()
1817 item->datalen = 0; in evdns_server_request_add_reply()
1818 item->data = NULL; in evdns_server_request_add_reply()
1820 if (item->is_name) { in evdns_server_request_add_reply()
1821 if (!(item->data = mm_strdup(data))) { in evdns_server_request_add_reply()
1822 mm_free(item->name); in evdns_server_request_add_reply()
1823 mm_free(item); in evdns_server_request_add_reply()
1826 item->datalen = (u16)-1; in evdns_server_request_add_reply()
1828 if (!(item->data = mm_malloc(datalen))) { in evdns_server_request_add_reply()
1829 mm_free(item->name); in evdns_server_request_add_reply()
1830 mm_free(item); in evdns_server_request_add_reply()
1833 item->datalen = datalen; in evdns_server_request_add_reply()
1834 memcpy(item->data, data, datalen); in evdns_server_request_add_reply()
1838 *itemp = item; in evdns_server_request_add_reply()
1947 struct server_reply_item *item; in evdns_server_request_format_response() local
1949 item = req->answer; in evdns_server_request_format_response()
1951 item = req->authority; in evdns_server_request_format_response()
1953 item = req->additional; in evdns_server_request_format_response()
1954 while (item) { in evdns_server_request_format_response()
1955 r = dnsname_to_labels(buf, buf_len, j, item->name, strlen(item->name), &table); in evdns_server_request_format_response()
1960 APPEND16(item->type); in evdns_server_request_format_response()
1961 APPEND16(item->dns_question_class); in evdns_server_request_format_response()
1962 APPEND32(item->ttl); in evdns_server_request_format_response()
1963 if (item->is_name) { in evdns_server_request_format_response()
1967 r = dnsname_to_labels(buf, buf_len, j, item->data, strlen(item->data), &table); in evdns_server_request_format_response()
1974 APPEND16(item->datalen); in evdns_server_request_format_response()
1975 if (j+item->datalen > (off_t)buf_len) in evdns_server_request_format_response()
1977 memcpy(buf+j, item->data, item->datalen); in evdns_server_request_format_response()
1978 j += item->datalen; in evdns_server_request_format_response()
1980 item = item->next; in evdns_server_request_format_response()