libnl 1.1.4

Class Attribute Access

int rtnl_class_dsmark_set_bitmask (struct rtnl_class *class, uint8_t mask)
 Set bitmask of DSMARK class.
 
int rtnl_class_dsmark_get_bitmask (struct rtnl_class *class)
 Get bitmask of DSMARK class.
 
int rtnl_class_dsmark_set_value (struct rtnl_class *class, uint8_t value)
 Set value of DSMARK class.
 
int rtnl_class_dsmark_get_value (struct rtnl_class *class)
 Get value of DSMARK class.
 

Qdisc Attribute Access

int rtnl_qdisc_dsmark_set_indices (struct rtnl_qdisc *qdisc, uint16_t indices)
 Set indices of DSMARK qdisc.
 
int rtnl_qdisc_dsmark_get_indices (struct rtnl_qdisc *qdisc)
 Get indices of DSMARK qdisc.
 
int rtnl_qdisc_dsmark_set_default_index (struct rtnl_qdisc *qdisc, uint16_t default_index)
 Set default index of DSMARK qdisc.
 
int rtnl_qdisc_dsmark_get_default_index (struct rtnl_qdisc *qdisc)
 Get default index of DSMARK qdisc.
 
int rtnl_qdisc_dsmark_set_set_tc_index (struct rtnl_qdisc *qdisc, int flag)
 Set set-tc-index flag of DSMARK qdisc.
 
int rtnl_qdisc_dsmark_get_set_tc_index (struct rtnl_qdisc *qdisc)
 Get set-tc-index flag of DSMARK qdisc.
 

Detailed Description

Function Documentation

◆ rtnl_class_dsmark_set_bitmask()

int rtnl_class_dsmark_set_bitmask ( struct rtnl_class *  class,
uint8_t  mask 
)
Parameters
classDSMARK class to be modified.
maskNew bitmask.
Returns
0 on success or a negative error code.

Definition at line 248 of file dsmark.c.

249{
250 struct rtnl_dsmark_class *dsmark;
251
252 dsmark = dsmark_class(class);
253 if (!dsmark)
254 return nl_errno(ENOMEM);
255
256 dsmark->cdm_bmask = mask;
257 dsmark->cdm_mask |= SCH_DSMARK_ATTR_MASK;
258
259 return 0;
260}

◆ rtnl_class_dsmark_get_bitmask()

int rtnl_class_dsmark_get_bitmask ( struct rtnl_class *  class)
Parameters
classDSMARK class.
Returns
Bitmask or a negative error code.

Definition at line 267 of file dsmark.c.

268{
269 struct rtnl_dsmark_class *dsmark;
270
271 dsmark = dsmark_class(class);
272 if (dsmark && dsmark->cdm_mask & SCH_DSMARK_ATTR_MASK)
273 return dsmark->cdm_bmask;
274 else
275 return nl_errno(ENOENT);
276}

◆ rtnl_class_dsmark_set_value()

int rtnl_class_dsmark_set_value ( struct rtnl_class *  class,
uint8_t  value 
)
Parameters
classDSMARK class to be modified.
valueNew value.
Returns
0 on success or a negative errror code.

Definition at line 284 of file dsmark.c.

285{
286 struct rtnl_dsmark_class *dsmark;
287
288 dsmark = dsmark_class(class);
289 if (!dsmark)
290 return nl_errno(ENOMEM);
291
292 dsmark->cdm_value = value;
293 dsmark->cdm_mask |= SCH_DSMARK_ATTR_VALUE;
294
295 return 0;
296}

◆ rtnl_class_dsmark_get_value()

int rtnl_class_dsmark_get_value ( struct rtnl_class *  class)
Parameters
classDSMARK class.
Returns
Value or a negative error code.

Definition at line 303 of file dsmark.c.

304{
305 struct rtnl_dsmark_class *dsmark;
306
307 dsmark = dsmark_class(class);
308 if (dsmark && dsmark->cdm_mask & SCH_DSMARK_ATTR_VALUE)
309 return dsmark->cdm_value;
310 else
311 return nl_errno(ENOENT);
312}

◆ rtnl_qdisc_dsmark_set_indices()

