basic socket operations working