1]&AND_LOGIC, tmp1[2]&AND_LOGIC,tmp1[3]&AND_LOGIC,
? ? ? ? ? ? tmp1[4]&AND_LOGIC, tmp1[5]&AND_LOGIC,
? ? ? ? ? ? tmp2[0]&AND_LOGIC, tmp2[1]&AND_LOGIC, tmp2[2]&AND_LOGIC,tmp2[3]&AND_LOGIC,
? ? ? ? ? ? tmp2[4]&AND_LOGIC, tmp2[5]&AND_LOGIC);
tmp1 = (char*)&ip_hdr->ip_src;
tmp2 = (char*)&ip_hdr->ip_dest;
/* print the IP addresses of source and receiving host */
printf("IP: %d.%d.%d.%d => %d.%d.%d.%d",
? ? ? ? ? ? tmp1[0]&AND_LOGIC, tmp1[1]&AND_LOGIC, tmp1[2]&AND_LOGIC,tmp1[3]&AND_LOGIC,
? ? ? ? ? ? tmp2[0]&AND_LOGIC, tmp2[1]&AND_LOGIC, tmp2[2]&AND_LOGIC,tmp2[3]&AND_LOGIC);
/* print the IP protocol which was used by the socket communication */
switch(ip_hdr->ip_protocol) {
? ? ? ? case IPPROTO_ICMP: LOGI("ICMP"); break;
? ? ? ? case IPPROTO_IGMP: LOGI("IGMP"); break;
? ? ? ? case IPPROTO_IPIP: LOGI("IPIP"); break;
? ? ? ? case IPPROTO_TCP:
? case IPPROTO_UDP:
? ? ? ? ? ? ? ? ? ? ? ? ? ? LOGI("Protocol: %s", ip_hdr->ip_protocol == IPPROTO_TCP ? "TCP" : "UDP");
? ? ? ? ? ? ? ? ? ? ? ? ? ? LOGI("Source port: %u, destination port: %u", udp_hdr->s_port, udp_hdr->d_port);
? ? ? ? ? ? ? ? ? ? ? ? ? ? break;
? ? ? ? case IPPROTO_RAW: LOGI("RAW"); break;
? ? ? ? default: printf("Unknown, please query in inclued/linux/in.h\n"); break;
}