1 --- 0.8.7e/ping.c 2009-06-28 21:45:02.000000000 -0400
2 +++ ../branches/0.8.7/ping.c 2009-08-18 20:51:30.000000000 -0400
4 return(cleaned_hostname);
7 -/*! \fn unsigned short get_checksum(void* buf, int len)
8 +/*! \fn unsigned short int get_checksum(void* buf, int len)
9 * \brief calculates a 16bit checksum of a packet buffer
10 * \param buf the input buffer to calculate the checksum of
11 * \param len the size of the input buffer
13 * \return 16bit checksum of an input buffer of size len.
16 -unsigned short get_checksum(void* buf, int len) {
17 +unsigned short int get_checksum(void* buf, int len) {
20 - unsigned short answer;
21 - unsigned short* w = (unsigned short*)buf;
22 + unsigned short int answer;
23 + unsigned short int* w = (unsigned short int*)buf;
24 + unsigned short int odd_byte = 0;
32 - sum += *(unsigned char*)w;
33 + *(unsigned char*)(&odd_byte) = *(unsigned char*)w;
37 sum = (sum >> 16) + (sum & 0xffff);
38 --- 0.8.7e/ping.h 2009-06-28 21:45:02.000000000 -0400
39 +++ ../branches/0.8.7/ping.h 2009-08-18 20:51:30.000000000 -0400
41 extern char *remove_tcp_udp_from_hostname(char *hostname);
42 extern void update_host_status(int status, host_t *host, ping_t *ping, int availability_method);
43 extern int init_sockaddr(struct sockaddr_in *name, const char *hostname, unsigned short int port);
44 -extern unsigned short get_checksum(void* buf, int len);
45 +extern unsigned short int get_checksum(void* buf, int len);