moved sock errors to exceptions