Function transmit [src]

Places a packet in the transmit queue of a network interface.

Prototype

pub fn transmit( self: *SimpleNetwork, header_size: usize, buffer: []const u8, src_addr: ?*const MacAddress, dest_addr: ?*const MacAddress, protocol: ?*const u16, ) TransmitError!void

Parameters

self: *SimpleNetworkheader_size: usizebuffer: []const u8src_addr: ?*const MacAddressdest_addr: ?*const MacAddressprotocol: ?*const u16

Possible Errors

BufferTooSmall
DeviceError
InvalidParameter
NotReady
NotStarted
Unexpected UnexpectedError
Unsupported

Source

pub fn transmit( self: *SimpleNetwork, header_size: usize, buffer: []const u8, src_addr: ?*const MacAddress, dest_addr: ?*const MacAddress, protocol: ?*const u16, ) TransmitError!void { switch (self._transmit( self, header_size, buffer.len, buffer.ptr, src_addr, dest_addr, protocol, )) { .success => {}, .not_started => return Error.NotStarted, .not_ready => return Error.NotReady, .buffer_too_small => return Error.BufferTooSmall, .invalid_parameter => return Error.InvalidParameter, .device_error => return Error.DeviceError, .unsupported => return Error.Unsupported, else => |status| return uefi.unexpectedStatus(status), } }