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: *SimpleNetwork
header_size: usize
buffer: []const u8
src_addr: ?*const MacAddress
dest_addr: ?*const MacAddress
protocol: ?*const u16
Possible Errors
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),
}
}