Changeset b6fc3f
- Timestamp:
- 02/09/09 21:44:08 (3 years ago)
- Branches:
- master
- Children:
- 955135
- Parents:
- 3ee493
- git-author:
- Erik Ekman <yarrick@…> (02/09/09 21:44:08)
- git-committer:
- Erik Ekman <erik@…> (02/04/12 20:34:00)
- Files:
-
- 6 edited
-
src/dns.c (modified) (1 diff)
-
src/dns.h (modified) (1 diff)
-
src/fw_query.c (modified) (1 diff)
-
src/fw_query.h (modified) (1 diff)
-
src/iodined.c (modified) (1 diff)
-
tests/dns.c (modified) (10 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/dns.c
r155f0c rb6fc3f 184 184 } 185 185 186 short186 unsigned short 187 187 dns_get_id(char *packet, size_t packetlen) 188 188 { -
src/dns.h
ra5031e rb6fc3f 27 27 int dns_encode(char *, size_t, struct query *, qr_t, char *, size_t); 28 28 int dns_encode_ns_response(char *buf, size_t buflen, struct query *q, char *topdomain); 29 short dns_get_id(char *packet, size_t packetlen);29 unsigned short dns_get_id(char *packet, size_t packetlen); 30 30 int dns_decode(char *, size_t, struct query *, qr_t, char *, size_t); 31 31 -
src/fw_query.c
r02d40c rb6fc3f 36 36 } 37 37 38 void fw_query_get( short query_id, struct fw_query **fw_query)38 void fw_query_get(unsigned short query_id, struct fw_query **fw_query) 39 39 { 40 40 int i; -
src/fw_query.h
r155f0c rb6fc3f 31 31 struct sockaddr addr; 32 32 int addrlen; 33 short id;33 unsigned short id; 34 34 }; 35 35 36 36 void fw_query_init(); 37 37 void fw_query_put(struct fw_query *fw_query); 38 void fw_query_get( short query_id, struct fw_query **fw_query);38 void fw_query_get(unsigned short query_id, struct fw_query **fw_query); 39 39 40 40 #endif /*__FW_QUERY_H__*/ -
src/iodined.c
r10fd38 rb6fc3f 626 626 socklen_t fromlen; 627 627 struct fw_query *query; 628 short id;628 unsigned short id; 629 629 int r; 630 630 -
tests/dns.c
r0836ad rb6fc3f 34 34 static void dump_packet(char *, size_t); 35 35 36 static char query Packet[] =36 static char query_packet[] = 37 37 "\x05\x39\x01\x00\x00\x01\x00\x00\x00\x00\x00\x01\x2D\x41\x6A\x62\x63" 38 38 "\x75\x79\x74\x63\x70\x65\x62\x30\x67\x71\x30\x6C\x74\x65\x62\x75\x78" … … 41 41 "\x0A\x00\x01\x00\x00\x29\x10\x00\x00\x00\x80\x00\x00\x00"; 42 42 43 static char answer Packet[] =43 static char answer_packet[] = 44 44 "\x05\x39\x84\x00\x00\x01\x00\x01\x00\x00\x00\x00\x05\x73\x69\x6C\x6C" 45 45 "\x79\x04\x68\x6F\x73\x74\x02\x6F\x66\x06\x69\x6F\x64\x69\x6E\x65\x04" … … 49 49 "\x20\x62\x65\x20\x64\x65\x6C\x69\x76\x65\x72\x65\x64"; 50 50 51 static char answer PacketHighTransId[] =51 static char answer_packet_high_trans_id[] = 52 52 "\x85\x39\x84\x00\x00\x01\x00\x01\x00\x00\x00\x00\x05\x73\x69\x6C\x6C" 53 53 "\x79\x04\x68\x6F\x73\x74\x02\x6F\x66\x06\x69\x6F\x64\x69\x6E\x65\x04" … … 88 88 strcpy(d, topdomain); 89 89 ret = dns_encode(buf, len, &q, QR_QUERY, resolv, strlen(resolv)); 90 len = sizeof(query Packet) - 1; /* Skip extra null character */91 92 if (strncmp(query Packet, buf, sizeof(queryPacket)) || ret != len) {90 len = sizeof(query_packet) - 1; /* Skip extra null character */ 91 92 if (strncmp(query_packet, buf, sizeof(query_packet)) || ret != len) { 93 93 printf("\n"); 94 dump_packet(query Packet, len);94 dump_packet(query_packet, len); 95 95 dump_packet(buf, ret); 96 96 } 97 fail_unless(strncmp(query Packet, buf, sizeof(queryPacket)) == 0, "Did not compile expected packet");97 fail_unless(strncmp(query_packet, buf, sizeof(query_packet)) == 0, "Did not compile expected packet"); 98 98 fail_unless(ret == len, "Bad packet length: %d, expected %d", ret, len); 99 99 } … … 111 111 memset(&buf, 0, sizeof(buf)); 112 112 q.id = 0; 113 len = sizeof(query Packet) - 1;113 len = sizeof(query_packet) - 1; 114 114 enc = get_base32_encoder(); 115 115 116 dns_decode(buf, sizeof(buf), &q, QR_QUERY, query Packet, len);116 dns_decode(buf, sizeof(buf), &q, QR_QUERY, query_packet, len); 117 117 domain = strstr(q.name, topdomain); 118 118 len = sizeof(buf); … … 140 140 141 141 ret = dns_encode(buf, len, &q, QR_ANSWER, msgData, strlen(msgData)); 142 len = sizeof(answer Packet) - 1; /* Skip extra null character */143 144 fail_unless(strncmp(answer Packet, buf, sizeof(answerPacket)) == 0, "Did not compile expected packet");142 len = sizeof(answer_packet) - 1; /* Skip extra null character */ 143 144 fail_unless(strncmp(answer_packet, buf, sizeof(answer_packet)) == 0, "Did not compile expected packet"); 145 145 fail_unless(ret == len, "Bad packet length: %d, expected %d", ret, len); 146 146 } … … 157 157 memset(&buf, 0, sizeof(buf)); 158 158 159 ret = dns_decode(buf, len, &q, QR_ANSWER, answer Packet, sizeof(answerPacket)-1);159 ret = dns_decode(buf, len, &q, QR_ANSWER, answer_packet, sizeof(answer_packet)-1); 160 160 fail_unless(strncmp(msgData, buf, sizeof(msgData)) == 0, "Did not extract expected data"); 161 161 fail_unless(ret == strlen(msgData), "Bad data length: %d, expected %d", ret, strlen(msgData)); … … 174 174 memset(&buf, 0, sizeof(buf)); 175 175 176 ret = dns_decode(buf, len, &q, QR_ANSWER, answer PacketHighTransId, sizeof(answerPacketHighTransId)-1);176 ret = dns_decode(buf, len, &q, QR_ANSWER, answer_packet_high_trans_id, sizeof(answer_packet_high_trans_id)-1); 177 177 fail_unless(strncmp(msgData, buf, sizeof(msgData)) == 0, "Did not extract expected data"); 178 178 fail_unless(ret == strlen(msgData), "Bad data length: %d, expected %d", ret, strlen(msgData)); … … 180 180 } 181 181 END_TEST 182 183 START_TEST(test_get_id_short_packet) 184 { 185 char buf[5]; 186 int len; 187 unsigned short id; 188 189 len = sizeof(buf); 190 memset(&buf, 5, sizeof(buf)); 191 192 id = dns_get_id(buf, len); 193 fail_unless(id == 0); 194 } 195 END_TEST 196 197 START_TEST(test_get_id_low) 198 { 199 unsigned short id; 200 201 id = dns_get_id(answer_packet, sizeof(answer_packet)); 202 fail_unless(id == 1337); 203 } 204 END_TEST 205 206 START_TEST(test_get_id_high) 207 { 208 unsigned short id; 209 210 id = dns_get_id(answer_packet_high_trans_id, sizeof(answer_packet_high_trans_id)); 211 fail_unless(id == 0x8539); 212 } 213 END_TEST 214 182 215 static void 183 216 dump_packet(char *buf, size_t len) … … 210 243 tcase_add_test(tc, test_decode_response); 211 244 tcase_add_test(tc, test_decode_response_with_high_trans_id); 245 tcase_add_test(tc, test_get_id_short_packet); 246 tcase_add_test(tc, test_get_id_low); 247 tcase_add_test(tc, test_get_id_high); 212 248 213 249 return tc;
Note: See TracChangeset
for help on using the changeset viewer.
