summaryrefslogtreecommitdiff
path: root/src/dns_decoder.cpp
diff options
context:
space:
mode:
authorliuxueli <[email protected]>2024-09-05 03:37:21 +0000
committerliuxueli <[email protected]>2024-09-05 03:37:21 +0000
commit26b958817dac10f255bba2d097124085e8475974 (patch)
treebd1acf9e35bd10824d20e17d01f0e990ad8591d8 /src/dns_decoder.cpp
parent256211094a27e09832ab06b7602446bc23a38e25 (diff)
Feature: Export API getting qdcount/ancount/aucount/adcount of headerfeature-yyjson
Diffstat (limited to 'src/dns_decoder.cpp')
-rw-r--r--src/dns_decoder.cpp32
1 files changed, 21 insertions, 11 deletions
diff --git a/src/dns_decoder.cpp b/src/dns_decoder.cpp
index 784ad07..603f786 100644
--- a/src/dns_decoder.cpp
+++ b/src/dns_decoder.cpp
@@ -1894,22 +1894,32 @@ void dns_message_uuid_get0(struct dns_message *msg, char **value, size_t *value_
enum dns_message_type dns_message_type_get(struct dns_message *msg)
{
- if(NULL==msg)
- {
- return DNS_MESSAGE_MAX;
- }
-
- return msg->type;
+ return ((NULL==msg) ? DNS_MESSAGE_MAX : msg->type);
}
int32_t dns_message_header_id_get(struct dns_message *msg)
{
- if(NULL==msg || msg->magic!=DNS_MESSAGE_MAGIC || msg->type==DNS_MESSAGE_TRANSACTION_BEGIN || msg->type==DNS_MESSAGE_TRANSACTION_END)
- {
- return -1;
- }
+ return ((NULL==msg || msg->magic!=DNS_MESSAGE_MAGIC || msg->type==DNS_MESSAGE_TRANSACTION_BEGIN || msg->type==DNS_MESSAGE_TRANSACTION_END) ? -1 : msg->trans_identifier_id);
+}
+
+int32_t dns_message_header_qdcount_get(struct dns_message *msg)
+{
+ return ((NULL==msg || msg->magic!=DNS_MESSAGE_MAGIC || msg->type==DNS_MESSAGE_TRANSACTION_BEGIN || msg->type==DNS_MESSAGE_TRANSACTION_END) ? -1 : msg->n_question);
+}
+
+int32_t dns_message_header_ancount_get(struct dns_message *msg)
+{
+ return ((NULL==msg || msg->magic!=DNS_MESSAGE_MAGIC || msg->type==DNS_MESSAGE_TRANSACTION_BEGIN || msg->type==DNS_MESSAGE_TRANSACTION_END) ? -1 : msg->n_answer_rr);
+}
- return msg->trans_identifier_id;
+int32_t dns_message_header_aucount_get(struct dns_message *msg)
+{
+ return ((NULL==msg || msg->magic!=DNS_MESSAGE_MAGIC || msg->type==DNS_MESSAGE_TRANSACTION_BEGIN || msg->type==DNS_MESSAGE_TRANSACTION_END) ? -1 : msg->n_authority_rr);
+}
+
+int32_t dns_message_header_adcount_get(struct dns_message *msg)
+{
+ return ((NULL==msg || msg->magic!=DNS_MESSAGE_MAGIC || msg->type==DNS_MESSAGE_TRANSACTION_BEGIN || msg->type==DNS_MESSAGE_TRANSACTION_END) ? -1 : msg->n_additional_rr);
}
struct dns_flag *dns_message_header_flag_get0(struct dns_message *msg)