blob: 1b624f82a361329fd864a132e7c129c465e89b7c [file] [log] [blame]
// SPDX-License-Identifier: GPL-2.0
// Copyright (c) 2022 Microsoft Corporation
//
// Based on tcptracer(8) from BCC by Kinvolk GmbH and
// tcpconnect(8) by Anton Protopopov
#ifndef __TCPTRACER_H
#define __TCPTRACER_H
/* The maximum number of items in maps */
#define MAX_ENTRIES 8192
#define TASK_COMM_LEN 16
enum event_type {
TCP_EVENT_TYPE_CONNECT,
TCP_EVENT_TYPE_ACCEPT,
TCP_EVENT_TYPE_CLOSE,
};
struct event {
union {
__u32 saddr_v4;
unsigned __int128 saddr_v6;
};
union {
__u32 daddr_v4;
unsigned __int128 daddr_v6;
};
char task[TASK_COMM_LEN];
__u64 ts_us;
__u32 af; /* AF_INET or AF_INET6 */
__u32 pid;
__u32 uid;
__u32 netns;
__u16 dport;
__u16 sport;
__u8 type;
};
#endif /* __TCPTRACER_H */