Remove getmsg() on Solaris and use read() like everyone else.
As long as we put the file descriptor into "message-discard" mode with
the I_SRDOPT ioctl, it'll behave like every other OS and only return
one packet at a time even if more would fit in the buffer.
The MOREDATA flag doesn't mean what we thought it did, so getmsg() has no
efficiency advantages, and we're better off keeping it simple.
Also fix a bug introduced for script_tun mode by commit
337cf1a7.
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>