Reason for NLE_MSGTYPE_NOSUPPORT
Yves Langisch
yves at langisch.ch
Wed Nov 3 07:14:41 EDT 2010
The server side registration is done as follows. On the client side
(user space) I've set the env variable to NLDBG=5 but the debug output
does not give me any hint what could be wrong. Let me know if you need
more info. Thanks! Yves
...
static struct genl_ops dropstop_genl_ops_verdict = {
.cmd = DROPSTOP_C_VERDICT,
.flags = 0, //todo eigentlich wär's GENL_ADMIN_PERM
.policy = dropstop_genl_policy,
.doit = dropstop_nl_verdict,
.dumpit = NULL,
};
...
static const struct nla_policy dropstop_genl_policy[DROPSTOP_A_MAX + 1]
__read_mostly = {
[DROPSTOP_A_VERSION] = { .type = NLA_U32 },
[DROPSTOP_A_SYSCALL] = { .type = NLA_U8 },
[DROPSTOP_A_PROTOCOL] = { .type = NLA_U8 },
[DROPSTOP_A_INSERTED] = { .type = NLA_FLAG },
[DROPSTOP_A_REMOVED] = { .type = NLA_FLAG },
[DROPSTOP_A_FLUSHED] = { .type = NLA_FLAG },
[DROPSTOP_A_REGISTERED] = { .type = NLA_FLAG },
[DROPSTOP_A_UNREGISTERED] = { .type = NLA_FLAG },
[DROPSTOP_A_VERDICT_ID] = { .type = NLA_U32 },
[DROPSTOP_A_FAMILY] = { .type = NLA_U8 },
[DROPSTOP_A_UID] = { .type = NLA_U32 },
[DROPSTOP_A_PID] = { .type = NLA_U32 },
[DROPSTOP_A_TYPE] = { .type = NLA_U8 },
[DROPSTOP_A_SADDR] = { .type = NLA_U32 },
[DROPSTOP_A_SADDR6] = { .type = NLA_BINARY,
.len = sizeof(struct in6_addr) },
[DROPSTOP_A_DADDR] = { .type = NLA_U32 },
[DROPSTOP_A_DADDR6] = { .type = NLA_BINARY,
.len = sizeof(struct in6_addr) },
[DROPSTOP_A_SPORT] = { .type = NLA_U16 },
[DROPSTOP_A_DPORT] = { .type = NLA_U16 },
[DROPSTOP_A_BUFFER_LEN] = { .len = sizeof(__kernel_size_t) },
[DROPSTOP_A_BUFFER] = { .type = NLA_FLAG },
[DROPSTOP_A_VERDICT] = { .type = NLA_U8 },
[DROPSTOP_A_DATA_EXT] = { .type = NLA_BINARY,
.len = sizeof(struct dropstop_sock_info) },
[DROPSTOP_A_VERDICT_DELAY] = { .type = NLA_U32 },
[DROPSTOP_A_VERDICT_DELAY_F] = { .type = NLA_FLAG },
};
...
static struct genl_family dropstop_genl_family = {
.id = GENL_ID_GENERATE,
.hdrsize = 0,
.name = DROPSTOP_GENL_NAME,
.version = DROPSTOP_GENL_VERSION,
.maxattr = DROPSTOP_A_MAX,
};
On 03.11.2010 12:05, Thomas Graf wrote:
> On Tue, Nov 02, 2010 at 11:43:00PM +0100, Yves Langisch wrote:
>> Hi,
>>
>> In my user space library I receive kernel events through generic
>> netlink commands and attributes. Whenever my receiving thread gets a
>> message I get a NLE_MSGTYPE_NOSUPPORT error. The only obvious
>> difference to my other working messages is the complexity of the
>> failing one.
>>
>> Note the last attribute which is a binary attribute. What could be
>> reason for this error message? Any ideas?
>
> In the context of genetlink this means that while parsing, no
> matching genetlink command was found.
>
> How did you register the verdict cmd? Could also be a parsing bug.
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5198 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.infradead.org/pipermail/libnl/attachments/20101103/3a974303/attachment.p7s>
More information about the libnl
mailing list