Socket should now only be required where it is needed