title: Packet receiving in pthreads raw sockets
body: <p>I am doing a port scanner program as part of a school project where am using raw sockets. My understanding is this:</p>
  
  <p>When using multithreading with raw sockets, each pthread does NOT get a copy of the packets seen by the NIC. Hence to handle all the different thread, I would need a receiving thread that passes messages to the correct thread.</p>
  
  <p>Is this correct?</p>
  
  <p>EDIT : My hypothesis is, the OS sends the packet only once to the process. If the wrong pthread was receiving the packet, the packet could be missed.</p>