Browse Source

Format code

Nick Peng 7 years ago
parent
commit
9e4ac50ee8
8 changed files with 52 additions and 56 deletions
  1. 2 2
      src/dns_cache.h
  2. 11 13
      src/dns_client.c
  3. 2 1
      src/dns_client.h
  4. 15 17
      src/dns_server.c
  5. 11 13
      src/fast_ping.c
  6. 3 2
      src/fast_ping.h
  7. 1 1
      src/include/conf.h
  8. 7 7
      src/smartdns.c

+ 2 - 2
src/dns_cache.h

@@ -1,11 +1,11 @@
 #ifndef _SMARTDNS_CACHE_H
 #define _SMARTDNS_CACHE_H
 
+#include "atomic.h"
 #include "dns.h"
-#include "hashtable.h"
 #include "hash.h"
+#include "hashtable.h"
 #include "list.h"
-#include "atomic.h"
 #include <time.h>
 
 struct dns_cache {

+ 11 - 13
src/dns_client.c

@@ -52,7 +52,7 @@
 #define DNS_TCP_BUFFER (16 * 1024)
 
 #ifndef TCP_FASTOPEN_CONNECT
-#define TCP_FASTOPEN_CONNECT 30 
+#define TCP_FASTOPEN_CONNECT 30
 #endif
 
 struct dns_client_ecs {
@@ -231,8 +231,8 @@ int _dns_client_server_exist(struct addrinfo *gai, dns_server_type_t server_type
 	return -1;
 }
 
-void _dns_client_server_update_ttl(struct ping_host_struct *ping_host, const char *host, FAST_PING_RESULT result, struct sockaddr *addr, socklen_t addr_len, int seqno,
-							int ttl, struct timeval *tv, void *userptr)
+void _dns_client_server_update_ttl(struct ping_host_struct *ping_host, const char *host, FAST_PING_RESULT result, struct sockaddr *addr, socklen_t addr_len,
+								   int seqno, int ttl, struct timeval *tv, void *userptr)
 {
 	struct dns_server_info *server_info = userptr;
 	if (result != PING_RESULT_RESPONSE || server_info == NULL) {
@@ -661,9 +661,9 @@ static int _dns_client_recv(struct dns_server_info *server_info, unsigned char *
 		return -1;
 	}
 
-	tlog(TLOG_DEBUG, "qdcount = %d, ancount = %d, nscount = %d, nrcount = %d, len = %d, id = %d, tc = %d, rd = %d, ra = %d, rcode = %d, payloadsize = %d\n", packet->head.qdcount,
-		 packet->head.ancount, packet->head.nscount, packet->head.nrcount, inpacket_len, packet->head.id, packet->head.tc, packet->head.rd, packet->head.ra,
-		 packet->head.rcode, dns_get_OPT_payload_size(packet));
+	tlog(TLOG_DEBUG, "qdcount = %d, ancount = %d, nscount = %d, nrcount = %d, len = %d, id = %d, tc = %d, rd = %d, ra = %d, rcode = %d, payloadsize = %d\n",
+		 packet->head.qdcount, packet->head.ancount, packet->head.nscount, packet->head.nrcount, inpacket_len, packet->head.id, packet->head.tc,
+		 packet->head.rd, packet->head.ra, packet->head.rcode, dns_get_OPT_payload_size(packet));
 
 	/* get question */
 	rrs = dns_get_rrs_start(packet, DNS_RRS_QD, &rr_count);
@@ -710,7 +710,7 @@ static int _dns_client_create_socket_udp(struct dns_server_info *server_info)
 	int fd = 0;
 	struct epoll_event event;
 	const int on = 1;
-	const int val=255;
+	const int val = 255;
 
 	fd = socket(server_info->ai_family, SOCK_DGRAM, 0);
 	if (fd < 0) {
@@ -757,7 +757,7 @@ static int _DNS_client_create_socket_tcp(struct dns_server_info *server_info)
 		goto errout;
 	}
 
-	if (setsockopt(fd, IPPROTO_TCP, TCP_FASTOPEN_CONNECT, &yes, sizeof(yes)) != 0 ) {
+	if (setsockopt(fd, IPPROTO_TCP, TCP_FASTOPEN_CONNECT, &yes, sizeof(yes)) != 0) {
 		tlog(TLOG_DEBUG, "enable TCP fast open failed.");
 	}
 
@@ -819,7 +819,7 @@ static int _DNS_client_create_socket_tls(struct dns_server_info *server_info)
 		goto errout;
 	}
 
-	if (setsockopt(fd, IPPROTO_TCP, TCP_FASTOPEN_CONNECT, &yes, sizeof(yes)) != 0 ) {
+	if (setsockopt(fd, IPPROTO_TCP, TCP_FASTOPEN_CONNECT, &yes, sizeof(yes)) != 0) {
 		tlog(TLOG_DEBUG, "enable TCP fast open failed.");
 	}
 
@@ -920,10 +920,8 @@ static int _dns_client_process_udp(struct dns_server_info *server_info, struct e
 	from_len = msg.msg_namelen;
 
 	for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg)) {
-		if (cmsg->cmsg_level == SOL_IP
-			&& cmsg->cmsg_type == IP_TTL
-		) {
-			uint8_t * ttlPtr = (uint8_t *)CMSG_DATA(cmsg);
+		if (cmsg->cmsg_level == SOL_IP && cmsg->cmsg_type == IP_TTL) {
+			uint8_t *ttlPtr = (uint8_t *)CMSG_DATA(cmsg);
 			ttl = *ttlPtr;
 			break;
 		}

+ 2 - 1
src/dns_client.h

@@ -25,7 +25,8 @@ int dns_client_init(void);
 int dns_client_set_ecs(char *ip, int subnet);
 
 /* query result notify function */
-typedef int (*dns_client_callback)(char *domain, dns_result_type rtype, unsigned int result_flag, struct dns_packet *packet, unsigned char *inpacket, int inpacket_len, void *user_ptr);
+typedef int (*dns_client_callback)(char *domain, dns_result_type rtype, unsigned int result_flag, struct dns_packet *packet, unsigned char *inpacket,
+								   int inpacket_len, void *user_ptr);
 
 /* query domain */
 int dns_client_query(char *domain, int qtype, dns_client_callback callback, void *user_ptr);

+ 15 - 17
src/dns_server.c

@@ -18,10 +18,10 @@
 #define _GNU_SOURCE
 #include "dns_server.h"
 #include "atomic.h"
-#include "dns_conf.h"
 #include "dns.h"
 #include "dns_cache.h"
 #include "dns_client.h"
+#include "dns_conf.h"
 #include "fast_ping.h"
 #include "hashtable.h"
 #include "list.h"
@@ -528,7 +528,8 @@ int _dns_server_request_complete(struct dns_request *request)
 		if (request->has_ipv4) {
 			dns_cache_insert(request->domain, cname, cname_ttl, request->ttl_v4, DNS_T_AAAA, request->ipv4_addr, DNS_RR_A_LEN);
 
-			if (((request->ping_ttl_v4 + (dns_conf_dualstack_ip_selection_threshold * 10) < request->ping_ttl_v6 ) && (request->ping_ttl_v4 > 0)) || (request->ping_ttl_v6 == -1) ) {
+			if (((request->ping_ttl_v4 + (dns_conf_dualstack_ip_selection_threshold * 10) < request->ping_ttl_v6) && (request->ping_ttl_v4 > 0)) ||
+				(request->ping_ttl_v6 == -1)) {
 				tlog(TLOG_DEBUG, "Force IPV4 perfered.");
 				return _dns_server_reply_SOA(DNS_RC_NOERROR, request, NULL);
 			}
@@ -602,16 +603,15 @@ void _dns_server_select_maxhit_ipaddress(struct dns_request *request)
 
 	tlog(TLOG_DEBUG, "select best ip address, %s", request->domain);
 	switch (request->qtype) {
-		case DNS_T_A: {
-			memcpy(request->ipv4_addr, maxhit_addr_map->ipv4_addr, DNS_RR_A_LEN);
-			request->ttl_v4 = DNS_SERVER_TMOUT_TTL;
-		} break;
-		case DNS_T_AAAA: {
-			memcpy(request->ipv6_addr, maxhit_addr_map->ipv6_addr, DNS_RR_AAAA_LEN);
-			request->ttl_v6 = DNS_SERVER_TMOUT_TTL;
-		}
-		break;
-		default:
+	case DNS_T_A: {
+		memcpy(request->ipv4_addr, maxhit_addr_map->ipv4_addr, DNS_RR_A_LEN);
+		request->ttl_v4 = DNS_SERVER_TMOUT_TTL;
+	} break;
+	case DNS_T_AAAA: {
+		memcpy(request->ipv6_addr, maxhit_addr_map->ipv6_addr, DNS_RR_AAAA_LEN);
+		request->ttl_v6 = DNS_SERVER_TMOUT_TTL;
+	} break;
+	default:
 		break;
 	}
 }
@@ -625,8 +625,7 @@ void _dns_server_request_release(struct dns_request *request)
 	int refcnt = atomic_dec_return(&request->refcnt);
 	if (refcnt) {
 		if (refcnt < 0) {
-			tlog(TLOG_ERROR, "BUG: refcnt is %d, domain %s, qtype =%d", refcnt, request->domain,
-				request->qtype);
+			tlog(TLOG_ERROR, "BUG: refcnt is %d, domain %s, qtype =%d", refcnt, request->domain, request->qtype);
 			abort();
 		}
 		return;
@@ -675,7 +674,6 @@ void _dns_server_ping_result(struct ping_host_struct *ping_host, const char *hos
 
 	unsigned int rtt = tv->tv_sec * 10000 + tv->tv_usec / 100;
 
-
 	switch (addr->sa_family) {
 	case AF_INET: {
 		struct sockaddr_in *addr_in;
@@ -1007,8 +1005,8 @@ static int dns_server_update_reply_packet_id(struct dns_request *request, unsign
 	return 0;
 }
 
-static int dns_server_resolve_callback(char *domain, dns_result_type rtype, unsigned int result_flag, struct dns_packet *packet, unsigned char *inpacket, int inpacket_len,
-									   void *user_ptr)
+static int dns_server_resolve_callback(char *domain, dns_result_type rtype, unsigned int result_flag, struct dns_packet *packet, unsigned char *inpacket,
+									   int inpacket_len, void *user_ptr)
 {
 	struct dns_request *request = user_ptr;
 	int ip_num = 0;

+ 11 - 13
src/fast_ping.c

@@ -53,14 +53,14 @@ struct ping_dns_head {
 	unsigned short adcount;
 } __attribute__((packed));
 
-typedef enum FAST_PING_TYPE { 
-	FAST_PING_ICMP = 1, 
-	FAST_PING_ICMP6 = 2, 
-	FAST_PING_TCP, 
-	FAST_PING_UDP, 
+typedef enum FAST_PING_TYPE {
+	FAST_PING_ICMP = 1,
+	FAST_PING_ICMP6 = 2,
+	FAST_PING_TCP,
+	FAST_PING_UDP,
 	FAST_PING_UDP6,
 	FAST_PING_END,
-}  FAST_PING_TYPE;
+} FAST_PING_TYPE;
 
 struct fast_ping_packet_msg {
 	struct timeval tv;
@@ -636,7 +636,7 @@ static int _fast_ping_create_udp_sock(FAST_PING_TYPE type)
 			tlog(TLOG_ERROR, "create udp socket failed, %s\n", strerror(errno));
 			goto errout;
 		}
-		
+
 		udp_host = &ping.udp_host;
 		break;
 	case FAST_PING_UDP6:
@@ -645,7 +645,7 @@ static int _fast_ping_create_udp_sock(FAST_PING_TYPE type)
 			tlog(TLOG_ERROR, "create udp socket failed, %s\n", strerror(errno));
 			goto errout;
 		}
-		
+
 		udp_host = &ping.udp6_host;
 		break;
 	default:
@@ -671,7 +671,7 @@ errout:
 	return -1;
 }
 
-static int _fast_ping_create_udp(FAST_PING_TYPE type) 
+static int _fast_ping_create_udp(FAST_PING_TYPE type)
 {
 	int fd = 0;
 	int *set_fd = NULL;
@@ -1176,10 +1176,8 @@ static int _fast_ping_process_udp(struct ping_host_struct *ping_host, struct tim
 	}
 
 	for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg)) {
-		if (cmsg->cmsg_level == SOL_IP
-			&& cmsg->cmsg_type == IP_TTL
-		) {
-			uint8_t * ttlPtr = (uint8_t *)CMSG_DATA(cmsg);
+		if (cmsg->cmsg_level == SOL_IP && cmsg->cmsg_type == IP_TTL) {
+			uint8_t *ttlPtr = (uint8_t *)CMSG_DATA(cmsg);
 			ttl = *ttlPtr;
 			break;
 		}

+ 3 - 2
src/fast_ping.h

@@ -1,8 +1,8 @@
 #ifndef FAST_PING_H
 #define FAST_PING_H
 
-#include <sys/time.h>
 #include <netdb.h>
+#include <sys/time.h>
 #ifdef __cpluscplus
 extern "C" {
 #endif
@@ -20,7 +20,8 @@ typedef enum {
 } FAST_PING_RESULT;
 
 struct ping_host_struct;
-typedef void (*fast_ping_result)(struct ping_host_struct *ping_host, const char *host, FAST_PING_RESULT result, struct sockaddr *addr, socklen_t addr_len, int seqno, int ttl, struct timeval *tv, void *userptr);
+typedef void (*fast_ping_result)(struct ping_host_struct *ping_host, const char *host, FAST_PING_RESULT result, struct sockaddr *addr, socklen_t addr_len,
+								 int seqno, int ttl, struct timeval *tv, void *userptr);
 
 /* start ping */
 struct ping_host_struct *fast_ping_start(PING_TYPE type, const char *host, int count, int interval, int timeout, fast_ping_result ping_callback, void *userptr);

+ 1 - 1
src/include/conf.h

@@ -97,7 +97,7 @@ extern int conf_size(const char *item, void *data, int argc, char *argv[]);
 /*
  * Example:
  *  int num = 0;
- * 
+ *
  *  struct config_item itmes [] = {
  *       CONF_INT("CONF_NUM", &num, -1, 10),
  *       CONF_END();

+ 7 - 7
src/smartdns.c

@@ -19,8 +19,8 @@
 #define _GNU_SOURCE
 #include "art.h"
 #include "atomic.h"
-#include "dns_conf.h"
 #include "dns_client.h"
+#include "dns_conf.h"
 #include "dns_server.h"
 #include "fast_ping.h"
 #include "hashtable.h"
@@ -124,8 +124,8 @@ int smartdns_add_servers(void)
 	int i = 0;
 	int ret = 0;
 	for (i = 0; i < dns_conf_server_num; i++) {
-		ret = dns_add_server(dns_conf_servers[i].server, dns_conf_servers[i].port, dns_conf_servers[i].type, dns_conf_servers[i].result_flag, 
-			dns_conf_servers[i].ttl);
+		ret = dns_add_server(dns_conf_servers[i].server, dns_conf_servers[i].port, dns_conf_servers[i].type, dns_conf_servers[i].result_flag,
+							 dns_conf_servers[i].ttl);
 		if (ret != 0) {
 			tlog(TLOG_ERROR, "add server failed, %s:%d", dns_conf_servers[i].server, dns_conf_servers[i].port);
 			return -1;
@@ -267,7 +267,7 @@ int smartdns_init(void)
 	}
 
 	ret = smartdns_set_ecs_ip();
-	if (ret != 0 ) {
+	if (ret != 0) {
 		tlog(TLOG_WARN, "set ecs ip address failed.");
 	}
 
@@ -299,8 +299,8 @@ void sig_exit(int signo)
 
 void sig_error_exit(int signo, siginfo_t *siginfo, void *context)
 {
-	tlog(TLOG_ERROR, "process exit with signal %d, code = %d, errno = %d, pid = %d, self = %d, addr = %p\n", signo, 
-		siginfo->si_code, siginfo->si_errno, siginfo->si_pid, getpid(), siginfo->si_addr);
+	tlog(TLOG_ERROR, "process exit with signal %d, code = %d, errno = %d, pid = %d, self = %d, addr = %p\n", signo, siginfo->si_code, siginfo->si_errno,
+		 siginfo->si_pid, getpid(), siginfo->si_addr);
 	sleep(1);
 	_exit(0);
 }
@@ -386,7 +386,7 @@ int main(int argc, char *argv[])
 	atexit(smartdns_exit);
 
 	return smartdns_run();
-	
+
 errout:
 
 	return 1;