- Net::StreamSocket *sock;
- IO::EventDispatcher *event_disp;
- Net::Resolver *resolver;
- ResolveListener *resolve_listener;
- unsigned resolve_tag;
- std::string user_agent;
- Request *request;
- Response *response;
+ std::unique_ptr<Net::StreamSocket> sock;
+ IO::EventDispatcher *event_disp = nullptr;
+ Net::Resolver *resolver = nullptr;
+ std::unique_ptr<ResolveListener> resolve_listener;
+ unsigned resolve_tag = 0;
+ std::string user_agent = "libmspnet/1.0";
+ std::unique_ptr<Request> request;
+ std::unique_ptr<Response> response;