[][src]Enum http_desync_guardian::ClassificationReason

#[repr(C)]pub enum ClassificationReason {
    Compliant,
    EmptyHeader,
    SuspiciousHeader,
    NonCompliantHeader,
    BadHeader,
    AmbiguousUri,
    SpaceInUri,
    BadUri,
    NonCompliantVersion,
    BadVersion,
    GetHeadZeroContentLength,
    UndefinedContentLengthSemantics,
    MultipleContentLength,
    DuplicateContentLength,
    BadContentLength,
    UndefinedTransferEncodingSemantics,
    MultipleTransferEncodingChunked,
    BadTransferEncoding,
    BothTeClPresent,
    BadMethod,
    NonCrLfLineTermination,
    MultilineHeader,
    PartialHeaderLine,
    MissingLastEmptyLine,
    MissingHeaderColon,
    MissingUri,
}

The reason why a request received a particular Request Safety Tier.

Variants

Compliant

Initial value

EmptyHeader

Header specific reason

SuspiciousHeader
NonCompliantHeader
BadHeader
AmbiguousUri

URI specific reasons

SpaceInUri
BadUri
NonCompliantVersion
BadVersion
GetHeadZeroContentLength

Content Length specific reasons

UndefinedContentLengthSemantics
MultipleContentLength
DuplicateContentLength
BadContentLength
UndefinedTransferEncodingSemantics

Transfer Encoding specific reasons

MultipleTransferEncodingChunked
BadTransferEncoding
BothTeClPresent

Both Transfer Encoding and Content Length present

BadMethod

Http Method related

NonCrLfLineTermination

Request parsing issues

MultilineHeader
PartialHeaderLine
MissingLastEmptyLine
MissingHeaderColon
MissingUri

Trait Implementations

impl Clone for ClassificationReason[src]

impl Copy for ClassificationReason[src]

impl Debug for ClassificationReason[src]

impl Eq for ClassificationReason[src]

impl Hash for ClassificationReason[src]

impl IntoEnumIterator for ClassificationReason[src]

impl PartialEq<ClassificationReason> for ClassificationReason[src]

impl StructuralEq for ClassificationReason[src]

impl StructuralPartialEq for ClassificationReason[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.