Lines Matching refs:item
263 struct server_reply_item *next; /* next item in sequence. */
1764 struct server_reply_item **itemp, *item;
1791 item = mm_malloc(sizeof(struct server_reply_item));
1792 if (!item)
1794 item->next = NULL;
1795 if (!(item->name = mm_strdup(name))) {
1796 mm_free(item);
1799 item->type = type;
1800 item->dns_question_class = class;
1801 item->ttl = ttl;
1802 item->is_name = is_name != 0;
1803 item->datalen = 0;
1804 item->data = NULL;
1806 if (item->is_name) {
1807 if (!(item->data = mm_strdup(data))) {
1808 mm_free(item->name);
1809 mm_free(item);
1812 item->datalen = (u16)-1;
1814 if (!(item->data = mm_malloc(datalen))) {
1815 mm_free(item->name);
1816 mm_free(item);
1819 item->datalen = datalen;
1820 memcpy(item->data, data, datalen);
1824 *itemp = item;
1933 struct server_reply_item *item;
1935 item = req->answer;
1937 item = req->authority;
1939 item = req->additional;
1940 while (item) {
1941 r = dnsname_to_labels(buf, buf_len, j, item->name, strlen(item->name), &table);
1946 APPEND16(item->type);
1947 APPEND16(item->dns_question_class);
1948 APPEND32(item->ttl);
1949 if (item->is_name) {
1953 r = dnsname_to_labels(buf, buf_len, j, item->data, strlen(item->data), &table);
1960 APPEND16(item->datalen);
1961 if (j+item->datalen > (off_t)buf_len)
1963 memcpy(buf+j, item->data, item->datalen);
1964 j += item->datalen;
1966 item = item->next;
2711 /* only item in the list */