Class ProxyEndPoint
An abstract endpoint where the proxy listens
Inheritance
Inherited Members
Namespace: Titanium.Web.Proxy.Models
Assembly: Titanium.Web.Proxy.dll
Syntax
public abstract class ProxyEndPoint
Constructors
| Edit this page View SourceProxyEndPoint(IPAddress, int, bool)
Constructor.
Declaration
protected ProxyEndPoint(IPAddress ipAddress, int port, bool decryptSsl)
Parameters
| Type | Name | Description |
|---|---|---|
| IPAddress | ipAddress | |
| int | port | |
| bool | decryptSsl |
Properties
| Edit this page View SourceAcceptConnectTcp
When true, HTTP/2 on this listener accepts
:protocol = connect-tcp and advertises SETTINGS_ENABLE_CONNECT_PROTOCOL.
Default false. Does not imply EnableRfc8441.
Declaration
public bool AcceptConnectTcp { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
AcceptConnectUdp
When true, this listener accepts :protocol=connect-udp and relays
it with the same target policy, authentication, and caps as a MASQUE listener.
Default false. Not implied by WebSocket or WebTransport flags.
Declaration
public bool AcceptConnectUdp { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
AcceptProxyProtocol
When true, the accept loop requires a PROXY protocol preamble.
Declaration
public bool AcceptProxyProtocol { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
AcceptWebTransport
When true, this listener accepts HTTP/1.1 and HTTP/2 WebTransport
(Upgrade: webtransport or :protocol=webtransport) and advertises
extended CONNECT plus SETTINGS_WT_MAX_SESSIONS. Default false.
Declaration
public bool AcceptWebTransport { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
AdmittedClientCount
Number of client connections currently admitted on this endpoint (accepted and past the admission gate, not yet finished being handled).
Declaration
public int AdmittedClientCount { get; }
Property Value
| Type | Description |
|---|---|
| int |
ClientCertificateMode
Inbound client-certificate mode. None changes nothing.
Declaration
public ClientCertificateMode ClientCertificateMode { get; set; }
Property Value
| Type | Description |
|---|---|
| ClientCertificateMode |
ClientCertificateTrustedRoots
Trust anchors for an inbound client certificate. Null uses the platform trust store, which is the historical behavior. A reload assigns a new collection; it never mutates one that a handshake is already reading.
Declaration
public X509Certificate2Collection? ClientCertificateTrustedRoots { get; set; }
Property Value
| Type | Description |
|---|---|
| X509Certificate2Collection |
ConnectUdpOptions
Target policy used when AcceptConnectUdp is true. The same object a MASQUE listener uses: authentication, allowed ports, and private-target blocking.
Declaration
[Experimental("TWP001")]
public MasqueOptions ConnectUdpOptions { get; set; }
Property Value
| Type | Description |
|---|---|
| MasqueOptions |
DecryptSsl
Enable SSL?
Declaration
public bool DecryptSsl { get; }
Property Value
| Type | Description |
|---|---|
| bool |
EnableHttpInterception
Endpoint-level override for EnableHttpInterception. null inherits the server-level value.
Declaration
public bool? EnableHttpInterception { get; set; }
Property Value
| Type | Description |
|---|---|
| bool? |
GenericCertificate
Generic certificate to use for SSL decryption.
Declaration
public X509Certificate2? GenericCertificate { get; set; }
Property Value
| Type | Description |
|---|---|
| X509Certificate2 |
IpAddress
Ip Address we are listening.
Declaration
public IPAddress IpAddress { get; }
Property Value
| Type | Description |
|---|---|
| IPAddress |
MaxCachedConnections
Optional override of MaxCachedConnections for upstream TCP pooling when this endpoint handles the session. null uses the server default. Useful for reverse-proxy endpoints that want a deeper pool toward a hot origin without raising the process-wide default for every explicit MITM host.
Declaration
public int? MaxCachedConnections { get; set; }
Property Value
| Type | Description |
|---|---|
| int? |
MaxConcurrentClients
Maximum number of client connections admitted on this endpoint at once, layered on top of MaxConcurrentClientConnections. null (the default) disables the per-endpoint admission gate, preserving today's unbounded behavior.
Declaration
public int? MaxConcurrentClients { get; set; }
Property Value
| Type | Description |
|---|---|
| int? |
Port
Port we are listening.
Declaration
public int Port { get; }
Property Value
| Type | Description |
|---|---|
| int |
ReusePort
Linux only: bind with SO_REUSEPORT for hot restart handover.
Declaration
public bool ReusePort { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
SniCertificates
SNI certificate list. Null keeps GenericCertificate.
Declaration
public IReadOnlyList<SniCertificateBinding>? SniCertificates { get; set; }
Property Value
| Type | Description |
|---|---|
| IReadOnlyList<SniCertificateBinding> |
TrustedProxyProtocolSources
CIDR prefixes allowed to send a PROXY protocol preamble. Null or empty keeps today's behavior: any peer may send the preamble. A non-empty list skips the preamble for everyone else.
Declaration
public IReadOnlyList<string>? TrustedProxyProtocolSources { get; set; }
Property Value
| Type | Description |
|---|---|
| IReadOnlyList<string> |
Methods
| Edit this page View SourceToString()
Address and port, so a bind failure does not print only the type name.
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| string |