[an error occurred while processing this directive]
|
for(z=0;z
unsigned int checksum(unsigned char * ptr, unsigned int nbytes)
{
unsigned long sum=0;
unsigned short h_bit, l_bit;
unsigned char z=0;
h_bit = ptr[z];
h_bit = h_bit<<8;
l_bit = ptr[z+1];
sum += (h_bit+l_bit)&0xffff;
sum = (sum & 0xffff) + (sum >> 16);
z++;
};
return ~sum & 0xffff;
}
почему при передаче nbytes > 255 вылетает в ошибку.
Я уже хз ....
E-mail: info@telesys.ru