summaryrefslogtreecommitdiff
path: root/include/net/ioam6.h
diff options
context:
space:
mode:
authorJustin Iurman <justin.iurman@uliege.be>2021-10-03 21:45:36 +0300
committerDavid S. Miller <davem@davemloft.net>2021-10-04 14:53:35 +0300
commit52d03786459a7cf4d63a68146409f7a2088aefb2 (patch)
tree56b454364afa8c04e153d0b49073d6cc64575697 /include/net/ioam6.h
parent9ac936276f8628ef5765bcc2ca7138a803de8aff (diff)
downloadlinux-52d03786459a7cf4d63a68146409f7a2088aefb2.tar.xz
ipv6: ioam: Distinguish input and output for hop-limit
This patch anticipates the support for the IOAM insertion inside in-transit packets, by making a difference between input and output in order to determine the right value for its hop-limit (inherited from the IPv6 hop-limit). Input case: happens before ip6_forward, the IPv6 hop-limit is not decremented yet -> decrement the IOAM hop-limit to reflect the new hop inside the trace. Output case: happens after ip6_forward, the IPv6 hop-limit has already been decremented -> keep the same value for the IOAM hop-limit. Signed-off-by: Justin Iurman <justin.iurman@uliege.be> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/ioam6.h')
-rw-r--r--include/net/ioam6.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/net/ioam6.h b/include/net/ioam6.h
index 3c2993bc48c8..3f45ba37a2c6 100644
--- a/include/net/ioam6.h
+++ b/include/net/ioam6.h
@@ -56,7 +56,8 @@ static inline struct ioam6_pernet_data *ioam6_pernet(struct net *net)
struct ioam6_namespace *ioam6_namespace(struct net *net, __be16 id);
void ioam6_fill_trace_data(struct sk_buff *skb,
struct ioam6_namespace *ns,
- struct ioam6_trace_hdr *trace);
+ struct ioam6_trace_hdr *trace,
+ bool is_input);
int ioam6_init(void);
void ioam6_exit(void);