keep on error event, remove ability to destroy socket multiple times