Search Results for

    Show / Hide Table of Contents

    Class TransparentProxyEndPoint

    A proxy end point client is not aware of. Useful when requests are redirected to this proxy end point through port forwarding via router.

    When EnableHttp3 is true (and EnableHttp3 is enabled with DecryptSsl), the endpoint also listens for HTTP/3 on the same IP:port over UDP and injects Alt-Svc: h3=":PORT" into H1/H2 responses — reverse HTTPS with Alt-Svc advertisement.

    Inheritance
    object
    ProxyEndPoint
    TransparentBaseProxyEndPoint
    TransparentProxyEndPoint
    Inherited Members
    TransparentBaseProxyEndPoint.ForwardHost
    TransparentBaseProxyEndPoint.ForwardPort
    TransparentBaseProxyEndPoint.ForwardCleartext
    ProxyEndPoint.IpAddress
    ProxyEndPoint.Port
    ProxyEndPoint.DecryptSsl
    ProxyEndPoint.GenericCertificate
    ProxyEndPoint.MaxCachedConnections
    ProxyEndPoint.MaxConcurrentClients
    ProxyEndPoint.EnableHttpInterception
    ProxyEndPoint.AdmittedClientCount
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Titanium.Web.Proxy.Models
    Assembly: Titanium.Web.Proxy.dll
    Syntax
    public class TransparentProxyEndPoint : TransparentBaseProxyEndPoint

    Constructors

    | Edit this page View Source

    TransparentProxyEndPoint(IPAddress, int, bool)

    Initialize a new instance.

    Declaration
    public TransparentProxyEndPoint(IPAddress ipAddress, int port, bool decryptSsl = true)
    Parameters
    Type Name Description
    IPAddress ipAddress

    Listening Ip address.

    int port

    Listening port.

    bool decryptSsl

    Should we decrypt ssl?

    Properties

    | Edit this page View Source

    EnableHttp3

    When true, also accept inbound HTTP/3 (QUIC) on the same IP:port as the TCP listener and advertise it via Alt-Svc on H1/H2 responses. Requires EnableHttp3 and DecryptSsl. Default: false.

    Experimental: Suppress TWP001 to opt in.

    Declaration
    [Experimental("TWP001")]
    public bool EnableHttp3 { get; set; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    GenericCertificateName

    Name of the Certificate need to be sent (same as the hostname we want to proxy). This is valid only when UseServerNameIndication is set to false.

    Declaration
    public override string GenericCertificateName { get; set; }
    Property Value
    Type Description
    string
    Overrides
    TransparentBaseProxyEndPoint.GenericCertificateName
    | Edit this page View Source

    HandshakeTimeout

    Maximum time allowed for the QUIC handshake when EnableHttp3 is on. Default: 30 seconds.

    Declaration
    [Experimental("TWP001")]
    public TimeSpan HandshakeTimeout { get; set; }
    Property Value
    Type Description
    TimeSpan
    | Edit this page View Source

    IdleTimeout

    QUIC connection idle timeout when EnableHttp3 is on. Default: 60 seconds.

    Declaration
    [Experimental("TWP001")]
    public TimeSpan IdleTimeout { get; set; }
    Property Value
    Type Description
    TimeSpan
    | Edit this page View Source

    MaxInboundBidirectionalStreams

    Maximum concurrent inbound client-initiated bidirectional streams per QUIC connection when EnableHttp3 is on. Default: 100.

    Declaration
    [Experimental("TWP001")]
    public int MaxInboundBidirectionalStreams { get; set; }
    Property Value
    Type Description
    int
    | Edit this page View Source

    MaxInboundUnidirectionalStreams

    Maximum concurrent inbound client-initiated unidirectional streams per QUIC connection when EnableHttp3 is on. Values below 3 are clamped to 3. Default: 3.

    Declaration
    [Experimental("TWP001")]
    public int MaxInboundUnidirectionalStreams { get; set; }
    Property Value
    Type Description
    int

    Events

    | Edit this page View Source

    BeforeHttpAuthenticate

    Before handling a cleartext (non-TLS) client session — including prior-knowledge HTTP/2 (h2c) — this event is fired so upstream protocol policy can be set without a ClientHello.

    Declaration
    public event AsyncEventHandler<BeforeHttpAuthenticateEventArgs>? BeforeHttpAuthenticate
    Event Type
    Type Description
    AsyncEventHandler<BeforeHttpAuthenticateEventArgs>
    | Edit this page View Source

    BeforeQuicAuthenticate

    Fired before the QUIC TLS handshake completes for each inbound HTTP/3 connection when EnableHttp3 is on.

    Declaration
    [Experimental("TWP001")]
    public event AsyncEventHandler<BeforeQuicAuthenticateEventArgs>? BeforeQuicAuthenticate
    Event Type
    Type Description
    AsyncEventHandler<BeforeQuicAuthenticateEventArgs>
    | Edit this page View Source

    BeforeSslAuthenticate

    Before Ssl authentication this event is fired.

    Declaration
    public event AsyncEventHandler<BeforeSslAuthenticateEventArgs>? BeforeSslAuthenticate
    Event Type
    Type Description
    AsyncEventHandler<BeforeSslAuthenticateEventArgs>
    • Edit this page
    • View Source
    In this article
    Back to top Generated by DocFX