3.4.1 Module API
Related headers [link]
Name | Description |
---|---|
net/addr.h | Network address structure definition |
net/layer.h | Network layer base structure |
net/layer/dumper.h | Network layer definition for Dumper interface |
net/layer/ethernet.h | Network layer definition for Ethernet interface |
net/layer/pipe.h | Network layer definition for Dumper interface |
net/scheduler.h | Network scheduler |
net/task.h | Network task |
Members [link]
Types [link]
- struct net_addr_s
- struct net_ethernet_delegate_vtable_s
- struct net_layer_context_s
- struct net_layer_handler_s
- typedef [...] * net_layer_list_item_t
- typedef [...] * net_layer_sched_list_item_t
- typedef void (net_task_destroy_func_t)(void *task)
- typedef [...] * net_task_queue_item_t
- struct net_task_s
- enum net_task_type_e
- typedef [...] * net_timeout_queue_item_t
Functions [link]
- error_t net_dumper_create(struct net_scheduler_s *scheduler, void *delegate, const struct net_layer_delegate_vtable_s *delegate_vtable, struct net_layer_s **layer)
- struct net_ethernet_delegate_vtable_s * net_ethernet_delegate_vtable_s_from_base(void *x)
- error_t net_layer_bind(struct net_layer_s *parent, void *addr, struct net_layer_s *child)
- void net_layer_context_changed(struct net_layer_s *layer)
- error_t net_layer_init(struct net_layer_s *layer, const struct net_layer_handler_s *handler, struct net_scheduler_s *scheduler, void *delegate, const struct net_layer_delegate_vtable_s *delegate_vtable)
- struct buffer_s * net_layer_packet_alloc(struct net_layer_s *layer, size_t begin, size_t size)
- void net_layer_unbind(struct net_layer_s *layer, struct net_layer_s *child)
- void net_layer_unbind_all(struct net_layer_s *layer)
- error_t net_pipe_create(struct net_scheduler_s *scheduler, const struct net_addr_s *addr0, void *delegate0, const struct net_layer_delegate_vtable_s *delegate_vtable0, struct net_layer_s **layer0, const struct net_addr_s *addr1, void *delegate1, const struct net_layer_delegate_vtable_s *delegate_vtable1, struct net_layer_s **layer1)
- error_t net_scheduler_cleanup(struct net_scheduler_s *sched)
- error_t net_scheduler_init(struct net_scheduler_s *sched, struct buffer_pool_s *packet_pool, const char *timer_dev)
- struct buffer_s * net_scheduler_packet_alloc(struct net_scheduler_s *sched)
- size_t net_scheduler_packet_mtu(struct net_scheduler_s *sched)
- struct net_task_s * net_scheduler_task_alloc(struct net_scheduler_s *sched)
- dev_timer_value_t net_scheduler_time_get(struct net_scheduler_s *sched)
- void net_task_destroy(struct net_task_s *task)
- void net_task_inbound_push(struct net_task_s *task, struct net_layer_s *target, struct net_layer_s *source, dev_timer_value_t timestamp, const struct net_addr_s *src_addr, const struct net_addr_s *dst_addr, struct buffer_s *buffer)
- void net_task_notification_push(struct net_task_s *task, struct net_layer_s *target, struct net_layer_s *source, uint32_t opcode)
- void net_task_outbound_push(struct net_task_s *task, struct net_layer_s *target, struct net_layer_s *source, dev_timer_value_t timestamp, const struct net_addr_s *src_addr, const struct net_addr_s *dst_addr, struct buffer_s *buffer)
- struct buffer_s * net_task_packet_buffer_steal(struct net_task_s *task, size_t begin, size_t size)
- void net_task_packet_forward(struct net_task_s *task, struct net_layer_s *target)
- void net_task_packet_respond(struct net_task_s *task, struct net_layer_s *next_hop, dev_timer_value_t timestamp, const struct net_addr_s dst[static 1])
- void net_task_query_push(struct net_task_s *task, struct net_layer_s *target, struct net_layer_s *requester, uint32_t opcode)
- void net_task_query_respond_push(struct net_task_s *task, error_t err)
- void net_task_queue_reject_all(net_task_queue_root_t *root)
- void net_task_timeout_push(struct net_task_s *task, struct net_layer_s *target, dev_timer_value_t deadline, dev_timer_value_t precision)
- void net_layer_destroy(struct net_layer_s *layer)
- void net_scheduler_from_layer_cancel(struct net_scheduler_s *sched, struct net_layer_s *layer)
- void net_scheduler_task_cancel(struct net_scheduler_s *sched, struct net_task_s *task)
- void net_scheduler_task_push(struct net_scheduler_s *sched, struct net_task_s *task)
- void net_task_push(struct net_task_s *task, struct net_layer_s *target, struct net_layer_s *source, enum net_task_type_e type)