summaryrefslogtreecommitdiffstats
path: root/tools/testing/selftests/bpf/progs/lwt_misc.c
blob: b392317088d2d0c0b548c48171244ea1c0a663fb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// SPDX-License-Identifier: GPL-2.0

#include "vmlinux.h"
#include <bpf/bpf_helpers.h>
#include "bpf_misc.h"

SEC("lwt_xmit")
__success __retval(0)
int test_missing_dst(struct __sk_buff *skb)
{
	struct iphdr iph;

	__builtin_memset(&iph, 0, sizeof(struct iphdr));
	iph.ihl = 5;
	iph.version = 4;

	bpf_lwt_push_encap(skb, BPF_LWT_ENCAP_IP, &iph, sizeof(struct iphdr));

	return 0;
}

char _license[] SEC("license") = "GPL";