HEX
Server: LiteSpeed
System: Linux us-phx-web1284.main-hosting.eu 4.18.0-553.109.1.lve.el8.x86_64 #1 SMP Thu Mar 5 20:23:46 UTC 2026 x86_64
User: u300739242 (300739242)
PHP: 8.2.30
Disabled: system, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
Upload Files
File: //opt/alt/python311/lib/python3.11/site-packages/pyroute2/netlink/rtnl/tcmsg/sched_drr.py
'''
drr
+++

The qdisc doesn't accept any parameters, but the class
accepts `quantum` parameter::

    ip.tc('add', 'drr', interface, '1:')
    ip.tc('add-class', 'drr', interface, '1:10', quantum=1600)
    ip.tc('add-class', 'drr', interface, '1:20', quantum=1600)

'''

from pyroute2.netlink import nla
from pyroute2.netlink.rtnl import TC_H_ROOT
from pyroute2.netlink.rtnl.tcmsg.common import stats2 as c_stats2

parent = TC_H_ROOT


def get_class_parameters(kwarg):
    return {'attrs': [['TCA_DRR_QUANTUM', kwarg.get('quantum', 0)]]}


class options(nla):
    nla_map = (('TCA_DRR_UNSPEC', 'none'), ('TCA_DRR_QUANTUM', 'uint32'))


class stats(nla):
    fields = (('deficit', 'I'),)


class stats2(c_stats2):
    class stats_app(stats):
        pass