mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-02-11 06:00:35 +01:00
platform/netlink: cleanup nlmsg_append() and add nlmsg_append_struct() macro
This commit is contained in:
parent
020000433b
commit
815e0329c0
2 changed files with 18 additions and 2 deletions
|
|
@ -214,6 +214,8 @@ nlmsg_reserve (struct nl_msg *n, size_t len, int pad)
|
|||
size_t nlmsg_len = n->nm_nlh->nlmsg_len;
|
||||
size_t tlen;
|
||||
|
||||
nm_assert (pad >= 0);
|
||||
|
||||
if (len > n->nm_size)
|
||||
return NULL;
|
||||
|
||||
|
|
@ -328,10 +330,18 @@ void nlmsg_free (struct nl_msg *msg)
|
|||
/*****************************************************************************/
|
||||
|
||||
int
|
||||
nlmsg_append (struct nl_msg *n, void *data, size_t len, int pad)
|
||||
nlmsg_append (struct nl_msg *n,
|
||||
const void *data,
|
||||
size_t len,
|
||||
int pad)
|
||||
{
|
||||
void *tmp;
|
||||
|
||||
nm_assert (n);
|
||||
nm_assert (data);
|
||||
nm_assert (len > 0);
|
||||
nm_assert (pad >= 0);
|
||||
|
||||
tmp = nlmsg_reserve (n, len, pad);
|
||||
if (tmp == NULL)
|
||||
return -ENOMEM;
|
||||
|
|
|
|||
|
|
@ -400,7 +400,13 @@ struct nl_msg *nlmsg_alloc_simple (int nlmsgtype, int flags);
|
|||
|
||||
void *nlmsg_reserve (struct nl_msg *n, size_t len, int pad);
|
||||
|
||||
int nlmsg_append (struct nl_msg *n, void *data, size_t len, int pad);
|
||||
int nlmsg_append (struct nl_msg *n,
|
||||
const void *data,
|
||||
size_t len,
|
||||
int pad);
|
||||
|
||||
#define nlmsg_append_struct(n, data) \
|
||||
nlmsg_append (n, (data), sizeof (*(data)), NLMSG_ALIGNTO)
|
||||
|
||||
void nlmsg_free (struct nl_msg *msg);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue