mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-29 01:51:39 +00:00
genetlink: no longer support using static family IDs
Static family IDs have never really been used, the only use case was the workaround I introduced for those users that assumed their family ID was also their multicast group ID. Additionally, because static family IDs would never be reserved by the generic netlink code, using a relatively low ID would only work for built-in families that can be registered immediately after generic netlink is started, which is basically only the control family (apart from the workaround code, which I also had to add code for so it would reserve those IDs) Thus, anything other than GENL_ID_GENERATE is flawed and luckily not used except in the cases I mentioned. Move those workarounds into a few lines of code, and then get rid of GENL_ID_GENERATE entirely, making it more robust. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
c90c39dab3
commit
a07ea4d994
37 changed files with 24 additions and 69 deletions
|
@ -20,7 +20,7 @@ struct genl_info;
|
|||
|
||||
/**
|
||||
* struct genl_family - generic netlink family
|
||||
* @id: protocol family idenfitier
|
||||
* @id: protocol family identifier (private)
|
||||
* @hdrsize: length of user specific header in bytes
|
||||
* @name: name of family
|
||||
* @version: protocol version
|
||||
|
@ -48,7 +48,7 @@ struct genl_info;
|
|||
* @n_ops: number of operations supported by this family (private)
|
||||
*/
|
||||
struct genl_family {
|
||||
unsigned int id;
|
||||
unsigned int id; /* private */
|
||||
unsigned int hdrsize;
|
||||
char name[GENL_NAMSIZ];
|
||||
unsigned int version;
|
||||
|
@ -149,9 +149,6 @@ static inline int genl_register_family(struct genl_family *family)
|
|||
* Registers the specified family and operations from the specified table.
|
||||
* Only one family may be registered with the same family name or identifier.
|
||||
*
|
||||
* The family id may equal GENL_ID_GENERATE causing an unique id to
|
||||
* be automatically generated and assigned.
|
||||
*
|
||||
* Either a doit or dumpit callback must be specified for every registered
|
||||
* operation or the function will fail. Only one operation structure per
|
||||
* command identifier may be registered.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue