modified:   packet.c