You have allocated receiveBuf as an empty string, so there is no space to store the data you would receive in the function call. I would replace
char * receiveBuf="";
ssize_t dataSize = 60000;
with
ssize_t dataSize = 60000;
char * receiveBuf = malloc(dataSize);
and don't forget to call free later as needed.
Also based on the error this call may block until it receives dataSize bytes. You should check the documentation for that.