netdev_test.h

netdev dummy test driver definitions

int(* netdev_test_send_cb_t()

Callback type to handle send command.

Parameters

dev:network device descriptor
iolist:io vector list to send

Return values

  • number of bytes sent
  • <= 0 on error
int(* netdev_test_recv_cb_t()

Callback type to handle receive command.

Parameters

dev:network device descriptor
buf:buffer to write into or NULL
len:maximum number of bytes to read
info:status information for the received packet. Might be of different type for different netdev devices. May be NULL if not needed or applicable

Return values

  • <=0 on error
  • number of bytes read if buf != NULL
  • currently received packet size if buf == NULL
int(* netdev_test_init_cb_t()

Callback type to handle device initialization.

Parameters

dev:network device descriptor

Return values

  • <= on error
  • 0 on success
void(* netdev_test_isr_cb_t()

Callback type to handle user-space ISR events.

Parameters

dev:network device descriptor

int(* netdev_test_get_cb_t()

Callback type to handle get commands.

Parameters

dev:network device descriptor
value:pointer to store the option’s value in
max_len:maximal amount of bytes that fit into value

Return values

  • number of bytes written to value
  • <0 on error
int(* netdev_test_set_cb_t()

Callback type to handle set commands.

Parameters

dev:network device descriptor
value:value to set
value_len:the length of value

Return values

  • number of bytes used from value
  • <0 on error
void netdev_test_set_send_cb(netdev_test_t * dev, netdev_test.h::netdev_test_send_cb_t send_cb)

override send callback

Parameters

dev:a netdev dummy test driver device
send_cb:a send callback

void netdev_test_set_recv_cb(netdev_test_t * dev, netdev_test.h::netdev_test_recv_cb_t recv_cb)

override receive callback

Parameters

dev:a netdev dummy test driver device
recv_cb:a receive callback

void netdev_test_set_init_cb(netdev_test_t * dev, netdev_test.h::netdev_test_init_cb_t init_cb)

override initialization callback

Parameters

dev:a netdev dummy test driver device
init_cb:an initialization callback

void netdev_test_set_isr_cb(netdev_test_t * dev, netdev_test.h::netdev_test_isr_cb_t isr_cb)

override ISR event handler callback

Parameters

dev:a netdev dummy test driver device
isr_cb:an ISR event handler callback

void netdev_test_set_get_cb(netdev_test_t * dev, netopt.h::netopt_t opt, netdev_test.h::netdev_test_get_cb_t get_cb)

override get callback for a certain option type

Parameters

dev:a netdev dummy test driver device
opt:an option type
get_cb:a get callback for opt

void netdev_test_set_set_cb(netdev_test_t * dev, netopt.h::netopt_t opt, netdev_test.h::netdev_test_set_cb_t set_cb)

override get callback for a certain option type

Parameters

dev:a netdev dummy test driver device
opt:an option type
set_cb:a set callback for opt

void netdev_test_setup(netdev_test_t * dev, void * state)

Setup a given netdev dummy test driver device.

Parameters

dev:a netdev dummy test driver device to initialize
state:external state for the device

void netdev_test_reset(netdev_test_t * dev)

Resets all callbacks for the device to NULL.

Parameters

dev:a netdev dummy test driver device to initialize

struct netdev_test_t

Device descriptor for netdev dummy test driver devices.

netdev.h::netdev_t netdev

netdev fields

superclass

netdev_test.h::netdev_test_send_cb_t send_cb

device specific fields

callback to handle send command

netdev_test.h::netdev_test_recv_cb_t recv_cb

callback to handle receive command

netdev_test.h::netdev_test_init_cb_t init_cb

callback to handle initialization events

netdev_test.h::netdev_test_isr_cb_t isr_cb

callback to handle ISR events

netdev_test.h::netdev_test_get_cb_t get_cbs()

callback to handle get command

netdev_test.h::netdev_test_set_cb_t set_cbs()

callback to handle set command

void * state

external state for the device

mutex_t mutex

mutex for the device