#endif
/**
- * @ingroup link_info
+ * @ingroup link_api
*
- * Link info operations
+ * Available operations to modules implementing a link info type.
*/
struct rtnl_link_info_ops
{
- /** Name of operations, must match name on kernel side */
+ /** Name of link info type, must match name on kernel side */
char * io_name;
- /** Reference count (internal, do not use) */
+ /** Reference count, DO NOT MODIFY */
int io_refcnt;
/** Called to assign an info type to a link.
extern int rtnl_link_unregister_info(struct rtnl_link_info_ops *);
+/**
+ * @ingroup link_api
+ *
+ * Available operations to modules implementing a link address family.
+ */
struct rtnl_link_af_ops
{
/** The address family this operations set implements */
/**
* @ingroup link
- * @defgroup link_info Link Info API
- * @brief
+ * @defgroup link_API Link Modules API
+ * @brief API for modules implementing specific link types/semantics.
*
* @par 1) Registering/Unregistering a new link info type
* @code
return NULL;
}
+/**
+ * @name Link Info Modules
+ * @{
+ */
+
/**
* Return operations of a specific link info type
* @arg name Name of link info type.
return -NLE_OPNOTSUPP;
}
+/** @} */
+
+/**
+ * @name Link Address Family Modules
+ * @{
+ */
+
static struct rtnl_link_af_ops *af_ops[AF_MAX];
/**
/** @} */
+/** @} */
+
* Copyright (c) 2010 Thomas Graf <tgraf@suug.ch>
*/
-/**
- * @ingroup link
- * @defgroup link_bridge Bridge Specifics
- * @brief
- *
- * @{
- */
-
#include <netlink-local.h>
#include <netlink/netlink.h>
#include <netlink/attr.h>
{
rtnl_link_af_unregister(&bridge_ops);
}
-
-/** @} */
*/
/**
- * @ingroup link_info
+ * @ingroup link_api
* @defgroup vlan VLAN
* @brief
*