int rtnl_qdisc_dsmark_set_indices ( struct rtnl_qdisc *  qdisc,
uint16_t  indices 
)
Parameters
qdiscDSMARK qdisc to be modified.
indicesNew indices.

Definition at line 326 of file dsmark.c.

327{
328 struct rtnl_dsmark_qdisc *dsmark;
329
330 dsmark = dsmark_qdisc(qdisc);
331 if (!dsmark)
332 return nl_errno(ENOMEM);
333
334 dsmark->qdm_indices = indices;
335 dsmark->qdm_mask |= SCH_DSMARK_ATTR_INDICES;
336
337 return 0;
338}

◆ rtnl_qdisc_dsmark_get_indices()

int rtnl_qdisc_dsmark_get_indices ( struct rtnl_qdisc *  qdisc)
Parameters
qdiscDSMARK qdisc.
Returns
Indices or a negative error code.

Definition at line 345 of file dsmark.c.

346{
347 struct rtnl_dsmark_qdisc *dsmark;
348
349 dsmark = dsmark_qdisc(qdisc);
350 if (dsmark && dsmark->qdm_mask & SCH_DSMARK_ATTR_INDICES)
351 return dsmark->qdm_indices;
352 else
353 return nl_errno(ENOENT);
354}

◆ rtnl_qdisc_dsmark_set_default_index()

int rtnl_qdisc_dsmark_set_default_index ( struct rtnl_qdisc *  qdisc,
uint16_t  default_index 
)
Parameters
qdiscDSMARK qdisc to be modified.
default_indexNew default index.
Returns
0 on success or a negative error code.

Definition at line 362 of file dsmark.c.

364{
365 struct rtnl_dsmark_qdisc *dsmark;
366
367 dsmark = dsmark_qdisc(qdisc);
368 if (!dsmark)
369 return nl_errno(ENOMEM);
370
371 dsmark->qdm_default_index = default_index;
372 dsmark->qdm_mask |= SCH_DSMARK_ATTR_DEFAULT_INDEX;
373
374 return 0;
375}

◆ rtnl_qdisc_dsmark_get_default_index()

int rtnl_qdisc_dsmark_get_default_index ( struct rtnl_qdisc *  qdisc)
Parameters
qdiscDSMARK qdisc.
Returns
Default index or a negative error code.

Definition at line 382 of file dsmark.c.

383{
384 struct rtnl_dsmark_qdisc *dsmark;
385
386 dsmark = dsmark_qdisc(qdisc);
387 if (dsmark && dsmark->qdm_mask & SCH_DSMARK_ATTR_DEFAULT_INDEX)
388 return dsmark->qdm_default_index;
389 else
390 return nl_errno(ENOENT);
391}

◆ rtnl_qdisc_dsmark_set_set_tc_index()

int rtnl_qdisc_dsmark_set_set_tc_index ( struct rtnl_qdisc *  qdisc,
int  flag 
)
Parameters
qdiscDSMARK qdisc to be modified.
flagFlag indicating whether to enable or disable.
Returns
0 on success or a negative error code.

Definition at line 399 of file dsmark.c.

400{
401 struct rtnl_dsmark_qdisc *dsmark;
402
403 dsmark = dsmark_qdisc(qdisc);
404 if (!dsmark)
405 return nl_errno(ENOMEM);
406
407 dsmark->qdm_set_tc_index = !!flag;
408 dsmark->qdm_mask |= SCH_DSMARK_ATTR_SET_TC_INDEX;
409
410 return 0;
411}

◆ rtnl_qdisc_dsmark_get_set_tc_index()

int rtnl_qdisc_dsmark_get_set_tc_index ( struct rtnl_qdisc *  qdisc)
Parameters
qdiscDSMARK qdisc to be modified.
Returns
1 or 0 to indicate wehther the flag is enabled or a negative error code.

Definition at line 419 of file dsmark.c.

420{
421 struct rtnl_dsmark_qdisc *dsmark;
422
423 dsmark = dsmark_qdisc(qdisc);
424 if (dsmark && dsmark->qdm_mask & SCH_DSMARK_ATTR_SET_TC_INDEX)
425 return dsmark->qdm_set_tc_index;
426 else
427 return nl_errno(ENOENT);
428}