/* add some futher fields */
ldns_buffer_printf(output, ";; Query time: %d msec\n", ldns_pkt_querytime(pkt));
if (ldns_pkt_answerfrom(pkt)) {
- ldns_buffer_printf(output, ";; Server: %s\n", ldns_pkt_answerfrom(pkt));
+ ldns_buffer_printf(output, ";; SERVER: %s\n", ldns_pkt_answerfrom(pkt));
}
+ ldns_buffer_printf(output, ";; MSG SIZE rcvd: %d\n", (int)ldns_pkt_size(pkt));
} else {
return ldns_buffer_status(output);
}
{
char *result = NULL;
/* XXX MAXTEXTPACKET?? */
- ldns_buffer *tmp_buffer = ldns_buffer_new(65535);
+ ldns_buffer *tmp_buffer = ldns_buffer_new(MAX_PACKET_SIZE);
if (ldns_pkt2buffer_str(tmp_buffer, pkt) == LDNS_STATUS_OK) {
/* export and return string, destroy rest */
char *_answerfrom;
/** \brief query duration */
uint32_t _querytime;
+ /** \brief the packet size */
+ size_t _size;
/** \brief query data */
/** \brief question section */
ldns_rr_list *_question;
uint16_t ldns_pkt_arcount(ldns_pkt *);
char *ldns_pkt_answerfrom(ldns_pkt *packet);
uint32_t ldns_pkt_querytime(ldns_pkt *);
+size_t ldns_pkt_size(ldns_pkt *);
ldns_rr_list *ldns_pkt_question(ldns_pkt *packet);
ldns_rr_list *ldns_pkt_answer(ldns_pkt *packet);
void ldns_pkt_set_arcount(ldns_pkt *, uint16_t);
void ldns_pkt_set_answerfrom(ldns_pkt *, char *);
void ldns_pkt_set_querytime(ldns_pkt *, uint32_t);
+void ldns_pkt_set_size(ldns_pkt *, size_t);
/**
* Allocates and initializes a ldns_pkt structure
LDNS_STATUS_OK) {
return NULL;
} else {
+ ldns_pkt_set_size(answer_pkt, (size_t) bytes);
return answer_pkt;
}
}
printf("could not create packet\n");
return NULL;
} else {
+ ldns_pkt_set_size(answer_pkt, (size_t) bytes);
return answer_pkt;
}
}
return packet->_additional;
}
+size_t
+ldns_pkt_size(ldns_pkt *packet)
+{
+ return packet->_size;
+}
+
uint32_t
ldns_pkt_querytime(ldns_pkt *packet)
{
packet->_answerfrom = answerfrom;
}
+void
+ldns_pkt_set_size(ldns_pkt *packet, size_t s)
+{
+ packet->_size = s;
+}
+
/**
* push an rr on a packet
* \param[in] packet packet to operatore on
printf("query type is not correct type\n");
return NULL;
}
- printf("We are ASKING the question\n\n");
-
/* prepare a question pkt from the parameters
* and then send this */
query_pkt = ldns_pkt_query_new(name, type, class, flags);