ace-doip 0.1.0

DoIP typed message and session layer implementing ISO 13400-2.
Documentation

ace-doip

DoIP typed message and session layer implementing ISO 13400-2.

Message layer — all payload types as structs deriving FrameCodec: RoutingActivationRequest, RoutingActivationResponse, DiagnosticMessage, DiagnosticMessageAck, DiagnosticMessageNack, VehicleAnnouncementMessage, EntityStatusResponse, AliveCheckRequest, AliveCheckResponse, and more.

Session layerActivationStateMachine and ConnectionState model the per-TCP-connection routing activation lifecycle:

Idle → ActivationPending → Active → Deactivated

ActivationAuthProvider is a hook trait for OEM-specific authentication on CentralSecurity (0xFF) activation:

pub trait ActivationAuthProvider {
    fn authenticate(
        &mut self,
        source_address: u16,
        oem_data: &[u8],
    ) -> Result<(), ActivationDenialReason>;
}

DoipFrameExt provides semantic accessors on DoipFrame:

frame.validate_header()?;          // checks version, inverse, type, length
frame.payload_type();              // Option<Result<PayloadType, _>>
frame.payload_bytes();             // Option<&[u8]> — bytes after 8-byte header
frame.payload_length_declared();   // length from header bytes 4-7