libosmocore 1.9.3
Osmocom core library
osmo_io_fd Struct Reference

#include <osmo_io_internal.h>

Data Fields

struct llist_head list
 linked list for internal management More...
 
int fd
 actual operating-system level file decriptor More...
 
enum osmo_io_fd_mode mode
 type of read/write mode to use More...
 
uint32_t flags
 flags to guard closing/freeing of iofd More...
 
char * name
 human-readable name to associte with fd More...
 
struct osmo_io_ops io_ops
 send/recv (msg) callback functions More...
 
struct msgbpending
 Pending msgb to keep partial data during segmentation. More...
 
void * data
 data pointer passed through to call-back function More...
 
unsigned int priv_nr
 private number, extending data More...
 
struct {
   const void *   ctx
 talloc context from which to allocate msgb when reading More...
 
   unsigned int   size
 size of msgb to allocate (excluding headroom) More...
 
   unsigned int   headroom
 headroom to allocate when allocating msgb's More...
 
msgb_alloc
 
struct {
   unsigned int   max_length
 maximum length of write queue More...
 
   unsigned int   current_length
 current length of write queue More...
 
   struct llist_head   msg_queue
 actual linked list implementing the transmit queue More...
 
tx_queue
 
union {
   struct {
      struct osmo_fd   ofd
 
   }   poll
 
   struct {
      bool   read_enabled
 
      bool   write_enabled
 
      void *   read_msghdr
 
      void *   write_msghdr
 
   }   uring
 
u
 

Field Documentation

◆ ctx

const void* osmo_io_fd::ctx

talloc context from which to allocate msgb when reading

◆ current_length

unsigned int osmo_io_fd::current_length

current length of write queue

◆ data

void* osmo_io_fd::data

data pointer passed through to call-back function

◆ fd

int osmo_io_fd::fd

actual operating-system level file decriptor

◆ flags

uint32_t osmo_io_fd::flags

flags to guard closing/freeing of iofd

◆ headroom

unsigned int osmo_io_fd::headroom

headroom to allocate when allocating msgb's

◆ io_ops

struct osmo_io_ops osmo_io_fd::io_ops

send/recv (msg) callback functions

◆ list

struct llist_head osmo_io_fd::list

linked list for internal management

◆ max_length

unsigned int osmo_io_fd::max_length

maximum length of write queue

◆ mode

enum osmo_io_fd_mode osmo_io_fd::mode

type of read/write mode to use

◆ msg_queue

struct llist_head osmo_io_fd::msg_queue

actual linked list implementing the transmit queue

◆ 

struct { ... } osmo_io_fd::msgb_alloc

◆ name

char* osmo_io_fd::name

human-readable name to associte with fd

◆ ofd

struct osmo_fd osmo_io_fd::ofd

◆ pending

struct msgb* osmo_io_fd::pending

Pending msgb to keep partial data during segmentation.

◆ 

struct { ... } osmo_io_fd::poll

◆ priv_nr

unsigned int osmo_io_fd::priv_nr

private number, extending data

◆ read_enabled

bool osmo_io_fd::read_enabled

◆ read_msghdr

void* osmo_io_fd::read_msghdr

◆ size

unsigned int osmo_io_fd::size

size of msgb to allocate (excluding headroom)

◆ 

struct { ... } osmo_io_fd::tx_queue

◆ 

union { ... } osmo_io_fd::u

◆ 

struct { ... } osmo_io_fd::uring

◆ write_enabled

bool osmo_io_fd::write_enabled

◆ write_msghdr

void* osmo_io_fd::write_msghdr

The documentation for this struct was generated from the following file: