adding support for sockets