Enum DisconnectReasonCode

Source
#[repr(u8)]
pub enum DisconnectReasonCode {
Show 29 variants NormalDisconnect = 0, DisconnectWithWillMessage = 4, UnspecifiedError = 128, MalformedPacket = 129, ProtocolError = 130, ImplementationSpecificError = 131, NotAuthorized = 135, ServerBusy = 137, ServerShuttingDown = 139, KeepAliveTimeout = 141, SessionTakenOver = 142, TopicFilterInvalid = 143, TopicNameInvalid = 144, ReceiveMaximumExceeded = 147, TopicAliasInvalid = 148, PacketTooLarge = 149, MessageRateTooHigh = 150, QuotaExceeded = 151, AdministrativeAction = 152, PayloadFormatInvalid = 153, RetainNotSupported = 154, QoSNotSupported = 155, UserAnotherServer = 156, ServerMoved = 157, SharedSubscriptionNotSupported = 158, ConnectionRateExceeded = 159, MaximumConnectTime = 160, SubscriptionIdentifiersNotSupported = 161, WildcardSubscriptionsNotSupported = 162,
}
Expand description

Reason code for DISCONNECT packet.

DecHexReason Code nameSent byDescription
00x00Normal disconnectionClient/ServerClose the connection normally. Do not send the Will Message.
40x04Disconnect with Will MessageClientThe Client wishes to disconnect but requires that the Server also publishes its Will Message.
1280x80Unspecified errorClient/ServerThe Connection is closed but the sender either does not wish to reveal the reason,
or none of the other Reason Codes apply.
1290x81Malformed PacketClient/ServerThe received packet does not conform to this specification.
1300x82Protocol ErrorClient/ServerAn unexpected or out of order packet was received.
1310x83Implementation specific errorClient/ServerThe packet received is valid but cannot be processed by this implementation.
1350x87Not authorizedServerThe request is not authorized.
1370x89Server busyServerThe Server is busy and cannot continue processing requests from this Client.
1390x8BServer shutting downServerThe Server is shutting down.
1410x8DKeep Alive timeoutServerThe Connection is closed because no packet has been received for 1.5 times the Keepalive time.
1420x8ESession taken overServerAnother Connection using the same ClientID has connected causing this Connection to be closed.
1430x8FTopic Filter invalidServerThe Topic Filter is correctly formed, but is not accepted by this Sever.
1440x90Topic Name invalidClient/ServerThe Topic Name is correctly formed, but is not accepted by this Client/Server.
1470x93Receive Maximum exceededClient/ServerThe Client/Server has received more than Receive Maximum publication for
which it has not sent PUBACK or PUBCOMP.
1480x94Topic Alias invalidClient/ServerThe Client/Server has received a PUBLISH packet containing a Topic Alias
which is greater than the Maximum Topic Alias it sent in the CONNECT or CONNACK packet.
1490x95Packet too largeClient/ServerThe packet size is greater than Maximum Packet Size for this Client/Server.
1500x96Message rate too highClient/ServerThe received data rate is too high.
1510x97Quota exceededClient/ServerAn implementation or administrative imposed limit has been exceeded.
1520x98Administrative actionClient/ServerThe Connection is closed due to an administrative action.
1530x99Payload format invalidClient/ServerThe payload format does not match the one specified by the Payload Format Indicator.
1540x9ARetain not supportedServerThe Server has does not support retained messages.
1550x9BQoS not supportedServerThe Client specified a QoS greater than the QoS specified in a Maximum QoS in the CONNACK.
1560x9CUse another serverServerThe Client should temporarily change its Server.
1570x9DServer movedServerThe Server is moved and the Client should permanently change its server location.
1580x9EShared Subscriptions not supportedServerThe Server does not support Shared Subscriptions.
1590x9FConnection rate exceededServerThis connection is closed because the connection rate is too high.
1600xA0Maximum connect timeServerThe maximum connection time authorized for this connection has been exceeded.
1610xA1Subscription Identifiers not supportedServerThe Server does not support Subscription Identifiers; the subscription is not accepted.
1620xA2Wildcard Subscriptions not supportedServerThe Server does not support Wildcard Subscriptions; the subscription is not accepted.

Variants§

§

NormalDisconnect = 0

§

DisconnectWithWillMessage = 4

§

UnspecifiedError = 128

§

MalformedPacket = 129

§

ProtocolError = 130

§

ImplementationSpecificError = 131

§

NotAuthorized = 135

§

ServerBusy = 137

§

ServerShuttingDown = 139

§

KeepAliveTimeout = 141

§

SessionTakenOver = 142

§

TopicFilterInvalid = 143

§

TopicNameInvalid = 144

§

ReceiveMaximumExceeded = 147

§

TopicAliasInvalid = 148

§

PacketTooLarge = 149

§

MessageRateTooHigh = 150

§

QuotaExceeded = 151

§

AdministrativeAction = 152

§

PayloadFormatInvalid = 153

§

RetainNotSupported = 154

§

QoSNotSupported = 155

§

UserAnotherServer = 156

§

ServerMoved = 157

§

SharedSubscriptionNotSupported = 158

§

ConnectionRateExceeded = 159

§

MaximumConnectTime = 160

§

SubscriptionIdentifiersNotSupported = 161

§

WildcardSubscriptionsNotSupported = 162

Implementations§

Trait Implementations§

Source§

impl Clone for DisconnectReasonCode

Source§

fn clone(&self) -> DisconnectReasonCode

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for DisconnectReasonCode

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Hash for DisconnectReasonCode

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for DisconnectReasonCode

Source§

fn eq(&self, other: &DisconnectReasonCode) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for DisconnectReasonCode

Source§

impl Eq for DisconnectReasonCode

Source§

impl StructuralPartialEq for DisconnectReasonCode

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.