summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/dns.cpp64
1 files changed, 32 insertions, 32 deletions
diff --git a/src/dns.cpp b/src/dns.cpp
index da556ec..cf8c6d8 100644
--- a/src/dns.cpp
+++ b/src/dns.cpp
@@ -1,21 +1,21 @@
/*
*Author ljp
- *V1.01 2015-01-05 �޸�ͷ�ļ����������µ�stream.h
- *V1.02 2015-01-16 �޸�dns_compress_domain����whileѭ����������\0��Ϊ\n
- * ���Ӷ�TCP DNS��ѯ��֧��
+ *V1.01 2015-01-05 �޸�ͷ�ļ����������µ�stream.h
+ *V1.02 2015-01-16 �޸�dns_compress_domain����whileѭ����������\0��Ϊ\n
+ * ���Ӷ�TCP DNS��ѯ��֧��
*V1.03 2015-01-26 cheat pkt TTL set 0.5->1hour
- *V1.04 2015-02-05 �޸�DNS�������ݰ�BUG
- *V1.05 2015-02-12 build_dns_payload�����Ӷ�AAAA����Ӧ���֧��
- *V1.06 2015-03-05 �޸�����TCP DNSʱparse_dns��msg��ֵСBUG
- *V1.07 2015-03-16 �޸�A/AAAAӦ���������ϢBUG
- *V1.08 2015-05-07 �޸�au/adӦ���������ϢBUG
- *V1.09 2015-07-15 �޸�qtype��qclass��������δת�������������
+ *V1.04 2015-02-05 �޸�DNS�������ݰ�BUG
+ *V1.05 2015-02-12 build_dns_payload�����Ӷ�AAAA����Ӧ���֧��
+ *V1.06 2015-03-05 �޸�����TCP DNSʱparse_dns��msg��ֵСBUG
+ *V1.07 2015-03-16 �޸�A/AAAAӦ���������ϢBUG
+ *V1.08 2015-05-07 �޸�au/adӦ���������ϢBUG
+ *V1.09 2015-07-15 �޸�qtype��qclass��������δת�������������
--------------------------------------------------------------------------
- *2015-09-07, LiJia, �޸�ע���ȡflag_id BUG.
- *2015-09-29, LiJia, �޸�TCPЭ��, û�����������ֶ�BUG.
- *2015-10-10, LiJia, �޸�FLAG_CHANGE()����û��copy�ַ������EOF��BUG.
- *2016-09-03, liuxueli, �޸Ĵ����ʽ
+ *2015-09-07, LiJia, �޸�ע���ȡflag_id BUG.
+ *2015-09-29, LiJia, �޸�TCPЭ��, û�����������ֶ�BUG.
+ *2015-10-10, LiJia, �޸�FLAG_CHANGE()����û��copy�ַ������EOF��BUG.
+ *2016-09-03, liuxueli, �޸Ĵ����ʽ
*/
#include <stdio.h>
#include <string.h>
@@ -899,7 +899,7 @@ int set_cheat_pkt_question(unsigned char *payload, int payload_len, dns_query_qu
int compress_len = 0, used_len = 0;
u_char compress_name[DNS_MAX_NAME+1];
- /* ֻ����һ������ */
+ /* ֻ����һ������ */
memset(compress_name, 0, sizeof(compress_name));
compress_len = dns_compress_rr_str(query->qname,strlen((char *)(query->qname)), compress_name);
@@ -1947,7 +1947,21 @@ int parse_dns_protocol(struct streaminfo *a_stream, unsigned char opstate, char
cur_pos = payload + sizeof(dns_hdr_t);
if(dns_register_flag&DNS_ALL)
- {
+ {
+ int ret = parse_query_question(a_stream, &dns_info, payload, payload_len, &cur_pos);
+ if(ret == APP_STATE_DROPME)
+ {
+ FS_operate(g_dns_proto_info.stat_handle, g_dns_proto_info.fild_id[ERR_PKT], 0, FS_OP_ADD, 1);
+ return APP_STATE_GIVEME;
+ }
+
+ ret = parse_resource_record(a_stream, &dns_info, payload, payload_len, &cur_pos, DNS_RR_TYPE_ALL);
+ if(ret == APP_STATE_DROPME)
+ {
+ FS_operate(g_dns_proto_info.stat_handle, g_dns_proto_info.fild_id[ERR_PKT], 0, FS_OP_ADD, 1);
+ return APP_STATE_GIVEME;
+ }
+
int message_id=0;
if(dns_info.hdr_info.qr==0)
{
@@ -1976,20 +1990,6 @@ int parse_dns_protocol(struct streaminfo *a_stream, unsigned char opstate, char
dir_state=DNS_DIR_RESPONSE;
}
}
-
- int ret = parse_query_question(a_stream, &dns_info, payload, payload_len, &cur_pos);
- if(ret == APP_STATE_DROPME)
- {
- FS_operate(g_dns_proto_info.stat_handle, g_dns_proto_info.fild_id[ERR_PKT], 0, FS_OP_ADD, 1);
- return APP_STATE_GIVEME;
- }
-
- ret = parse_resource_record(a_stream, &dns_info, payload, payload_len, &cur_pos, DNS_RR_TYPE_ALL);
- if(ret == APP_STATE_DROPME)
- {
- FS_operate(g_dns_proto_info.stat_handle, g_dns_proto_info.fild_id[ERR_PKT], 0, FS_OP_ADD, 1);
- return APP_STATE_GIVEME;
- }
state=callback_dns_business_plug(a_stream, one_session, (void *)&dns_info, DNS_ALL, session_state, thread_seq, a_packet);
dns_session_management(a_stream, context, one_session, dns_info.hdr_info.id, dir_state, a_packet);
@@ -2104,7 +2104,7 @@ char DNS_TCP_ENTRY(struct streaminfo *a_tcp, void **pme, int thread_seq, void *a
switch(a_tcp->opstate)
{
- case OP_STATE_PENDING: /* ��δ������������Ϣ */
+ case OP_STATE_PENDING: /* ��δ������������Ϣ */
if(*pme == NULL)
{
*pme = dictator_malloc(thread_seq, sizeof(struct dns_context));
@@ -2229,7 +2229,7 @@ int DNS_INIT()
/****************************************************************************
??????:DNS_DESTRORY()
-?????DNS???��???????????????????
+?????DNS???��???????????????????
??????
???????
*****************************************************************************/
@@ -2303,7 +2303,7 @@ long long FLAG_CHANGE(char* raw_flag_str)
return dns_portflag;
}
-//TODO����δʵ��
+//TODO����δʵ��
void FLAG_PROT_FUNSTAT (long long protflag)
{
return ;