///|
extern "c" fn raw_socket_adapter_implemented_ffi() -> Int = "lockwire_native_raw_socket_adapter_implemented"
///|
extern "c" fn raw_socket_list_interfaces_text_ffi() -> Bytes = "lockwire_native_raw_socket_list_interfaces_text"
///|
#borrow(name)
extern "c" fn raw_socket_open_ffi(
name : Bytes,
ethertype : Int,
promiscuous : Int,
timeout_ms : Int,
) -> Int = "lockwire_native_raw_socket_open"
///|
#borrow(frame)
extern "c" fn raw_socket_send_packet_ffi(fd : Int, frame : Bytes) -> Int = "lockwire_native_raw_socket_send_packet"
///|
extern "c" fn raw_socket_capture_one_ffi(fd : Int, timeout_ms : Int) -> Bytes = "lockwire_native_raw_socket_capture_one"
///|
extern "c" fn raw_socket_close_ffi(fd : Int) -> Int = "lockwire_native_raw_socket_close"
///|
fn ffi_raw_socket_adapter_implemented() -> Int {
raw_socket_adapter_implemented_ffi()
}
///|
fn ffi_raw_socket_list_interfaces_text() -> Bytes {
raw_socket_list_interfaces_text_ffi()
}
///|
fn ffi_raw_socket_open(
name : Bytes,
ethertype : Int,
promiscuous : Int,
timeout_ms : Int,
) -> Int {
raw_socket_open_ffi(name, ethertype, promiscuous, timeout_ms)
}
///|
fn ffi_raw_socket_send_packet(fd : Int, frame : Bytes) -> Int {
raw_socket_send_packet_ffi(fd, frame)
}
///|
fn ffi_raw_socket_capture_one(fd : Int, timeout_ms : Int) -> Bytes {
raw_socket_capture_one_ffi(fd, timeout_ms)
}
///|
fn ffi_raw_socket_close(fd : Int) -> Int {
raw_socket_close_ffi(fd)
}
///|
#borrow(name)
extern "c" fn raw_socket_local_mac_ffi(name : Bytes) -> Bytes = "lockwire_native_raw_socket_local_mac"
///|
extern "c" fn raw_socket_last_capture_micros_ffi() -> Int64 = "lockwire_native_raw_socket_last_capture_micros"
///|
extern "c" fn raw_socket_set_nonblock_ffi(fd : Int, enable : Int) -> Int = "lockwire_native_raw_socket_set_nonblock"
///|
fn ffi_raw_socket_local_mac(name : Bytes) -> Bytes {
raw_socket_local_mac_ffi(name)
}
///|
fn ffi_raw_socket_last_capture_micros() -> Int64 {
raw_socket_last_capture_micros_ffi()
}
///|
fn ffi_raw_socket_set_nonblock(fd : Int, enable : Int) -> Int {
raw_socket_set_nonblock_ffi(fd, enable)
}