191586Smarkm// SPDX-License-Identifier: GPL-2.0 291586Smarkm// Copyright (c) 2020 Cloudflare 391586Smarkm#include "vmlinux.h" 491586Smarkm#include <bpf/bpf_helpers.h> 591586Smarkm 691586Smarkmstruct { 791586Smarkm __uint(type, BPF_MAP_TYPE_SOCKMAP); 891586Smarkm __uint(max_entries, 1); 991586Smarkm __type(key, __u32); 1091586Smarkm __type(value, __u64); 1191586Smarkm} map SEC(".maps"); 1291586Smarkm 1391586SmarkmSEC("sockops") 1491586Smarkmint bpf_sockmap(struct bpf_sock_ops *skops) 1591586Smarkm{ 1691586Smarkm __u32 key = 0; 1791586Smarkm 1891586Smarkm if (skops->sk) 1991586Smarkm bpf_map_update_elem(&map, &key, skops->sk, 0); 2091586Smarkm return 0; 2191586Smarkm} 2291586Smarkm 2391586Smarkmchar _license[] SEC("license") = "GPL"; 2491586Smarkm