OpenVPN
Data Structures | Macros | Functions
multi_io.h File Reference
#include "event.h"
Include dependency graph for multi_io.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  multi_io
 

Macros

#define TA_UNDEF   0
 
#define TA_SOCKET_READ   1
 
#define TA_SOCKET_READ_RESIDUAL   2
 
#define TA_SOCKET_WRITE   3
 
#define TA_SOCKET_WRITE_READY   4
 
#define TA_SOCKET_WRITE_DEFERRED   5
 
#define TA_TUN_READ   6
 
#define TA_TUN_WRITE   7
 
#define TA_INITIAL   8
 
#define TA_TIMEOUT   9
 
#define TA_TUN_WRITE_TIMEOUT   10
 

Functions

struct multi_iomulti_io_init (int maxevents, int *maxclients)
 
void multi_io_free (struct multi_io *multi_io)
 
int multi_io_wait (struct multi_context *m)
 
void multi_io_process_io (struct multi_context *m)
 
void multi_io_set_global_rw_flags (struct multi_context *m, struct multi_instance *mi)
 
void multi_io_action (struct multi_context *m, struct multi_instance *mi, int action, bool poll)
 
void multi_io_delete_event (struct multi_io *multi_io, event_t event)
 

Macro Definition Documentation

◆ TA_INITIAL

#define TA_INITIAL   8

Definition at line 45 of file multi_io.h.

◆ TA_SOCKET_READ

#define TA_SOCKET_READ   1

Definition at line 38 of file multi_io.h.

◆ TA_SOCKET_READ_RESIDUAL

#define TA_SOCKET_READ_RESIDUAL   2

Definition at line 39 of file multi_io.h.

◆ TA_SOCKET_WRITE

#define TA_SOCKET_WRITE   3

Definition at line 40 of file multi_io.h.

◆ TA_SOCKET_WRITE_DEFERRED

#define TA_SOCKET_WRITE_DEFERRED   5

Definition at line 42 of file multi_io.h.

◆ TA_SOCKET_WRITE_READY

#define TA_SOCKET_WRITE_READY   4

Definition at line 41 of file multi_io.h.

◆ TA_TIMEOUT

#define TA_TIMEOUT   9

Definition at line 46 of file multi_io.h.

◆ TA_TUN_READ

#define TA_TUN_READ   6

Definition at line 43 of file multi_io.h.

◆ TA_TUN_WRITE

#define TA_TUN_WRITE   7

Definition at line 44 of file multi_io.h.

◆ TA_TUN_WRITE_TIMEOUT

#define TA_TUN_WRITE_TIMEOUT   10

Definition at line 47 of file multi_io.h.

◆ TA_UNDEF

#define TA_UNDEF   0

Definition at line 37 of file multi_io.h.

Function Documentation

◆ multi_io_action()

void multi_io_action ( struct multi_context m,
struct multi_instance mi,
int  action,
bool  poll 
)

◆ multi_io_delete_event()

void multi_io_delete_event ( struct multi_io multi_io,
event_t  event 
)

Definition at line 665 of file multi_io.c.

References multi_io::es, and event_del().

◆ multi_io_free()

void multi_io_free ( struct multi_io multi_io)

Definition at line 163 of file multi_io.c.

References multi_io::es, multi_io::esr, and event_free().

Referenced by multi_uninit().

◆ multi_io_init()

struct multi_io * multi_io_init ( int  maxevents,
int *  maxclients 
)

◆ multi_io_process_io()

void multi_io_process_io ( struct multi_context m)

◆ multi_io_set_global_rw_flags()

void multi_io_set_global_rw_flags ( struct multi_context m,
struct multi_instance mi 
)

◆ multi_io_wait()

int multi_io_wait ( struct multi_context m)