pub enum MctxError {
Show 33 variants
InvalidDestinationPort,
InvalidMulticastGroup,
InvalidSourcePort,
InvalidSourceAddress,
InvalidInterfaceAddress,
InvalidIpv6InterfaceIndex,
InvalidRawBindAddress,
SourceAddressFamilyMismatch,
OutgoingInterfaceFamilyMismatch,
RawBindAddressFamilyMismatch,
Ipv6SourceInterfaceMismatch {
source_addr: IpAddr,
source_interface_index: u32,
outgoing_interface_index: u32,
},
Ipv6ScopedMulticastRequiresInterface,
InterfaceDiscoveryFailed(String),
DuplicatePublication,
PublicationNotFound,
SocketCreateFailed(Error),
SocketOptionFailed(Error),
SocketBindFailed(Error),
SocketConnectFailed(Error),
SocketLocalAddrFailed(Error),
ExistingSocketAddressFamilyMismatch,
ExistingSocketPortMismatch {
expected: u16,
actual: u16,
},
ExistingSocketAddressMismatch {
expected: IpAddr,
actual: IpAddr,
},
SendFailed(Error),
RawPacketTransmitUnsupported(String),
RawSocketCreateFailed(Error),
RawSocketBindFailed(Error),
RawSendFailed(Error),
InvalidRawIpDatagram,
InvalidRawMulticastDestination,
RawDatagramSourceMismatch {
datagram_source: IpAddr,
configured_bind_addr: IpAddr,
},
RawInterfaceRequired,
RawUnsupportedLinkType(String),
}Expand description
Errors returned by the multicast sender core.
Variants§
InvalidDestinationPort
The configured destination port is invalid.
InvalidMulticastGroup
The configured group address is not a valid multicast IP address.
InvalidSourcePort
The configured source port is invalid.
InvalidSourceAddress
The configured source IP address is invalid.
InvalidInterfaceAddress
The configured multicast interface selector is invalid.
InvalidIpv6InterfaceIndex
The configured IPv6 interface index is invalid.
InvalidRawBindAddress
The configured raw bind address is invalid.
SourceAddressFamilyMismatch
The configured source address does not match the group address family.
OutgoingInterfaceFamilyMismatch
The configured outgoing interface does not match the group address family.
RawBindAddressFamilyMismatch
The configured raw bind address does not match the expected datagram family.
Ipv6SourceInterfaceMismatch
The configured IPv6 source address and outgoing interface disagree about which interface should be used.
Ipv6ScopedMulticastRequiresInterface
A scoped IPv6 multicast destination needs a concrete interface index.
InterfaceDiscoveryFailed(String)
Resolving a local IPv6 address to its interface index failed.
DuplicatePublication
A publication with the same configuration already exists.
PublicationNotFound
No publication with the requested ID exists.
SocketCreateFailed(Error)
Creating the UDP socket failed.
SocketOptionFailed(Error)
Setting a socket option failed.
SocketBindFailed(Error)
Binding the UDP socket failed.
SocketConnectFailed(Error)
Connecting the UDP socket failed.
SocketLocalAddrFailed(Error)
Reading the local address from a socket failed.
ExistingSocketAddressFamilyMismatch
The provided existing socket does not match the configured IP family.
ExistingSocketPortMismatch
The provided existing socket is bound to a different UDP port than requested.
ExistingSocketAddressMismatch
The provided existing socket is bound to a different local IP address than requested.
SendFailed(Error)
Sending a packet failed.
RawPacketTransmitUnsupported(String)
Raw multicast packet transmit is not supported on the current platform or configuration.
RawSocketCreateFailed(Error)
Creating the raw transmit socket failed.
RawSocketBindFailed(Error)
Binding the raw transmit socket failed.
RawSendFailed(Error)
Sending a raw IP datagram failed.
InvalidRawIpDatagram
The supplied raw datagram bytes are not a valid complete IPv4 or IPv6 datagram.
InvalidRawMulticastDestination
The supplied raw datagram does not target a multicast destination.
RawDatagramSourceMismatch
The supplied raw datagram source conflicts with the configured bind address.
RawInterfaceRequired
Raw packet transmit needs an explicit outgoing interface selection.
RawUnsupportedLinkType(String)
Raw packet transmit is not implemented for the selected link type.
Trait Implementations§
Source§impl Error for MctxError
impl Error for MctxError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()