]>
git.proxmox.com Git - mirror_iproute2.git/blob - tc/tc_qevent.h
1 /* SPDX-License-Identifier: GPL-2.0 */
6 #include <linux/types.h>
7 #include <libnetlink.h>
15 int (*parse_qevent
)(struct qevent_util
*qu
, int *argc
, char ***argv
);
16 int (*read_qevent
)(struct qevent_util
*qu
, struct rtattr
**tb
);
17 void (*print_qevent
)(struct qevent_util
*qu
, FILE *f
);
18 int (*dump_qevent
)(struct qevent_util
*qu
, struct nlmsghdr
*n
);
24 #define QEVENT(_name, _form, _data, _attr) \
27 .parse_qevent = qevent_parse_##_form, \
28 .read_qevent = qevent_read_##_form, \
29 .print_qevent = qevent_print_##_form, \
30 .dump_qevent = qevent_dump_##_form, \
31 .data_size = sizeof(struct qevent_##_form), \
36 void qevents_init(struct qevent_util
*qevents
);
37 int qevent_parse(struct qevent_util
*qevents
, int *p_argc
, char ***p_argv
);
38 int qevents_read(struct qevent_util
*qevents
, struct rtattr
**tb
);
39 int qevents_dump(struct qevent_util
*qevents
, struct nlmsghdr
*n
);
40 void qevents_print(struct qevent_util
*qevents
, FILE *f
);
41 bool qevents_have_block(struct qevent_util
*qevents
, __u32 block_idx
);
44 struct qevent_base base
;
46 int qevent_parse_plain(struct qevent_util
*qu
, int *p_argc
, char ***p_argv
);
47 int qevent_read_plain(struct qevent_util
*qu
, struct rtattr
**tb
);
48 void qevent_print_plain(struct qevent_util
*qu
, FILE *f
);
49 int qevent_dump_plain(struct qevent_util
*qu
, struct nlmsghdr
*n
);