Search Results for

    Show / Hide Table of Contents

    Class ProxyPolicyModes

    Immutable snapshot of the PolicyMode selected for each PolicyFamily, plus the one deliberately-separate AllowAmbiguousFraming escape hatch. Read live by enforcement call sites through PolicyModes, which the plan's rollout section requires to be a runtime switch: replacing the whole snapshot (see PolicyModes's setter) rather than mutating a field lets an operator drop every family to Observe without redeploying, while every in-flight request that already read the previous snapshot keeps behaving consistently with whichever snapshot it observed.

    AllowAmbiguousFraming is not a PolicyFamily member and has no corresponding PolicyMode: framing, chunk parsing and Content-Length/Transfer-Encoding resolution have no safe "detect but let it through" middle ground, so this is a single named, binary, off-by-default flag that relays malformed framing instead of rejecting it - useful only for security research that needs to observe how a client or origin reacts to smuggling-shaped input through the proxy. No profile sets it: Create(PolicyMode, PolicyMode, PolicyMode, PolicyMode, PolicyMode, PolicyMode, PolicyMode) never accepts it as a parameter, and the only way to turn it on is the explicit WithAllowAmbiguousFramingEnabled() call, so enabling it can never be a side effect of selecting a profile.

    Inheritance
    object
    ProxyPolicyModes
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Titanium.Web.Proxy.Options
    Assembly: Titanium.Web.Proxy.dll
    Syntax
    public sealed class ProxyPolicyModes

    Properties

    | Edit this page View Source

    AllEnforce

    Every family enforced - today's shipped behavior, and the starting point every profile builds from.

    Declaration
    public static ProxyPolicyModes AllEnforce { get; }
    Property Value
    Type Description
    ProxyPolicyModes
    | Edit this page View Source

    AllowAmbiguousFraming

    Off by default and absent from every profile - see the type-level remarks. Never true unless WithAllowAmbiguousFramingEnabled() was called explicitly.

    Declaration
    public bool AllowAmbiguousFraming { get; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    this[PolicyFamily]

    Returns the mode selected for family.

    Declaration
    public PolicyMode this[PolicyFamily family] { get; }
    Parameters
    Type Name Description
    PolicyFamily family
    Property Value
    Type Description
    PolicyMode

    Methods

    | Edit this page View Source

    Create(PolicyMode, PolicyMode, PolicyMode, PolicyMode, PolicyMode, PolicyMode, PolicyMode)

    Builds a snapshot with an explicit mode for the first seven families. WebSocketFrameBudget starts at Enforce (use With(PolicyFamily, PolicyMode) to change it) so this shipped signature stays binary-compatible. AllowAmbiguousFraming starts false.

    Declaration
    public static ProxyPolicyModes Create(PolicyMode bodyBudget, PolicyMode decompressionRatio, PolicyMode headerLimits, PolicyMode admissionControl, PolicyMode http2AbuseBudget, PolicyMode http2RelayValidation = PolicyMode.Disabled, PolicyMode http1ReplaySafety = PolicyMode.Observe)
    Parameters
    Type Name Description
    PolicyMode bodyBudget
    PolicyMode decompressionRatio
    PolicyMode headerLimits
    PolicyMode admissionControl
    PolicyMode http2AbuseBudget
    PolicyMode http2RelayValidation
    PolicyMode http1ReplaySafety
    Returns
    Type Description
    ProxyPolicyModes
    | Edit this page View Source

    With(PolicyFamily, PolicyMode)

    Returns a snapshot identical to this one but with mode for family.

    Declaration
    public ProxyPolicyModes With(PolicyFamily family, PolicyMode mode)
    Parameters
    Type Name Description
    PolicyFamily family
    PolicyMode mode
    Returns
    Type Description
    ProxyPolicyModes
    | Edit this page View Source

    WithAllObservedExceptDisabled()

    Returns a snapshot identical to this one but with every family dropped to Observe, except families already Disabled (which stay disabled - Observe would silently turn a family back on). This is the "drop to Observe without redeploying" runtime switch the plan's rollout section requires.

    Declaration
    public ProxyPolicyModes WithAllObservedExceptDisabled()
    Returns
    Type Description
    ProxyPolicyModes
    | Edit this page View Source

    WithAllowAmbiguousFraming(bool)

    Returns a snapshot identical to this one with AllowAmbiguousFraming set explicitly. A partial config overlay uses this so an omitted flag does not clear a value set by the profile.

    Declaration
    public ProxyPolicyModes WithAllowAmbiguousFraming(bool enabled)
    Parameters
    Type Name Description
    bool enabled
    Returns
    Type Description
    ProxyPolicyModes
    | Edit this page View Source

    WithAllowAmbiguousFramingEnabled()

    The single, explicit, isolated act of relaying ambiguous HTTP/1 framing instead of rejecting it. See the type-level remarks; never call this as a side effect of applying a profile.

    Declaration
    public ProxyPolicyModes WithAllowAmbiguousFramingEnabled()
    Returns
    Type Description
    ProxyPolicyModes
    • Edit this page
    • View Source
    In this article
    Back to top Generated by DocFX