Creation of Cybook 2416 (actually Gen4) repository
This commit is contained in:
33
include/net/nexthop.h
Normal file
33
include/net/nexthop.h
Normal file
@@ -0,0 +1,33 @@
|
||||
#ifndef __NET_NEXTHOP_H
|
||||
#define __NET_NEXTHOP_H
|
||||
|
||||
#include <linux/rtnetlink.h>
|
||||
#include <net/netlink.h>
|
||||
|
||||
static inline int rtnh_ok(const struct rtnexthop *rtnh, int remaining)
|
||||
{
|
||||
return remaining >= sizeof(*rtnh) &&
|
||||
rtnh->rtnh_len >= sizeof(*rtnh) &&
|
||||
rtnh->rtnh_len <= remaining;
|
||||
}
|
||||
|
||||
static inline struct rtnexthop *rtnh_next(const struct rtnexthop *rtnh,
|
||||
int *remaining)
|
||||
{
|
||||
int totlen = NLA_ALIGN(rtnh->rtnh_len);
|
||||
|
||||
*remaining -= totlen;
|
||||
return (struct rtnexthop *) ((char *) rtnh + totlen);
|
||||
}
|
||||
|
||||
static inline struct nlattr *rtnh_attrs(const struct rtnexthop *rtnh)
|
||||
{
|
||||
return (struct nlattr *) ((char *) rtnh + NLA_ALIGN(sizeof(*rtnh)));
|
||||
}
|
||||
|
||||
static inline int rtnh_attrlen(const struct rtnexthop *rtnh)
|
||||
{
|
||||
return rtnh->rtnh_len - NLA_ALIGN(sizeof(*rtnh));
|
||||
}
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user