Messing around with read and recv