libnl: nla_put_be64(): align on a 64-bit area
nla_data() is now aligned on a 64-bit area. A temporary version (nla_put_be64_32bit()) is added for nla_put_net64(). This function is removed in the next patch. Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
e7479122be
commit
b46f6ded90
@@ -856,16 +856,23 @@ static inline int nla_put_u64(struct sk_buff *skb, int attrtype, u64 value)
|
||||
}
|
||||
|
||||
/**
|
||||
* nla_put_be64 - Add a __be64 netlink attribute to a socket buffer
|
||||
* nla_put_be64 - Add a __be64 netlink attribute to a socket buffer and align it
|
||||
* @skb: socket buffer to add attribute to
|
||||
* @attrtype: attribute type
|
||||
* @value: numeric value
|
||||
* @padattr: attribute type for the padding
|
||||
*/
|
||||
static inline int nla_put_be64(struct sk_buff *skb, int attrtype, __be64 value)
|
||||
static inline int nla_put_be64(struct sk_buff *skb, int attrtype, __be64 value,
|
||||
int padattr)
|
||||
{
|
||||
return nla_put_64bit(skb, attrtype, sizeof(__be64), &value, padattr);
|
||||
}
|
||||
|
||||
static inline int nla_put_be64_32bit(struct sk_buff *skb, int attrtype,
|
||||
__be64 value)
|
||||
{
|
||||
return nla_put(skb, attrtype, sizeof(__be64), &value);
|
||||
}
|
||||
|
||||
/**
|
||||
* nla_put_net64 - Add 64-bit network byte order netlink attribute to a socket buffer
|
||||
* @skb: socket buffer to add attribute to
|
||||
@@ -874,7 +881,7 @@ static inline int nla_put_be64(struct sk_buff *skb, int attrtype, __be64 value)
|
||||
*/
|
||||
static inline int nla_put_net64(struct sk_buff *skb, int attrtype, __be64 value)
|
||||
{
|
||||
return nla_put_be64(skb, attrtype | NLA_F_NET_BYTEORDER, value);
|
||||
return nla_put_be64_32bit(skb, attrtype | NLA_F_NET_BYTEORDER, value);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user