======talk:generic_netlink_howto======
What was the purpose of this last edit, 00:18, 18 April 2007 by JyqXan, it seems to remove large chunks of the text for no apparent reason? Unless JyqXan has an explanation I propose we revert the latest change.
There are a few of these random mutilations going on by randomly named users. No idea why! I think I might have accidentaly marked this as patrolled but don't know how to reverse. [[https://www.linuxfoundation.org/users/Imcdnzl| User:Imcdnzl ]]
Okay, thanks both for the explanation and the fix.
===== enum/macro confusion =====
What is the reason for:
enum {
DOC_EXMPL_A_UNSPEC,
DOC_EXMPL_A_MSG,
__DOC_EXMPL_A_MAX,
};
#define DOC_EXMPL_A_MAX (__DOC_EXMPL_A_MAX - 1)
in place of the seemingly more consistent:
enum {
DOC_EXMPL_A_UNSPEC,
DOC_EXMPL_A_MSG,
__DOC_EXMPL_A_MAX,
DOC_EXMPL_A_MAX = __DOC_EXMPL_A_MAX - 1
};
It seems weird to me to mix macros and enums the former way.[[https://www.linuxfoundation.org/node/add/wiki?gids[]=5066|Blp]] 22:59, 1 September 2007 (PDT)
Defining DOC_EXMPL_A_MAX as you have done, inside the enum, would create a conflict between DOC_EXMPL_A_MAX and DOC_EXMPL_A_MSG. Also, please look at the existing kernel sources for subsystems which make use of Netlink attributes, existing convention can be very important.
"A conflict"? There is no such thing: nothing prevents two constants in a single enumeration from sharing a value. As for convention, I suppose that's as good a reason as any.[[https://www.linuxfoundation.org/node/add/wiki?gids[]=5066|Blp]] 10:29, 2 September 2007 (PDT)