libnl  1.1
Modules | Data Structures | Enumerations | Variables
Utilities

Modules

 Abstract Address
 
 Abstract Data
 

Data Structures

struct  nl_dump_params
 Dumping parameters. More...
 

Enumerations

enum  nl_dump_type {
  NL_DUMP_BRIEF, NL_DUMP_FULL, NL_DUMP_STATS, NL_DUMP_XML,
  NL_DUMP_ENV, NL_DUMP_EVENTS, __NL_DUMP_MAX
}
 Dumping types (dp_type) More...
 

Variables

int nl_debug = 0
 Debug level.
 
struct nl_dump_params nl_debug_dp
 

Error Code Helpers

int nl_get_errno (void)
 
char * nl_geterror (void)
 Return error message for an error code. More...
 
void nl_perror (const char *s)
 Print a libnl error message. More...
 

Unit Pretty-Printing

double nl_cancel_down_bytes (unsigned long long l, char **unit)
 Cancel down a byte counter. More...
 
double nl_cancel_down_bits (unsigned long long l, char **unit)
 Cancel down a bit counter. More...
 
double nl_cancel_down_us (uint32_t l, char **unit)
 Cancel down a micro second value. More...
 

Generic Unit Translations

long nl_size2int (const char *str)
 Convert a character string to a size. More...
 
long nl_prob2int (const char *str)
 Convert a character string to a probability. More...
 

Time Translations

int nl_get_hz (void)
 Return the value of HZ.
 
uint32_t nl_us2ticks (uint32_t us)
 Convert micro seconds to ticks. More...
 
uint32_t nl_ticks2us (uint32_t ticks)
 Convert ticks to micro seconds. More...
 
long nl_time2int (const char *str)
 
char * nl_msec2str (uint64_t msec, char *buf, size_t len)
 Convert milliseconds to a character string. More...
 

Link Layer Protocol Translations

char * nl_llproto2str (int llproto, char *buf, size_t len)
 
int nl_str2llproto (const char *name)
 

Ethernet Protocol Translations

char * nl_ether_proto2str (int eproto, char *buf, size_t len)
 
int nl_str2ether_proto (const char *name)
 

IP Protocol Translations

char * nl_ip_proto2str (int proto, char *buf, size_t len)
 
int nl_str2ip_proto (const char *name)
 

Dumping Helpers

void nl_new_line (struct nl_dump_params *params, int line)
 Handle a new line while dumping. More...
 
void nl_dump (struct nl_dump_params *params, const char *fmt,...)
 Dump a formatted character string. More...
 

Probability Constants

#define NL_PROB_MIN   0x0
 Lower probability limit.
 
#define NL_PROB_MAX   0xffffffff
 Upper probability limit.
 

Detailed Description

Enumeration Type Documentation

Enumerator
NL_DUMP_BRIEF 

Dump object in a brief one-liner.

NL_DUMP_FULL 

Dump all attributes but no statistics.

NL_DUMP_STATS 

Dump all attributes including statistics.

NL_DUMP_XML 

Dump all attribtes in XML format.

NL_DUMP_ENV 

Dump all attribtues as env variables.

NL_DUMP_EVENTS 

Dump event.

Definition at line 21 of file types.h.

Function Documentation

char* nl_geterror ( void  )
Returns
error message

Definition at line 142 of file utils.c.

Referenced by nl_perror().

void nl_perror ( const char *  s)
Parameters
serror message prefix

Prints the error message of the call that failed last.

If s is not NULL and *s is not a null byte the argument string is printed, followed by a colon and a blank. Then the error message and a new-line.

Definition at line 163 of file utils.c.

References nl_geterror().

double nl_cancel_down_bytes ( unsigned long long  l,
char **  unit 
)
Parameters
lbyte counter
unitdestination unit pointer

Cancels down a byte counter until it reaches a reasonable unit. The chosen unit is assigned to unit.

Returns
The cancelled down byte counter in the new unit.

Definition at line 188 of file utils.c.

double nl_cancel_down_bits ( unsigned long long  l,
char **  unit 
)
Parameters
lbit counter
unitdestination unit pointer

Cancels downa bit counter until it reaches a reasonable unit. The chosen unit is assigned to unit.

Returns
The cancelled down bit counter in the new unit.

Definition at line 218 of file utils.c.

double nl_cancel_down_us ( uint32_t  l,
char **  unit 
)
Parameters
lmicro seconds
unitdestination unit pointer

Cancels down a microsecond counter until it reaches a reasonable unit. The chosen unit is assigned to unit.

Returns
The cancelled down microsecond in the new unit

Definition at line 249 of file utils.c.

long nl_size2int ( const char *  str)
Parameters
strsize encoded as character string

Converts the specified size as character to the corresponding number of bytes.

Supported formats are:

  • b,kb/k,m/mb,gb/g for bytes
  • bit,kbit/mbit/gbit
Returns
The number of bytes or -1 if the string is unparseable

Definition at line 283 of file utils.c.

long nl_prob2int ( const char *  str)
Parameters
strprobability encoded as character string

Converts the specified probability as character to the corresponding probability number.

Supported formats are:

  • 0.0-1.0
  • 0%-100%
Returns
The probability relative to NL_PROB_MIN and NL_PROB_MAX

Definition at line 325 of file utils.c.

References NL_PROB_MAX.

uint32_t nl_us2ticks ( uint32_t  us)
Parameters
usmicro seconds
Returns
number of ticks

Definition at line 429 of file utils.c.

Referenced by rtnl_netem_set_delay(), and rtnl_netem_set_jitter().

uint32_t nl_ticks2us ( uint32_t  ticks)
Parameters
ticksnumber of ticks
Returns
microseconds

Definition at line 440 of file utils.c.

Referenced by rtnl_netem_get_delay(), and rtnl_netem_get_jitter().

char* nl_msec2str ( uint64_t  msec,
char *  buf,
size_t  len 
)
Parameters
msecnumber of milliseconds
bufdestination buffer
lenbuffer length

Converts milliseconds to a character string split up in days, hours, minutes, seconds, and milliseconds and stores it in the specified destination buffer.

Returns
The destination buffer.

Definition at line 478 of file utils.c.

void nl_new_line ( struct nl_dump_params params,
int  line 
)
Parameters
paramsDumping parameters
lineNumber of lines dumped already.

This function must be called before dumping any onto a new line. It will ensure proper prefixing as specified by the dumping parameters.

Note
This function will NOT dump any newlines itself

Definition at line 725 of file utils.c.

References nl_dump_params::dp_buf, nl_dump_params::dp_buflen, nl_dump_params::dp_fd, nl_dump_params::dp_nl_cb, and nl_dump_params::dp_prefix.

void nl_dump ( struct nl_dump_params params,
const char *  fmt,
  ... 
)
Parameters
paramsDumping parameters
fmtprintf style formatting string
...Arguments to formatting string

Dumps a printf style formatting string to the output device as specified by the dumping parameters.

Definition at line 752 of file utils.c.

Variable Documentation

struct nl_dump_params nl_debug_dp
Initial value:
= {
.dp_type = NL_DUMP_FULL,
}
Dump all attributes but no statistics.
Definition: types.h:23

Definition at line 27 of file utils.c.