summaryrefslogtreecommitdiffstats
path: root/src/network/tc/tclass.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/network/tc/tclass.h')
-rw-r--r--src/network/tc/tclass.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/network/tc/tclass.h b/src/network/tc/tclass.h
index 85df57d42c..44f7181450 100644
--- a/src/network/tc/tclass.h
+++ b/src/network/tc/tclass.h
@@ -24,6 +24,8 @@ typedef struct TClass {
NetworkConfigSource source;
NetworkConfigState state;
+ unsigned n_ref;
+
uint32_t classid;
uint32_t parent;
@@ -55,7 +57,8 @@ extern const TClassVTable * const tclass_vtable[_TCLASS_KIND_MAX];
DEFINE_NETWORK_CONFIG_STATE_FUNCTIONS(TClass, tclass);
-TClass* tclass_free(TClass *tclass);
+TClass* tclass_ref(TClass *tclass);
+TClass* tclass_unref(TClass *tclass);
int tclass_new_static(TClassKind kind, Network *network, const char *filename, unsigned section_line, TClass **ret);
void tclass_mark_recursive(TClass *tclass);
@@ -71,7 +74,7 @@ void network_drop_invalid_tclass(Network *network);
int manager_rtnl_process_tclass(sd_netlink *rtnl, sd_netlink_message *message, Manager *m);
int link_enumerate_tclass(Link *link, uint32_t parent);
-DEFINE_SECTION_CLEANUP_FUNCTIONS(TClass, tclass_free);
+DEFINE_SECTION_CLEANUP_FUNCTIONS(TClass, tclass_unref);
CONFIG_PARSER_PROTOTYPE(config_parse_tclass_parent);
CONFIG_PARSER_PROTOTYPE(config_parse_tclass_classid);