// SPDX-License-Identifier: GPL-2.0 // Copyright (c) 2020 Anton Protopopov #ifndef __TCPCONNECT_H #define __TCPCONNECT_H /* The maximum number of items in maps */ #define MAX_ENTRIES 8192 /* The maximum number of ports to filter */ #define MAX_PORTS 64 #define TASK_COMM_LEN 16 struct ipv4_flow_key { __u32 saddr; __u32 daddr; __u16 dport; }; struct ipv6_flow_key { __u8 saddr[16]; __u8 daddr[16]; __u16 dport; }; struct event { union { __u32 saddr_v4; __u8 saddr_v6[16]; }; union { __u32 daddr_v4; __u8 daddr_v6[16]; }; char task[TASK_COMM_LEN]; __u64 ts_us; __u32 af; // AF_INET or AF_INET6 __u32 pid; __u32 uid; __u16 dport; }; #endif /* __TCPCONNECT_H */