1 /* SPDX-License-Identifier: LGPL-2.1+
2 * Copyright © 2019 VMware, Inc. */
5 #include "conf-parser.h"
8 #include "networkd-link.h"
9 #include "networkd-network.h"
10 #include "networkd-util.h"
14 typedef struct QDisc
{
15 NetworkConfigSection
*section
;
26 bool has_network_emulator
:1;
27 bool has_token_buffer_filter
:1;
28 bool has_stochastic_fairness_queueing
:1;
29 bool has_fair_queuing_controlled_delay
:1;
32 TokenBufferFilter tbf
;
33 StochasticFairnessQueueing sfq
;
34 FairQueuingControlledDelay fq_codel
;
37 void qdisc_free(QDisc
*qdisc
);
38 int qdisc_new_static(Network
*network
, const char *filename
, unsigned section_line
, QDisc
**ret
);
40 int qdisc_configure(Link
*link
, QDisc
*qdisc
);
42 int qdisc_section_verify(QDisc
*qdisc
, bool *has_root
, bool *has_clsact
);
44 DEFINE_NETWORK_SECTION_FUNCTIONS(QDisc
, qdisc_free
);
46 CONFIG_PARSER_PROTOTYPE(config_parse_tc_qdiscs_parent
);