icmp_pack_oneCsum() computes the checksum of an icmp message (icmp header plus the ip header of the problem ip packet plus the first 8 bytes of the problem packet). It accomplishes this by computing the checksum (by calling oneC_sum()) of each of the message's buffers.
Note that a checksum is used to determine if errors occurred during the transmission of data.
icmp_pack_oneCsum() is very similar to udp's pack_oneCsum(). The two functions should have been consolidated into one.