xref: /aosp_15_r20/external/ethtool/netlink/strset.h (revision 1b481fc3bb1b45d4cf28d1ec12969dc1055f555d)
1*1b481fc3SMaciej Żenczykowski /*
2*1b481fc3SMaciej Żenczykowski  * strset.h - string set handling
3*1b481fc3SMaciej Żenczykowski  *
4*1b481fc3SMaciej Żenczykowski  * Interface for local cache of ethtool string sets.
5*1b481fc3SMaciej Żenczykowski  */
6*1b481fc3SMaciej Żenczykowski 
7*1b481fc3SMaciej Żenczykowski #ifndef ETHTOOL_NETLINK_STRSET_H__
8*1b481fc3SMaciej Żenczykowski #define ETHTOOL_NETLINK_STRSET_H__
9*1b481fc3SMaciej Żenczykowski 
10*1b481fc3SMaciej Żenczykowski struct nl_socket;
11*1b481fc3SMaciej Żenczykowski struct stringset;
12*1b481fc3SMaciej Żenczykowski 
13*1b481fc3SMaciej Żenczykowski const struct stringset *global_stringset(unsigned int type,
14*1b481fc3SMaciej Żenczykowski 					 struct nl_socket *nlsk);
15*1b481fc3SMaciej Żenczykowski const struct stringset *perdev_stringset(const char *dev, unsigned int type,
16*1b481fc3SMaciej Żenczykowski 					 struct nl_socket *nlsk);
17*1b481fc3SMaciej Żenczykowski 
18*1b481fc3SMaciej Żenczykowski unsigned int get_count(const struct stringset *set);
19*1b481fc3SMaciej Żenczykowski const char *get_string(const struct stringset *set, unsigned int idx);
20*1b481fc3SMaciej Żenczykowski 
21*1b481fc3SMaciej Żenczykowski int preload_global_strings(struct nl_socket *nlsk);
22*1b481fc3SMaciej Żenczykowski int preload_perdev_strings(struct nl_socket *nlsk, const char *dev);
23*1b481fc3SMaciej Żenczykowski void cleanup_all_strings(void);
24*1b481fc3SMaciej Żenczykowski 
25*1b481fc3SMaciej Żenczykowski #endif /* ETHTOOL_NETLINK_STRSET_H__ */
26