libnl 3.5.0

(Fast) Prio
Routing Library (libnl-route) » Traffic Control » Queueing Disciplines

## Attribute Modification
void | rtnl_qdisc_prio_set_bands (struct rtnl_qdisc *qdisc, int bands)
| Set number of bands of PRIO qdisc. More...
int | rtnl_qdisc_prio_get_bands (struct rtnl_qdisc *qdisc)
| Get number of bands of PRIO qdisc. More...
int | rtnl_qdisc_prio_set_priomap (struct rtnl_qdisc *qdisc, uint8_t priomap[], int len)
| Set priomap of the PRIO qdisc. More...
uint8_t * | rtnl_qdisc_prio_get_priomap (struct rtnl_qdisc *qdisc)
| Get priomap of a PRIO qdisc. More...

## Priority Band Translations
char * | rtnl_prio2str (int prio, char *buf, size_t size)
| Convert priority to character string. More...
int | rtnl_str2prio (const char *name)
| Convert character string to priority. More...

## Detailed Description

1) Typical PRIO configuration
  // Specify the maximal number of bands to be used for this PRIO qdisc.
  rtnl_qdisc_prio_set_bands(qdisc, QDISC_PRIO_DEFAULT_BANDS);
  // Provide a map assigning each priority to a band number.
  uint8_t map[] = QDISC_PRIO_DEFAULT_PRIOMAP;
  rtnl_qdisc_prio_set_priomap(qdisc, map, sizeof(map));

## Function Documentation

## ◆ rtnl_qdisc_prio_set_bands()

void rtnl_qdisc_prio_set_bands | ( | struct rtnl_qdisc * | qdisc,
|  | int | bands
| ) |  |

Set number of bands of PRIO qdisc.

Parameters

  qdisc | PRIO qdisc to be modified.
  bands | New number of bands.

Returns
  0 on success or a negative error code.

Definition at line 129 of file prio.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_qdisc_prio_get_bands()

int rtnl_qdisc_prio_get_bands | ( | struct rtnl_qdisc * | qdisc | ) |

Get number of bands of PRIO qdisc.

Parameters

  qdisc | PRIO qdisc.

Returns
  Number of bands or a negative error code.

Definition at line 145 of file prio.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_qdisc_prio_set_priomap()

int rtnl_qdisc_prio_set_priomap | ( | struct rtnl_qdisc * | qdisc,
|  | uint8_t | priomap[],
|  | int | len
| ) |  |

Set priomap of the PRIO qdisc.

Parameters

  qdisc | PRIO qdisc to be modified.
  priomap | New priority mapping.
  len | Length of priomap (# of elements).

Returns
  0 on success or a negative error code.

Definition at line 165 of file prio.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_qdisc_prio_get_priomap()

uint8_t* rtnl_qdisc_prio_get_priomap | ( | struct rtnl_qdisc * | qdisc | ) |

Get priomap of a PRIO qdisc.

Parameters

  qdisc | PRIO qdisc.

Returns
  Priority mapping as array of size TC_PRIO_MAX+1 or NULL if an error occured.

Definition at line 197 of file prio.c.

References rtnl_tc_data(), and TC_CAST.

Here is the call graph for this function:

## ◆ rtnl_prio2str()

char* rtnl_prio2str | ( | int | prio,
|  | char * | buf,
|  | size_t | size
| ) |  |

Convert priority to character string.

Parameters

  prio | Priority.
  buf | Destination buffer
  size | Size of destination buffer.

Converts a priority to a character string and stores the result in the specified destination buffer.

Returns
  Name of priority as character string.

Definition at line 237 of file prio.c.

## ◆ rtnl_str2prio()

int rtnl_str2prio | ( | const char * | name | ) |

Convert character string to priority.

Parameters

  name | Name of priority.

Converts the provided character string specifying a priority to the corresponding numeric value.

Returns
  Numeric priority or a negative value if no match was found.

Definition at line 251 of file prio.c.