File size: 682 Bytes
ea39c0e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
use serde::Deserialize;
use serde::Serialize;

use super::Capability;
use super::SupportedProtocolVersions;

/// Explains why connection negotiation was rejected before any session opened.
#[derive(Clone, Debug, Deserialize, Eq, PartialEq, Serialize)]
#[serde(deny_unknown_fields, tag = "type", rename_all_fields = "camelCase")]
pub enum HandshakeRejectReason {
    #[serde(rename = "noCompatibleVersion")]
    NoCompatibleVersion {
        supported_versions: SupportedProtocolVersions,
    },
    #[serde(rename = "missingRequiredCapability")]
    MissingRequiredCapability { capability: Capability },
    #[serde(rename = "invalidHello")]
    InvalidHello { message: String },
}