/// <summary> /// Open a socket file descriptor. /// </summary> public KestrelConfigurationLoader HandleEndpoint(ulong handle, Action <ListenOptions> configure) { if (configure == null) { throw new ArgumentNullException(nameof(configure)); } EndpointsToAdd.Add(() => { Options.ListenHandle(handle, configure); }); return(this); }
/// <summary> /// Listens on all IPs using IPv6 [::], or IPv4 0.0.0.0 if IPv6 is not supported. /// </summary> public KestrelConfigurationLoader AnyIPEndpoint(int port, Action <ListenOptions> configure) { if (configure == null) { throw new ArgumentNullException(nameof(configure)); } EndpointsToAdd.Add(() => { Options.ListenAnyIP(port, configure); }); return(this); }
/// <summary> /// Bind to given Unix domain socket path. /// </summary> public KestrelConfigurationLoader UnixSocketEndpoint(string socketPath, Action <ListenOptions> configure) { if (socketPath == null) { throw new ArgumentNullException(nameof(socketPath)); } if (socketPath.Length == 0 || socketPath[0] != '/') { throw new ArgumentException(CoreStrings.UnixSocketPathMustBeAbsolute, nameof(socketPath)); } if (configure == null) { throw new ArgumentNullException(nameof(configure)); } EndpointsToAdd.Add(() => { Options.ListenUnixSocket(socketPath, configure); }); return(this); }