Title: packet2user() / eth

packet2user() attempts to move a packet to a higher layer (e.g., ip layer).

If the ethernet file descriptor is not currently being read (i.e., its EFF_READ_IP flag is not set), the packet is placed in the ethernet file descriptor's read queue instead of being passed to the higher layer. If the ethernet file descriptor's NWEO_RWDATONLY flag is set, the packet's header is removed before being moved to the higher layer.