The FreeRADIUS server  $Id: 15bac2a4c627c01d1aa2047687b3418955ac7f00 $
Data Structures | Macros | Typedefs | Functions
bio_priv.h File Reference

Binary IO private functions. More...

#include <freeradius-devel/bio/base.h>
+ Include dependency graph for bio_priv.h:

Go to the source code of this file.

Data Structures

struct  fr_bio_common_s
 

Macros

#define _BIO_PRIVATE   1
 
#define FR_BIO_COMMON
 Common elements at the start of each private fr_bio_t. More...
 

Typedefs

typedef struct fr_bio_common_s fr_bio_common_t
 
typedef int(* fr_bio_shutdown_t) (fr_bio_t *bio)
 

Functions

static void fr_bio_chain (fr_bio_t *first, fr_bio_t *second)
 Chain one bio after another. More...
 
ssize_t fr_bio_eof_read (fr_bio_t *bio, void *packet_ctx, void *buffer, size_t size)
 
ssize_t fr_bio_next_read (fr_bio_t *bio, void *packet_ctx, void *buffer, size_t size)
 Internal bio function which just reads from the "next" bio. More...
 
ssize_t fr_bio_next_write (fr_bio_t *bio, void *packet_ctx, void const *buffer, size_t size)
 Internal bio function which just writes to the "next" bio. More...
 
static void fr_bio_unchain (fr_bio_t *bio)
 Remove a bio from a chain. More...
 

Detailed Description

Binary IO private functions.

Id
2b256fb65831b810cd4a3bd03d977c005a79f128

Create abstract binary input / output buffers.

Definition in file bio_priv.h.


Data Structure Documentation

◆ fr_bio_common_s

struct fr_bio_common_s

Definition at line 43 of file bio_priv.h.

Data Fields
FR_BIO_COMMON

Macro Definition Documentation

◆ _BIO_PRIVATE

#define _BIO_PRIVATE   1

Definition at line 29 of file bio_priv.h.

◆ FR_BIO_COMMON

#define FR_BIO_COMMON
Value:
fr_bio_cb_funcs_t cb
Definition: base.h:103
static fr_bio_t * bio
Definition: radclient-ng.c:86

Common elements at the start of each private fr_bio_t.

Definition at line 39 of file bio_priv.h.

Typedef Documentation

◆ fr_bio_common_t

Definition at line 32 of file bio_priv.h.

◆ fr_bio_shutdown_t

typedef int(* fr_bio_shutdown_t) (fr_bio_t *bio)

Definition at line 32 of file bio_priv.h.

Function Documentation

◆ fr_bio_chain()

static void fr_bio_chain ( fr_bio_t first,
fr_bio_t second 
)
inlinestatic

Chain one bio after another.

Todo:
  • this likely needs to be public

Definition at line 57 of file bio_priv.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ fr_bio_eof_read()

ssize_t fr_bio_eof_read ( fr_bio_t bio,
void *  packet_ctx,
void *  buffer,
size_t  size 
)

◆ fr_bio_next_read()

ssize_t fr_bio_next_read ( fr_bio_t bio,
void *  packet_ctx,
void *  buffer,
size_t  size 
)

Internal bio function which just reads from the "next" bio.

It is mainly used when the current bio needs to modify the write path, but does not need to do anything on the read path.

Definition at line 59 of file base.c.

+ Here is the call graph for this function:

◆ fr_bio_next_write()

ssize_t fr_bio_next_write ( fr_bio_t bio,
void *  packet_ctx,
void const *  buffer,
size_t  size 
)

Internal bio function which just writes to the "next" bio.

It is mainly used when the current bio needs to modify the read path, but does not need to do anything on the write path.

Definition at line 82 of file base.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ fr_bio_unchain()

static void fr_bio_unchain ( fr_bio_t bio)
inlinestatic

Remove a bio from a chain.

And reset prev/next ptrs to NULL.

Todo:
  • this likely needs to be public

Definition at line 74 of file bio_priv.h.

+ Here is the call graph for this function: