parsers

package
v0.0.0-...-ef8be33 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 10, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	HugetlbFlagEncodeShift = 26
	MapHugeSizeMask        = ((1 << 6) - 1) << HugetlbFlagEncodeShift
)
View Source
const FsNotifyMaskShiftMax = 30
View Source
const GupFlagShiftMax = 21
View Source
const IoUringRequestFlagShiftMax = 14
View Source
const IoUringSetupFlagShiftMax = 15
View Source
const LegacyGupFlagShiftMax = 22
View Source
const VmFlagShiftMax = 37

Variables

View Source
var (
	SO_DEBUG                         = SocketOptionArgument{unix.SO_DEBUG, "SO_DEBUG"}
	SO_REUSEADDR                     = SocketOptionArgument{unix.SO_REUSEADDR, "SO_REUSEADDR"}
	SO_TYPE                          = SocketOptionArgument{unix.SO_TYPE, "SO_TYPE"}
	SO_ERROR                         = SocketOptionArgument{unix.SO_ERROR, "SO_ERROR"}
	SO_DONTROUTE                     = SocketOptionArgument{unix.SO_DONTROUTE, "SO_DONTROUTE"}
	SO_BROADCAST                     = SocketOptionArgument{unix.SO_BROADCAST, "SO_BROADCAST"}
	SO_SNDBUF                        = SocketOptionArgument{unix.SO_SNDBUF, "SO_SNDBUF"}
	SO_RCVBUF                        = SocketOptionArgument{unix.SO_RCVBUF, "SO_RCVBUF"}
	SO_SNDBUFFORCE                   = SocketOptionArgument{unix.SO_SNDBUFFORCE, "SO_SNDBUFFORCE"}
	SO_RCVBUFFORCE                   = SocketOptionArgument{unix.SO_RCVBUFFORCE, "SO_RCVBUFFORCE"}
	SO_KEEPALIVE                     = SocketOptionArgument{unix.SO_KEEPALIVE, "SO_KEEPALIVE"}
	SO_OOBINLINE                     = SocketOptionArgument{unix.SO_OOBINLINE, "SO_OOBINLINE"}
	SO_NO_CHECK                      = SocketOptionArgument{unix.SO_NO_CHECK, "SO_NO_CHECK"}
	SO_PRIORITY                      = SocketOptionArgument{unix.SO_PRIORITY, "SO_PRIORITY"}
	SO_LINGER                        = SocketOptionArgument{unix.SO_LINGER, "SO_LINGER"}
	SO_BSDCOMPAT                     = SocketOptionArgument{unix.SO_BSDCOMPAT, "SO_BSDCOMPAT"}
	SO_REUSEPORT                     = SocketOptionArgument{unix.SO_REUSEPORT, "SO_REUSEPORT"}
	SO_PASSCRED                      = SocketOptionArgument{unix.SO_PASSCRED, "SO_PASSCRED"}
	SO_PEERCRED                      = SocketOptionArgument{unix.SO_PEERCRED, "SO_PEERCRED"}
	SO_RCVLOWAT                      = SocketOptionArgument{unix.SO_RCVLOWAT, "SO_RCVLOWAT"}
	SO_SNDLOWAT                      = SocketOptionArgument{unix.SO_SNDLOWAT, "SO_SNDLOWAT"}
	SO_SECURITY_AUTHENTICATION       = SocketOptionArgument{unix.SO_SECURITY_AUTHENTICATION, "SO_SECURITY_AUTHENTICATION"}
	SO_SECURITY_ENCRYPTION_TRANSPORT = SocketOptionArgument{unix.SO_SECURITY_ENCRYPTION_TRANSPORT, "SO_SECURITY_ENCRYPTION_TRANSPORT"}
	SO_SECURITY_ENCRYPTION_NETWORK   = SocketOptionArgument{unix.SO_SECURITY_ENCRYPTION_NETWORK, "SO_SECURITY_ENCRYPTION_NETWORK"}
	SO_BINDTODEVICE                  = SocketOptionArgument{unix.SO_BINDTODEVICE, "SO_BINDTODEVICE"}
	SO_ATTACH_FILTER                 = SocketOptionArgument{unix.SO_ATTACH_FILTER, "SO_ATTACH_FILTER"}
	SO_GET_FILTER                    = SocketOptionArgument{unix.SO_GET_FILTER, "SO_GET_FILTER"}
	SO_DETACH_FILTER                 = SocketOptionArgument{unix.SO_DETACH_FILTER, "SO_DETACH_FILTER"}
	SO_PEERNAME                      = SocketOptionArgument{unix.SO_PEERNAME, "SO_PEERNAME"}
	SO_ACCEPTCONN                    = SocketOptionArgument{unix.SO_ACCEPTCONN, "SO_ACCEPTCONN"}
	SO_PEERSEC                       = SocketOptionArgument{unix.SO_PEERSEC, "SO_PEERSEC"}
	SO_PASSSEC                       = SocketOptionArgument{unix.SO_PASSSEC, "SO_PASSSEC"}
	SO_MARK                          = SocketOptionArgument{unix.SO_MARK, "SO_MARK"}
	SO_PROTOCOL                      = SocketOptionArgument{unix.SO_PROTOCOL, "SO_PROTOCOL"}
	SO_DOMAIN                        = SocketOptionArgument{unix.SO_DOMAIN, "SO_DOMAIN"}
	SO_RXQ_OVFL                      = SocketOptionArgument{unix.SO_RXQ_OVFL, "SO_RXQ_OVFL"}
	SO_WIFI_STATUS                   = SocketOptionArgument{unix.SO_WIFI_STATUS, "SO_WIFI_STATUS"}
	SO_PEEK_OFF                      = SocketOptionArgument{unix.SO_PEEK_OFF, "SO_PEEK_OFF"}
	SO_NOFCS                         = SocketOptionArgument{unix.SO_NOFCS, "SO_NOFCS"}
	SO_LOCK_FILTER                   = SocketOptionArgument{unix.SO_LOCK_FILTER, "SO_LOCK_FILTER"}
	SO_SELECT_ERR_QUEUE              = SocketOptionArgument{unix.SO_SELECT_ERR_QUEUE, "SO_SELECT_ERR_QUEUE"}
	SO_BUSY_POLL                     = SocketOptionArgument{unix.SO_BUSY_POLL, "SO_BUSY_POLL"}
	SO_MAX_PACING_RATE               = SocketOptionArgument{unix.SO_MAX_PACING_RATE, "SO_MAX_PACING_RATE"}
	SO_BPF_EXTENSIONS                = SocketOptionArgument{unix.SO_BPF_EXTENSIONS, "SO_BPF_EXTENSIONS"}
	SO_INCOMING_CPU                  = SocketOptionArgument{unix.SO_INCOMING_CPU, "SO_INCOMING_CPU"}
	SO_ATTACH_BPF                    = SocketOptionArgument{unix.SO_ATTACH_BPF, "SO_ATTACH_BPF"}
	SO_ATTACH_REUSEPORT_CBPF         = SocketOptionArgument{unix.SO_ATTACH_REUSEPORT_CBPF, "SO_ATTACH_REUSEPORT_CBPF"}
	SO_ATTACH_REUSEPORT_EBPF         = SocketOptionArgument{unix.SO_ATTACH_REUSEPORT_EBPF, "SO_ATTACH_REUSEPORT_EBPF"}
	SO_CNX_ADVICE                    = SocketOptionArgument{unix.SO_CNX_ADVICE, "SO_CNX_ADVICE"}
	SCM_TIMESTAMPING_OPT_STATS       = SocketOptionArgument{unix.SCM_TIMESTAMPING_OPT_STATS, "SCM_TIMESTAMPING_OPT_STATS"}
	SO_MEMINFO                       = SocketOptionArgument{unix.SO_MEMINFO, "SO_MEMINFO"}
	SO_INCOMING_NAPI_ID              = SocketOptionArgument{unix.SO_INCOMING_NAPI_ID, "SO_INCOMING_NAPI_ID"}
	SO_COOKIE                        = SocketOptionArgument{unix.SO_COOKIE, "SO_COOKIE"}
	SCM_TIMESTAMPING_PKTINFO         = SocketOptionArgument{unix.SCM_TIMESTAMPING_PKTINFO, "SCM_TIMESTAMPING_PKTINFO"}
	SO_PEERGROUPS                    = SocketOptionArgument{unix.SO_PEERGROUPS, "SO_PEERGROUPS"}
	SO_ZEROCOPY                      = SocketOptionArgument{unix.SO_ZEROCOPY, "SO_ZEROCOPY"}
	SO_TXTIME                        = SocketOptionArgument{unix.SO_TXTIME, "SO_TXTIME"}
	SO_BINDTOIFINDEX                 = SocketOptionArgument{unix.SO_BINDTOIFINDEX, "SO_BINDTOIFINDEX"}
	SO_TIMESTAMP_NEW                 = SocketOptionArgument{unix.SO_TIMESTAMP_NEW, "SO_TIMESTAMP_NEW"}
	SO_TIMESTAMPNS_NEW               = SocketOptionArgument{unix.SO_TIMESTAMPNS_NEW, "SO_TIMESTAMPNS_NEW"}
	SO_TIMESTAMPING_NEW              = SocketOptionArgument{unix.SO_TIMESTAMPING_NEW, "SO_TIMESTAMPING_NEW"}
	SO_RCVTIMEO_NEW                  = SocketOptionArgument{unix.SO_RCVTIMEO_NEW, "SO_RCVTIMEO_NEW"}
	SO_SNDTIMEO_NEW                  = SocketOptionArgument{unix.SO_SNDTIMEO_NEW, "SO_SNDTIMEO_NEW"}
	SO_DETACH_REUSEPORT_BPF          = SocketOptionArgument{unix.SO_DETACH_REUSEPORT_BPF, "SO_DETACH_REUSEPORT_BPF"}
	SO_PREFER_BUSY_POLL              = SocketOptionArgument{unix.SO_PREFER_BUSY_POLL, "SO_PREFER_BUSY_POLL"}
	SO_BUSY_POLL_BUDGET              = SocketOptionArgument{unix.SO_BUSY_POLL_BUDGET, "SO_BUSY_POLL_BUDGET"}
	SO_TIMESTAMP                     = SocketOptionArgument{unix.SO_TIMESTAMP, "SO_TIMESTAMP"}
	SO_TIMESTAMPNS                   = SocketOptionArgument{unix.SO_TIMESTAMPNS, "SO_TIMESTAMPNS"}
	SO_TIMESTAMPING                  = SocketOptionArgument{unix.SO_TIMESTAMPING, "SO_TIMESTAMPING"}
	SO_RCVTIMEO                      = SocketOptionArgument{unix.SO_RCVTIMEO, "SO_RCVTIMEO"}
	SO_SNDTIMEO                      = SocketOptionArgument{unix.SO_SNDTIMEO, "SO_SNDTIMEO"}

	// The following are newer, so aren't included in the unix package
	SO_NETNS_COOKIE SocketOptionArgument = SocketOptionArgument{71, "SO_NETNS_COOKIE"}
	SO_BUF_LOCK     SocketOptionArgument = SocketOptionArgument{72, "SO_BUF_LOCK"}
	SO_RESERVE_MEM  SocketOptionArgument = SocketOptionArgument{73, "SO_RESERVE_MEM"}
	SO_TXREHASH     SocketOptionArgument = SocketOptionArgument{74, "SO_TXREHASH"}
)
View Source
var (
	IORING_SETUP_IOPOLL             = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_SQPOLL             = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_SQ_AFF             = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_CQSIZE             = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_CLAMP              = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_ATTACH_WQ          = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_R_DISABLED         = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_SUBMIT_ALL         = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_COOP_TASKRUN       = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_TASKRUN_FLAG       = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_SQE128             = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_CQE32              = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_SINGLE_ISSUER      = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_DEFER_TASKRUN      = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_NO_MMAP            = IoUringSetupFlag{/* contains filtered or unexported fields */}
	IORING_SETUP_REGISTERED_FD_ONLY = IoUringSetupFlag{/* contains filtered or unexported fields */}
)

These values are copied from uapi/linux/io_uring.h

View Source
var (
	IORING_OP_NOP             = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_READV           = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_WRITEV          = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_FSYNC           = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_READ_FIXED      = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_WRITE_FIXED     = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_POLL_ADD        = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_POLL_REMOVE     = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_SYNC_FILE_RANGE = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_SENDMSG         = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_RECVMSG         = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_TIMEOUT         = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_TIMEOUT_REMOVE  = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_ACCEPT          = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_ASYNC_CANCEL    = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_LINK_TIMEOUT    = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_CONNECT         = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_FALLOCATE       = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_OPENAT          = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_CLOSE           = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_FILES_UPDATE    = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_STATX           = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_READ            = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_WRITE           = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_FADVISE         = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_MADVISE         = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_SEND            = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_RECV            = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_OPENAT2         = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_EPOLL_CTL       = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_SPLICE          = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_PROVIDE_BUFFERS = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_REMOVE_BUFFERS  = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_TEE             = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_SHUTDOWN        = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_RENAMEAT        = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_UNLINKAT        = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_MKDIRAT         = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_SYMLINKAT       = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_LINKAT          = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_MSG_RING        = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_FSETXATTR       = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_SETXATTR        = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_FGETXATTR       = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_GETXATTR        = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_SOCKET          = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_URING_CMD       = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_SEND_ZC         = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_SENDMSG_ZC      = IoUringOp{/* contains filtered or unexported fields */}
	IORING_OP_LAST            = IoUringOp{/* contains filtered or unexported fields */}
)

These values are copied from uapi/linux/io_uring.h

View Source
var (
	REQ_F_FIXED_FILE      = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_IO_DRAIN        = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_LINK            = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_HARDLINK        = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_FORCE_ASYNC     = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_BUFFER_SELECT   = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_CQE_SKIP        = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_FAIL            = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_INFLIGHT        = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_CUR_POS         = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_NOWAIT          = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_LINK_TIMEOUT    = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_NEED_CLEANUP    = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_POLLED          = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_BUFFER_SELECTED = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_BUFFER_RING     = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_REISSUE         = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_SUPPORT_NOWAIT  = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_ISREG           = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_CREDS           = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_REFCOUNT        = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_ARM_LTIMEOUT    = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_ASYNC_DATA      = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_SKIP_LINK_CQES  = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_SINGLE_POLL     = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_DOUBLE_POLL     = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_PARTIAL_IO      = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_APOLL_MULTISHOT = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_CQE32_INIT      = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_CLEAR_POLLIN    = IoUringRequestFlag{/* contains filtered or unexported fields */}
	REQ_F_HASH_LOCKED     = IoUringRequestFlag{/* contains filtered or unexported fields */}
)

These values are copied from include/linux/io_uring_types.h

View Source
var (
	FOLL_WRITE            = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_GET              = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_DUMP             = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_FORCE            = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_NOWAIT           = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_NOFAULT          = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_HWPOISON         = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_ANON             = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_LONGTERM         = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_SPLIT_PMD        = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_PCI_P2PDMA       = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_INTERRUPTIBLE    = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_HONOR_NUMA_FAULT = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_TOUCH            = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_TRIED            = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_REMOTE           = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_PIN              = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_FAST_ONLY        = GUPFlag{/* contains filtered or unexported fields */}
	FOLL_UNLOCKABLE       = GUPFlag{/* contains filtered or unexported fields */}
)

These values are copied from include/linux/mm_types.h and include/lunux/internal.h

View Source
var (
	LEGACY_FOLL_WRITE     = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_TOUCH     = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_GET       = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_DUMP      = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_FORCE     = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_NOWAIT    = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_POPULATE  = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_SPLIT     = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_HWPOISON  = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_NUMA      = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_MIGRATION = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_TRIED     = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_MLOCK     = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_REMOTE    = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_COW       = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_ANON      = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_LONGTERM  = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_SPLIT_PMD = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_PIN       = LegacyGUPFlag{/* contains filtered or unexported fields */}
	LEGACY_FOLL_FAST_ONLY = LegacyGUPFlag{/* contains filtered or unexported fields */}
)

These values are copied from include/linux/mm.h

View Source
var (
	VM_READ         = VmFlag{/* contains filtered or unexported fields */}
	VM_WRITE        = VmFlag{/* contains filtered or unexported fields */}
	VM_EXEC         = VmFlag{/* contains filtered or unexported fields */}
	VM_SHARED       = VmFlag{/* contains filtered or unexported fields */}
	VM_MAYREAD      = VmFlag{/* contains filtered or unexported fields */}
	VM_MAYWRITE     = VmFlag{/* contains filtered or unexported fields */}
	VM_MAYEXEC      = VmFlag{/* contains filtered or unexported fields */}
	VM_MAYSHARE     = VmFlag{/* contains filtered or unexported fields */}
	VM_GROWSDOWN    = VmFlag{/* contains filtered or unexported fields */}
	VM_UFFD_MISSING = VmFlag{/* contains filtered or unexported fields */}
	VM_PFNMAP       = VmFlag{/* contains filtered or unexported fields */}
	VM_UFFD_WP      = VmFlag{/* contains filtered or unexported fields */}
	VM_LOCKED       = VmFlag{/* contains filtered or unexported fields */}
	VM_IO           = VmFlag{/* contains filtered or unexported fields */}
	VM_SEQ_READ     = VmFlag{/* contains filtered or unexported fields */}
	VM_RAND_READ    = VmFlag{/* contains filtered or unexported fields */}
	VM_DONTCOPY     = VmFlag{/* contains filtered or unexported fields */}
	VM_DONTEXPAND   = VmFlag{/* contains filtered or unexported fields */}
	VM_LOCKONFAULT  = VmFlag{/* contains filtered or unexported fields */}
	VM_ACCOUNT      = VmFlag{/* contains filtered or unexported fields */}
	VM_NORESERVE    = VmFlag{/* contains filtered or unexported fields */}
	VM_HUGETLB      = VmFlag{/* contains filtered or unexported fields */}
	VM_SYNC         = VmFlag{/* contains filtered or unexported fields */}
	VM_PAT          = VmFlag{/* contains filtered or unexported fields */}
	VM_WIPEONFORK   = VmFlag{/* contains filtered or unexported fields */}
	VM_DONTDUMP     = VmFlag{/* contains filtered or unexported fields */}
	VM_SOFTDIRTY    = VmFlag{/* contains filtered or unexported fields */}
	VM_MIXEDMAP     = VmFlag{/* contains filtered or unexported fields */}
	VM_HUGEPAGE     = VmFlag{/* contains filtered or unexported fields */}
	VM_NOHUGEPAGE   = VmFlag{/* contains filtered or unexported fields */}
	VM_MERGEABLE    = VmFlag{/* contains filtered or unexported fields */}
	VM_PKEY_BIT0    = VmFlag{/* contains filtered or unexported fields */}
	VM_PKEY_BIT1    = VmFlag{/* contains filtered or unexported fields */}
	VM_PKEY_BIT3    = VmFlag{/* contains filtered or unexported fields */}
	VM_PKEY_BIT4    = VmFlag{/* contains filtered or unexported fields */}
	VM_UFFD_MINOR   = VmFlag{/* contains filtered or unexported fields */}
)

These values are copied from include/linux/mm.h

View Source
var (
	FS_ACCESS         = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_MODIFY         = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_ATTRIB         = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_CLOSE_WRITE    = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_CLOSE_NOWRITE  = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_OPEN           = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_MOVED_FROM     = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_MOVED_TO       = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_CREATE         = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_DELETE         = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_DELETE_SELF    = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_MOVE_SELF      = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_OPEN_EXEC      = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_UNMOUNT        = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_Q_OVERFLOW     = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_ERROR          = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_OPEN_PERM      = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_ACCESS_PERM    = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_OPEN_EXEC_PERM = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_EVENT_ON_CHILD = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_RENAME         = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_DN_MULTISHOT   = FsNotifyMask{/* contains filtered or unexported fields */}
	FS_ISDIR          = FsNotifyMask{/* contains filtered or unexported fields */}
)

These values are copied from include/linux/fsnotify_backend.h

View Source
var (
	FSNOTIFY_OBJ_TYPE_INODE    = FsNotifyObjType{/* contains filtered or unexported fields */}
	FSNOTIFY_OBJ_TYPE_VFSMOUNT = FsNotifyObjType{/* contains filtered or unexported fields */}
	FSNOTIFY_OBJ_TYPE_SB       = FsNotifyObjType{/* contains filtered or unexported fields */}
	FSNOTIFY_OBJ_TYPE_DETACHED = FsNotifyObjType{/* contains filtered or unexported fields */}
)

These values are copied from include/linux/fsnotify_backend.h

View Source
var (
	Map32bit = MmapFlagArgument{/* contains filtered or unexported fields */}
)

Functions

func Parse16BytesSliceIP

func Parse16BytesSliceIP(in []byte) string

Parse16BytesSliceIP parses the IP address encoded as 16 bytes long PrintBytesSliceIP. It would be more correct to accept a [16]byte instead of variable lenth slice, but that would case unnecessary memory copying and type conversions.

func ParseUint32IP

func ParseUint32IP(in uint32) string

ParseUint32IP parses the IP address encoded as a uint32

Types

type AccessModeArgument

type AccessModeArgument struct {
	// contains filtered or unexported fields
}
var (
	F_OK AccessModeArgument = AccessModeArgument{/* contains filtered or unexported fields */}
	X_OK AccessModeArgument = AccessModeArgument{/* contains filtered or unexported fields */}
	W_OK AccessModeArgument = AccessModeArgument{/* contains filtered or unexported fields */}
	R_OK AccessModeArgument = AccessModeArgument{/* contains filtered or unexported fields */}
)

func ParseAccessMode

func ParseAccessMode(rawValue uint64) (AccessModeArgument, error)

ParseAccessMode parses the mode from the `access` system call http://man7.org/linux/man-pages/man2/access.2.html

func (AccessModeArgument) String

func (a AccessModeArgument) String() string

func (AccessModeArgument) Value

func (a AccessModeArgument) Value() uint64

type BPFCommandArgument

type BPFCommandArgument uint64
const (
	BPF_MAP_CREATE BPFCommandArgument = iota
	BPF_MAP_LOOKUP_ELEM
	BPF_MAP_UPDATE_ELEM
	BPF_MAP_DELETE_ELEM
	BPF_MAP_GET_NEXT_KEY
	BPF_PROG_LOAD
	BPF_OBJ_PIN
	BPF_OBJ_GET
	BPF_PROG_ATTACH
	BPF_PROG_DETACH
	BPF_PROG_TEST_RUN
	BPF_PROG_GET_NEXT_ID
	BPF_MAP_GET_NEXT_ID
	BPF_PROG_GET_FD_BY_ID
	BPF_MAP_GET_FD_BY_ID
	BPF_OBJ_GET_INFO_BY_FD
	BPF_PROG_QUERY
	BPF_RAW_TRACEPOINT_OPEN
	BPF_BTF_LOAD
	BPF_BTF_GET_FD_BY_ID
	BPF_TASK_FD_QUERY
	BPF_MAP_LOOKUP_AND_DELETE_ELEM
	BPF_MAP_FREEZE
	BPF_BTF_GET_NEXT_ID
	BPF_MAP_LOOKUP_BATCH
	BPF_MAP_LOOKUP_AND_DELETE_BATCH
	BPF_MAP_UPDATE_BATCH
	BPF_MAP_DELETE_BATCH
	BPF_LINK_CREATE
	BPF_LINK_UPDATE
	BPF_LINK_GET_FD_BY_ID
	BPF_LINK_GET_NEXT_ID
	BPF_ENABLE_STATS
	BPF_ITER_CREATE
	BPF_LINK_DETACH
)

func ParseBPFCmd

func ParseBPFCmd(cmd uint64) (BPFCommandArgument, error)

ParseBPFCmd parses the raw value of the `cmd` argument of the `bpf` syscall https://man7.org/linux/man-pages/man2/bpf.2.html

func (BPFCommandArgument) String

func (b BPFCommandArgument) String() string

String parses the `cmd` argument of the `bpf` syscall https://man7.org/linux/man-pages/man2/bpf.2.html

func (BPFCommandArgument) Value

func (b BPFCommandArgument) Value() uint64

type BPFFunc

type BPFFunc uint32

BPFFunc is an enumeration of BPF functions (helpers) defined in: https://elixir.bootlin.com/linux/latest/source/include/uapi/linux/bpf.h

const (
	BPFFuncUnspec BPFFunc = iota
	BPFFuncMapLookupElem
	BPFFuncMapUpdateElem
	BPFFuncMapDeleteElem
	BPFFuncProbeRead
	BPFFuncKtimeGetNs
	BPFFuncTracePrintk
	BPFFuncGetPrandomU32
	BPFFuncGetSmpProcessorId
	BPFFuncSkbStoreBytes
	BPFFuncL3CsumReplace
	BPFFuncL4CsumReplace
	BPFFuncTailCall
	BPFFuncCloneRedirect
	BPFFuncGetCurrentPidTgid
	BPFFuncGetCurrentUidGid
	BPFFuncGetCurrentComm
	BPFFuncGetCgroupClassid
	BPFFuncSkbVlanPush
	BPFFuncSkbVlanPop
	BPFFuncSkbGetTunnelKey
	BPFFuncSkbSetTunnelKey
	BPFFuncPerfEventRead
	BPFFuncRedirect
	BPFFuncGetRouteRealm
	BPFFuncPerfEventOutput
	BPFFuncSkbLoadBytes
	BPFFuncGetStackid
	BPFFuncCsumDiff
	BPFFuncSkbGetTunnelOpt
	BPFFuncSkbSetTunnelOpt
	BPFFuncSkbChangeProto
	BPFFuncSkbChangeType
	BPFFuncSkbUnderCgroup
	BPFFuncGetHashRecalc
	BPFFuncGetCurrentTask
	BPFFuncProbeWriteUser
	BPFFuncCurrentTaskUnderCgroup
	BPFFuncSkbChangeTail
	BPFFuncSkbPullData
	BPFFuncCsumUpdate
	BPFFuncSetHashInvalid
	BPFFuncGetNumaNodeId
	BPFFuncSkbChangeHead
	BPFFuncXdpAdjustHead
	BPFFuncProbeReadStr
	BPFFuncGetSocketCookie
	BPFFuncGetSocketUid
	BPFFuncSetHash
	BPFFuncSetsockopt
	BPFFuncSkbAdjustRoom
	BPFFuncRedirectMap
	BPFFuncSkRedirectMap
	BPFFuncSockMapUpdate
	BPFFuncXdpAdjustMeta
	BPFFuncPerfEventReadValue
	BPFFuncPerfProgReadValue
	BPFFuncGetsockopt
	BPFFuncOverrideReturn
	BPFFuncSockOpsCbFlagsSet
	BPFFuncMsgRedirectMap
	BPFFuncMsgApplyBytes
	BPFFuncMsgCorkBytes
	BPFFuncMsgPullData
	BPFFuncBind
	BPFFuncXdpAdjustTail
	BPFFuncSkbGetXfrmState
	BPFFuncGetStack
	BPFFuncSkbLoadBytesRelative
	BPFFuncFibLookup
	BPFFuncSockHashUpdate
	BPFFuncMsgRedirectHash
	BPFFuncSkRedirectHash
	BPFFuncLwtPushEncap
	BPFFuncLwtSeg6StoreBytes
	BPFFuncLwtSeg6AdjustSrh
	BPFFuncLwtSeg6Action
	BPFFuncRcRepeat
	BPFFuncRcKeydown
	BPFFuncSkbCgroupId
	BPFFuncGetCurrentCgroupId
	BPFFuncGetLocalStorage
	BPFFuncSkSelectReuseport
	BPFFuncSkbAncestorCgroupId
	BPFFuncSkLookupTcp
	BPFFuncSkLookupUdp
	BPFFuncSkRelease
	BPFFuncMapPushElem
	BPFFuncMapPopElem
	BPFFuncMapPeekElem
	BPFFuncMsgPushData
	BPFFuncMsgPopData
	BPFFuncRcPointerRel
	BPFFuncSpinLock
	BPFFuncSpinUnlock
	BPFFuncSkFullsock
	BPFFuncTcpSock
	BPFFuncSkbEcnSetCe
	BPFFuncGetListenerSock
	BPFFuncSkcLookupTcp
	BPFFuncTcpCheckSyncookie
	BPFFuncSysctlGetName
	BPFFuncSysctlGetCurrentValue
	BPFFuncSysctlGetNewValue
	BPFFuncSysctlSetNewValue
	BPFFuncStrtol
	BPFFuncStrtoul
	BPFFuncSkStorageGet
	BPFFuncSkStorageDelete
	BPFFuncSendSignal
	BPFFuncTcpGenSyncookie
	BPFFuncSkbOutput
	BPFFuncProbeReadUser
	BPFFuncProbeReadKernel
	BPFFuncProbeReadUserStr
	BPFFuncProbeReadKernelStr
	BPFFuncTcpSendAck
	BPFFuncSendSignalThread
	BPFFuncJiffies64
	BPFFuncReadBranchRecords
	BPFFuncGetNsCurrentPidTgid
	BPFFuncXdpOutput
	BPFFuncGetNetnsCookie
	BPFFuncGetCurrentAncestorCgroupId
	BPFFuncSkAssign
	BPFFuncKtimeGetBootNs
	BPFFuncSeqPrintf
	BPFFuncSeqWrite
	BPFFuncSkCgroupId
	BPFFuncSkAncestorCgroupId
	BPFFuncRingbufOutput
	BPFFuncRingbufReserve
	BPFFuncRingbufSubmit
	BPFFuncRingbufDiscard
	BPFFuncRingbufQuery
	BPFFuncCsumLevel
	BPFFuncSkcToTcp6Sock
	BPFFuncSkcToTcpSock
	BPFFuncSkcToTcpTimewaitSock
	BPFFuncSkcToTcpRequestSock
	BPFFuncSkcToUdp6Sock
	BPFFuncGetTaskStack
	BPFFuncLoadHdrOpt
	BPFFuncStoreHdrOpt
	BPFFuncReserveHdrOpt
	BPFFuncInodeStorageGet
	BPFFuncInodeStorageDelete
	BPFFuncDPath
	BPFFuncCopyFromUser
	BPFFuncSnprintfBtf
	BPFFuncSeqPrintfBtf
	BPFFuncSkbCgroupClassid
	BPFFuncRedirectNeigh
	BPFFuncPerCpuPtr
	BPFFuncThisCpuPtr
	BPFFuncRedirectPeer
	BPFFuncTaskStorageGet
	BPFFuncTaskStorageDelete
	BPFFuncGetCurrentTaskBtf
	BPFFuncBprmOptsSet
	BPFFuncKtimeGetCoarseNs
	BPFFuncImaInodeHash
	BPFFuncSockFromFile
	BPFFuncCheckMtu
	BPFFuncForEachMapElem
	BPFFuncSnprintf
	BPFFuncSysBpf
	BPFFuncBtfFindByNameKind
	BPFFuncSysClose
	BPFFuncTimerInit
	BPFFuncTimerSetCallback
	BPFFuncTimerStart
	BPFFuncTimerCancel
	BPFFuncGetFuncIp
	BPFFuncGetAttachCookie
	BPFFuncTaskPtRegs
	BPFFuncGetBranchSnapshot
	BPFFuncTraceVprintk
	BPFFuncSkcToUnixSock
	BPFFuncKallsymsLookupName
	BPFFuncFindVma
	BPFFuncLoop
	BPFFuncStrncmp
	BPFFuncGetFuncArg
	BPFFuncGetFuncRet
	BPFFuncGetFuncArgCnt
	BPFFuncGetRetval
	BPFFuncSetRetval
	BPFFuncXdpGetBuffLen
	BPFFuncXdpLoadBytes
	BPFFuncXdpStoreBytes
	BPFFuncCopyFromUserTask
	BPFFuncSkbSetTstamp
	BPFFuncImaFileHash
	BPFFuncKptrXchg
	BPFFuncMapLookupPercpuElem
	BPFFuncSkcToMptcpSock
	BPFFuncDynptrFromMem
	BPFFuncRingbufReserveDynptr
	BPFFuncRingbufSubmitDynptr
	BPFFuncRingbufDiscardDynptr
	BPFFuncDynptrRead
	BPFFuncDynptrWrite
	BPFFuncDynptrData
	BPFFuncTcpRawGenSyncookieIpv4
	BPFFuncTcpRawGenSyncookieIpv6
	BPFFuncTcpRawCheckSyncookieIpv4
	BPFFuncTcpRawCheckSyncookieIpv6
	BPFFuncKtimeGetTaiNs
	BPFFuncUserRingbufDrain
	BPFFuncCgrpStorageGet
	BPFFuncCgrpStorageDelete
)

func ParseBPFFunc

func ParseBPFFunc(rawValue uint64) (BPFFunc, error)

func (BPFFunc) String

func (b BPFFunc) String() string

func (BPFFunc) Value

func (b BPFFunc) Value() uint64

type BPFProgType

type BPFProgType uint32

BPFProgType is an enumeration of BPF program types defined in: https://elixir.bootlin.com/linux/latest/source/include/uapi/linux/bpf.h

const (
	BPFProgTypeUnspec BPFProgType = iota
	BPFProgTypeSocketFilter
	BPFProgTypeKprobe
	BPFProgTypeSchedCls
	BPFProgTypeSchedAct
	BPFProgTypeTracepoint
	BPFProgTypeXdp
	BPFProgTypePerfEvent
	BPFProgTypeCgroupSkb
	BPFProgTypeCgroupSock
	BPFProgTypeLwtIn
	BPFProgTypeLwtOut
	BPFProgTypeLwtXmit
	BPFProgTypeSockOps
	BPFProgTypeSkSkb
	BPFProgTypeCgroupDevice
	BPFProgTypeSkMsg
	BPFProgTypeRawTracepoint
	BPFProgTypeCgroupSockAddr
	BPFProgTypeLwtSeg6Local
	BPFProgTypeLircMode2
	BPFProgTypeSkReuseport
	BPFProgTypeFlowDissector
	BPFProgTypeCgroupSysctl
	BPFProgTypeRawTracepointWritable
	BPFProgTypeCgroupSockopt
	BPFProgTypeTracing
	BPFProgTypeStructOps
	BPFProgTypeExt
	BPFProgTypeLsm
	BPFProgTypeSkLookup
	BPFProgTypeSyscall
)

func ParseBPFProgType

func ParseBPFProgType(rawValue uint64) (BPFProgType, error)

func (BPFProgType) String

func (b BPFProgType) String() string

func (BPFProgType) Value

func (b BPFProgType) Value() uint64

type CapabilityFlagArgument

type CapabilityFlagArgument uint64
const (
	CAP_CHOWN CapabilityFlagArgument = iota
	CAP_DAC_OVERRIDE
	CAP_DAC_READ_SEARCH
	CAP_FOWNER
	CAP_FSETID
	CAP_KILL
	CAP_SETGID
	CAP_SETUID
	CAP_SETPCAP
	CAP_LINUX_IMMUTABLE
	CAP_NET_BIND_SERVICE
	CAP_NET_BROADCAST
	CAP_NET_ADMIN
	CAP_NET_RAW
	CAP_IPC_LOCK
	CAP_IPC_OWNER
	CAP_SYS_MODULE
	CAP_SYS_RAWIO
	CAP_SYS_CHROOT
	CAP_SYS_PTRACE
	CAP_SYS_PACCT
	CAP_SYS_ADMIN
	CAP_SYS_BOOT
	CAP_SYS_NICE
	CAP_SYS_RESOURCE
	CAP_SYS_TIME
	CAP_SYS_TTY_CONFIG
	CAP_MKNOD
	CAP_LEASE
	CAP_AUDIT_WRITE
	CAP_AUDIT_CONTROL
	CAP_SETFCAP
	CAP_MAC_OVERRIDE
	CAP_MAC_ADMIN
	CAP_SYSLOG
	CAP_WAKE_ALARM
	CAP_BLOCK_SUSPEND
	CAP_AUDIT_READ
)

func ParseCapability

func ParseCapability(rawValue uint64) (CapabilityFlagArgument, error)

ParseCapability parses the `capability` bitmask argument of the `cap_capable` function

func (CapabilityFlagArgument) String

func (c CapabilityFlagArgument) String() string

func (CapabilityFlagArgument) Value

func (c CapabilityFlagArgument) Value() uint64

type CloneFlagArgument

type CloneFlagArgument struct {
	// contains filtered or unexported fields
}
var (
	// These values are copied from uapi/linux/sched.h
	CLONE_VM             CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_FS             CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_FILES          CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_SIGHAND        CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_PIDFD          CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_PTRACE         CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_VFORK          CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_PARENT         CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_THREAD         CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_NEWNS          CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_SYSVSEM        CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_SETTLS         CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_PARENT_SETTID  CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_CHILD_CLEARTID CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_DETACHED       CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_UNTRACED       CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_CHILD_SETTID   CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_NEWCGROUP      CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_NEWUTS         CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_NEWIPC         CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_NEWUSER        CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_NEWPID         CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_NEWNET         CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
	CLONE_IO             CloneFlagArgument = CloneFlagArgument{/* contains filtered or unexported fields */}
)

func ParseCloneFlags

func ParseCloneFlags(rawValue uint64) (CloneFlagArgument, error)

func (CloneFlagArgument) String

func (c CloneFlagArgument) String() string

func (CloneFlagArgument) Value

func (c CloneFlagArgument) Value() uint64

type ExecFlagArgument

type ExecFlagArgument struct {
	// contains filtered or unexported fields
}
var (
	AT_SYMLINK_NOFOLLOW   ExecFlagArgument = ExecFlagArgument{/* contains filtered or unexported fields */}
	AT_EACCESS            ExecFlagArgument = ExecFlagArgument{/* contains filtered or unexported fields */}
	AT_REMOVEDIR          ExecFlagArgument = ExecFlagArgument{/* contains filtered or unexported fields */}
	AT_SYMLINK_FOLLOW     ExecFlagArgument = ExecFlagArgument{/* contains filtered or unexported fields */}
	AT_NO_AUTOMOUNT       ExecFlagArgument = ExecFlagArgument{/* contains filtered or unexported fields */}
	AT_EMPTY_PATH         ExecFlagArgument = ExecFlagArgument{/* contains filtered or unexported fields */}
	AT_STATX_SYNC_TYPE    ExecFlagArgument = ExecFlagArgument{/* contains filtered or unexported fields */}
	AT_STATX_SYNC_AS_STAT ExecFlagArgument = ExecFlagArgument{/* contains filtered or unexported fields */}
	AT_STATX_FORCE_SYNC   ExecFlagArgument = ExecFlagArgument{/* contains filtered or unexported fields */}
	AT_STATX_DONT_SYNC    ExecFlagArgument = ExecFlagArgument{/* contains filtered or unexported fields */}
	AT_RECURSIVE          ExecFlagArgument = ExecFlagArgument{/* contains filtered or unexported fields */}
)

func ParseExecFlag

func ParseExecFlag(rawValue uint64) (ExecFlagArgument, error)

func (ExecFlagArgument) String

func (e ExecFlagArgument) String() string

func (ExecFlagArgument) Value

func (e ExecFlagArgument) Value() uint64

type FsNotifyMask

type FsNotifyMask struct {
	// contains filtered or unexported fields
}

FsNotifyMask represents the event mask used by the dnotify, inotify and fanotify APIs

func ParseFsNotifyMask

func ParseFsNotifyMask(rawValue uint64) FsNotifyMask

ParseFsNotifyMask parses the event mask used by the dnotify, inotify and fanotify APIs

func (FsNotifyMask) String

func (mask FsNotifyMask) String() string

func (FsNotifyMask) Value

func (mask FsNotifyMask) Value() uint64

type FsNotifyObjType

type FsNotifyObjType struct {
	// contains filtered or unexported fields
}

FsNotifyObjType represents the type of filesystem object being watched

func ParseFsNotifyObjType

func ParseFsNotifyObjType(rawValue uint64) (FsNotifyObjType, error)

ParseFsNotifyObjType parses the filesystem object type of an fsnotify watch

func (FsNotifyObjType) String

func (objType FsNotifyObjType) String() string

func (FsNotifyObjType) Value

func (objType FsNotifyObjType) Value() uint64

type GUPFlag

type GUPFlag struct {
	// contains filtered or unexported fields
}

GUPFlag represents GUP (Get User Pages) flags since version 6.3

func ParseGUPFlags

func ParseGUPFlags(rawValue uint64) GUPFlag

ParseGUPFlags parses the flags bitmask of gup (get user pages) operation for kernels since version 6.3

func (GUPFlag) String

func (gupf GUPFlag) String() string

func (GUPFlag) Value

func (gupf GUPFlag) Value() uint64

type InodeModeArgument

type InodeModeArgument struct {
	// contains filtered or unexported fields
}
var (
	S_IFSOCK InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IFLNK  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IFREG  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IFBLK  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IFDIR  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IFCHR  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IFIFO  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IRWXU  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IRUSR  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IWUSR  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IXUSR  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IRWXG  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IRGRP  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IWGRP  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IXGRP  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IRWXO  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IROTH  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IWOTH  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
	S_IXOTH  InodeModeArgument = InodeModeArgument{/* contains filtered or unexported fields */}
)

func ParseInodeMode

func ParseInodeMode(rawValue uint64) (InodeModeArgument, error)

func (InodeModeArgument) String

func (mode InodeModeArgument) String() string

func (InodeModeArgument) Value

func (mode InodeModeArgument) Value() uint64

type IoUringOp

type IoUringOp struct {
	// contains filtered or unexported fields
}

func ParseIoUringOp

func ParseIoUringOp(rawValue uint64) (IoUringOp, error)

ParseIoUringOp parses the opcode of io_uring operation

func (IoUringOp) String

func (iuo IoUringOp) String() string

func (IoUringOp) Value

func (iuo IoUringOp) Value() uint64

type IoUringRequestFlag

type IoUringRequestFlag struct {
	// contains filtered or unexported fields
}

func ParseIoUringRequestFlags

func ParseIoUringRequestFlags(rawValue uint64) IoUringRequestFlag

ParseIoUringRequestFlags parses the flags bitmask if io_uring request

func (IoUringRequestFlag) String

func (iurf IoUringRequestFlag) String() string

func (IoUringRequestFlag) Value

func (iurf IoUringRequestFlag) Value() uint64

type IoUringSetupFlag

type IoUringSetupFlag struct {
	// contains filtered or unexported fields
}

func ParseIoUringSetupFlags

func ParseIoUringSetupFlags(rawValue uint64) IoUringSetupFlag

ParseIoUringSetupFlags parses the `flags` bitmask argument of the `io_uring_setup` syscall

func (IoUringSetupFlag) String

func (iusf IoUringSetupFlag) String() string

func (IoUringSetupFlag) Value

func (iusf IoUringSetupFlag) Value() uint64

type LegacyGUPFlag

type LegacyGUPFlag struct {
	// contains filtered or unexported fields
}

LegacyGUPFlag represents GUP (Get User Pages) flags up to version 6.3

func ParseLegacyGUPFlags

func ParseLegacyGUPFlags(rawValue uint64) LegacyGUPFlag

ParseLegacyGUPFlags parses the flags bitmask of gup (get user pages) operation for kernels up to version 6.3

func (LegacyGUPFlag) String

func (lgupf LegacyGUPFlag) String() string

func (LegacyGUPFlag) Value

func (lgupf LegacyGUPFlag) Value() uint64

type MmapFlagArgument

type MmapFlagArgument struct {
	// contains filtered or unexported fields
}
var (
	MapShared         MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapPrivate        MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapSharedValidate MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapType           MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapFixed          MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapAnonymous      MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapPopulate       MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapNonblock       MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapStack          MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapHugetlb        MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapSync           MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapFixedNoreplace MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapGrowsdown      MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapDenywrite      MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapExecutable     MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapLocked         MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapNoreserve      MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapFile           MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapHuge2MB        MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapHuge1GB        MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
	MapSYNC           MmapFlagArgument = MmapFlagArgument{/* contains filtered or unexported fields */}
)

func (MmapFlagArgument) String

func (mf MmapFlagArgument) String() string

func (MmapFlagArgument) Value

func (mf MmapFlagArgument) Value() uint64

type MmapProtArgument

type MmapProtArgument struct {
	// contains filtered or unexported fields
}
var (
	PROT_READ      MmapProtArgument = MmapProtArgument{/* contains filtered or unexported fields */}
	PROT_WRITE     MmapProtArgument = MmapProtArgument{/* contains filtered or unexported fields */}
	PROT_EXEC      MmapProtArgument = MmapProtArgument{/* contains filtered or unexported fields */}
	PROT_SEM       MmapProtArgument = MmapProtArgument{/* contains filtered or unexported fields */}
	PROT_NONE      MmapProtArgument = MmapProtArgument{/* contains filtered or unexported fields */}
	PROT_GROWSDOWN MmapProtArgument = MmapProtArgument{/* contains filtered or unexported fields */}
	PROT_GROWSUP   MmapProtArgument = MmapProtArgument{/* contains filtered or unexported fields */}
)

func (MmapProtArgument) String

func (p MmapProtArgument) String() string

func (MmapProtArgument) Value

func (p MmapProtArgument) Value() uint64

type OpenFlagArgument

type OpenFlagArgument struct {
	// contains filtered or unexported fields
}
var (
	// These values are copied from uapi/asm-generic/fcntl.h
	O_ACCMODE   OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_RDONLY    OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_WRONLY    OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_RDWR      OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_CREAT     OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_EXCL      OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_NOCTTY    OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_TRUNC     OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_APPEND    OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_NONBLOCK  OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_DSYNC     OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_SYNC      OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	FASYNC      OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_DIRECT    OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_LARGEFILE OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_DIRECTORY OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_NOFOLLOW  OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_NOATIME   OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_CLOEXEC   OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_PATH      OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
	O_TMPFILE   OpenFlagArgument = OpenFlagArgument{/* contains filtered or unexported fields */}
)

func ParseOpenFlagArgument

func ParseOpenFlagArgument(rawValue uint64) (OpenFlagArgument, error)

ParseOpenFlagArgument parses the `flags` bitmask argument of the `open` syscall http://man7.org/linux/man-pages/man2/open.2.html https://elixir.bootlin.com/linux/v5.5.3/source/include/uapi/asm-generic/fcntl.h

func (OpenFlagArgument) String

func (o OpenFlagArgument) String() string

func (OpenFlagArgument) Value

func (o OpenFlagArgument) Value() uint64

type PrctlOptionArgument

type PrctlOptionArgument uint64
const (
	PR_SET_PDEATHSIG PrctlOptionArgument = iota + 1
	PR_GET_PDEATHSIG
	PR_GET_DUMPABLE
	PR_SET_DUMPABLE
	PR_GET_UNALIGN
	PR_SET_UNALIGN
	PR_GET_KEEPCAPS
	PR_SET_KEEPCAPS
	PR_GET_FPEMU
	PR_SET_FPEMU
	PR_GET_FPEXC
	PR_SET_FPEXC
	PR_GET_TIMING
	PR_SET_TIMING
	PR_SET_NAME
	PR_GET_NAME
	PR_GET_ENDIAN
	PR_SET_ENDIAN
	PR_GET_SECCOMP
	PR_SET_SECCOMP
	PR_CAPBSET_READ
	PR_CAPBSET_DROP
	PR_GET_TSC
	PR_SET_TSC
	PR_GET_SECUREBITS
	PR_SET_SECUREBITS
	PR_SET_TIMERSLACK
	PR_GET_TIMERSLACK
	PR_TASK_PERF_EVENTS_DISABLE
	PR_TASK_PERF_EVENTS_ENABLE
	PR_MCE_KILL
	PR_MCE_KILL_GET
	PR_SET_MM
	PR_SET_CHILD_SUBREAPER
	PR_GET_CHILD_SUBREAPER
	PR_SET_NO_NEW_PRIVS
	PR_GET_NO_NEW_PRIVS
	PR_GET_TID_ADDRESS
	PR_SET_THP_DISABLE
	PR_GET_THP_DISABLE
	PR_MPX_ENABLE_MANAGEMENT
	PR_MPX_DISABLE_MANAGEMENT
	PR_SET_FP_MODE
	PR_GET_FP_MODE
	PR_CAP_AMBIENT
	PR_SVE_SET_VL
	PR_SVE_GET_VL
	PR_GET_SPECULATION_CTRL
	PR_SET_SPECULATION_CTRL
	PR_PAC_RESET_KEYS
	PR_SET_TAGGED_ADDR_CTRL
	PR_GET_TAGGED_ADDR_CTRL
)

func ParsePrctlOption

func ParsePrctlOption(rawValue uint64) (PrctlOptionArgument, error)

ParsePrctlOption parses the `option` argument of the `prctl` syscall http://man7.org/linux/man-pages/man2/prctl.2.html

func (PrctlOptionArgument) String

func (p PrctlOptionArgument) String() string

func (PrctlOptionArgument) Value

func (p PrctlOptionArgument) Value() uint64

type PtraceRequestArgument

type PtraceRequestArgument uint64
var (
	PTRACE_TRACEME              PtraceRequestArgument = 0
	PTRACE_PEEKTEXT             PtraceRequestArgument = 1
	PTRACE_PEEKDATA             PtraceRequestArgument = 2
	PTRACE_PEEKUSER             PtraceRequestArgument = 3
	PTRACE_POKETEXT             PtraceRequestArgument = 4
	PTRACE_POKEDATA             PtraceRequestArgument = 5
	PTRACE_POKEUSER             PtraceRequestArgument = 6
	PTRACE_CONT                 PtraceRequestArgument = 7
	PTRACE_KILL                 PtraceRequestArgument = 8
	PTRACE_SINGLESTEP           PtraceRequestArgument = 9
	PTRACE_GETREGS              PtraceRequestArgument = 12
	PTRACE_SETREGS              PtraceRequestArgument = 13
	PTRACE_GETFPREGS            PtraceRequestArgument = 14
	PTRACE_SETFPREGS            PtraceRequestArgument = 15
	PTRACE_ATTACH               PtraceRequestArgument = 16
	PTRACE_DETACH               PtraceRequestArgument = 17
	PTRACE_GETFPXREGS           PtraceRequestArgument = 18
	PTRACE_SETFPXREGS           PtraceRequestArgument = 19
	PTRACE_SYSCALL              PtraceRequestArgument = 24
	PTRACE_SETOPTIONS           PtraceRequestArgument = 0x4200
	PTRACE_GETEVENTMSG          PtraceRequestArgument = 0x4201
	PTRACE_GETSIGINFO           PtraceRequestArgument = 0x4202
	PTRACE_SETSIGINFO           PtraceRequestArgument = 0x4203
	PTRACE_GETREGSET            PtraceRequestArgument = 0x4204
	PTRACE_SETREGSET            PtraceRequestArgument = 0x4205
	PTRACE_SEIZE                PtraceRequestArgument = 0x4206
	PTRACE_INTERRUPT            PtraceRequestArgument = 0x4207
	PTRACE_LISTEN               PtraceRequestArgument = 0x4208
	PTRACE_PEEKSIGINFO          PtraceRequestArgument = 0x4209
	PTRACE_GETSIGMASK           PtraceRequestArgument = 0x420a
	PTRACE_SETSIGMASK           PtraceRequestArgument = 0x420b
	PTRACE_SECCOMP_GET_FILTER   PtraceRequestArgument = 0x420c
	PTRACE_SECCOMP_GET_METADATA PtraceRequestArgument = 0x420d
	PTRACE_GET_SYSCALL_INFO     PtraceRequestArgument = 0x420e
)

func ParsePtraceRequestArgument

func ParsePtraceRequestArgument(rawValue uint64) (PtraceRequestArgument, error)

func (PtraceRequestArgument) String

func (p PtraceRequestArgument) String() string

func (PtraceRequestArgument) Value

func (p PtraceRequestArgument) Value() uint64

type SocketDomainArgument

type SocketDomainArgument uint64
const (
	AF_UNSPEC SocketDomainArgument = iota
	AF_UNIX
	AF_INET
	AF_AX25
	AF_IPX
	AF_APPLETALK
	AF_NETROM
	AF_BRIDGE
	AF_ATMPVC
	AF_X25
	AF_INET6
	AF_ROSE
	AF_DECnet
	AF_NETBEUI
	AF_SECURITY
	AF_KEY
	AF_NETLINK
	AF_PACKET
	AF_ASH
	AF_ECONET
	AF_ATMSVC
	AF_RDS
	AF_SNA
	AF_IRDA
	AF_PPPOX
	AF_WANPIPE
	AF_LLC
	AF_IB
	AF_MPLS
	AF_CAN
	AF_TIPC
	AF_BLUETOOTH
	AF_IUCV
	AF_RXRPC
	AF_ISDN
	AF_PHONET
	AF_IEEE802154
	AF_CAIF
	AF_ALG
	AF_NFC
	AF_VSOCK
	AF_KCM
	AF_QIPCRTR
	AF_SMC
	AF_XDP
)

func ParseSocketDomainArgument

func ParseSocketDomainArgument(rawValue uint64) (SocketDomainArgument, error)

ParseSocketDomainArgument parses the `domain` bitmask argument of the `socket` syscall http://man7.org/linux/man-pages/man2/socket.2.html

func (SocketDomainArgument) String

func (s SocketDomainArgument) String() string

func (SocketDomainArgument) Value

func (s SocketDomainArgument) Value() uint64

type SocketLevelArgument

type SocketLevelArgument uint64
const (
	SOL_SOCKET   SocketLevelArgument = unix.SOL_SOCKET
	SOL_AAL      SocketLevelArgument = unix.SOL_AAL
	SOL_ALG      SocketLevelArgument = unix.SOL_ALG
	SOL_ATM      SocketLevelArgument = unix.SOL_ATM
	SOL_CAIF     SocketLevelArgument = unix.SOL_CAIF
	SOL_CAN_BASE SocketLevelArgument = unix.SOL_CAN_BASE
	SOL_CAN_RAW  SocketLevelArgument = unix.SOL_CAN_RAW
	SOL_DCCP     SocketLevelArgument = unix.SOL_DCCP
	SOL_DECNET   SocketLevelArgument = unix.SOL_DECNET
	SOL_ICMPV6   SocketLevelArgument = unix.SOL_ICMPV6
	SOL_IP       SocketLevelArgument = unix.SOL_IP
	SOL_IPV6     SocketLevelArgument = unix.SOL_IPV6
	SOL_IRDA     SocketLevelArgument = unix.SOL_IRDA
	SOL_IUCV     SocketLevelArgument = unix.SOL_IUCV
	SOL_KCM      SocketLevelArgument = unix.SOL_KCM
	SOL_LLC      SocketLevelArgument = unix.SOL_LLC
	SOL_NETBEUI  SocketLevelArgument = unix.SOL_NETBEUI
	SOL_NETLINK  SocketLevelArgument = unix.SOL_NETLINK
	SOL_NFC      SocketLevelArgument = unix.SOL_NFC
	SOL_PACKET   SocketLevelArgument = unix.SOL_PACKET
	SOL_PNPIPE   SocketLevelArgument = unix.SOL_PNPIPE
	SOL_PPPOL2TP SocketLevelArgument = unix.SOL_PPPOL2TP
	SOL_RAW      SocketLevelArgument = unix.SOL_RAW
	SOL_RDS      SocketLevelArgument = unix.SOL_RDS
	SOL_RXRPC    SocketLevelArgument = unix.SOL_RXRPC
	SOL_TCP      SocketLevelArgument = unix.SOL_TCP
	SOL_TIPC     SocketLevelArgument = unix.SOL_TIPC
	SOL_TLS      SocketLevelArgument = unix.SOL_TLS
	SOL_X25      SocketLevelArgument = unix.SOL_X25
	SOL_XDP      SocketLevelArgument = unix.SOL_XDP

	// The following are newer, so aren't included in the unix package
	SOL_MCTCP SocketLevelArgument = 284
	SOL_MCTP  SocketLevelArgument = 285
	SOL_SMC   SocketLevelArgument = 286
)

func ParseSocketLevel

func ParseSocketLevel(rawValue uint64) (SocketLevelArgument, error)

ParseSocketLevel parses the `level` argument of the `setsockopt` and `getsockopt` syscalls. https://man7.org/linux/man-pages/man2/setsockopt.2.html https://elixir.bootlin.com/linux/latest/source/include/linux/socket.h

func (SocketLevelArgument) String

func (socketLevel SocketLevelArgument) String() string

func (SocketLevelArgument) Value

func (socketLevel SocketLevelArgument) Value() uint64

type SocketOptionArgument

type SocketOptionArgument struct {
	// contains filtered or unexported fields
}

func ParseGetSocketOption

func ParseGetSocketOption(rawValue uint64) (SocketOptionArgument, error)

ParseGetSocketOption parses the `optname` argument of the `getsockopt` syscall. https://man7.org/linux/man-pages/man2/getsockopt.2.html https://elixir.bootlin.com/linux/latest/source/include/uapi/asm-generic/socket.h

func ParseSetSocketOption

func ParseSetSocketOption(rawValue uint64) (SocketOptionArgument, error)

ParseSetSocketOption parses the `optname` argument of the `setsockopt` syscall. https://man7.org/linux/man-pages/man2/setsockopt.2.html https://elixir.bootlin.com/linux/latest/source/include/uapi/asm-generic/socket.h

func (SocketOptionArgument) String

func (socketOption SocketOptionArgument) String() string

func (SocketOptionArgument) Value

func (socketOption SocketOptionArgument) Value() uint64

type SocketTypeArgument

type SocketTypeArgument struct {
	// contains filtered or unexported fields
}
var (
	SOCK_STREAM    SocketTypeArgument = SocketTypeArgument{/* contains filtered or unexported fields */}
	SOCK_DGRAM     SocketTypeArgument = SocketTypeArgument{/* contains filtered or unexported fields */}
	SOCK_RAW       SocketTypeArgument = SocketTypeArgument{/* contains filtered or unexported fields */}
	SOCK_RDM       SocketTypeArgument = SocketTypeArgument{/* contains filtered or unexported fields */}
	SOCK_SEQPACKET SocketTypeArgument = SocketTypeArgument{/* contains filtered or unexported fields */}
	SOCK_DCCP      SocketTypeArgument = SocketTypeArgument{/* contains filtered or unexported fields */}
	SOCK_PACKET    SocketTypeArgument = SocketTypeArgument{/* contains filtered or unexported fields */}
	SOCK_NONBLOCK  SocketTypeArgument = SocketTypeArgument{/* contains filtered or unexported fields */}
	SOCK_CLOEXEC   SocketTypeArgument = SocketTypeArgument{/* contains filtered or unexported fields */}
)

func ParseSocketType

func ParseSocketType(rawValue uint64) (SocketTypeArgument, error)

ParseSocketType parses the `type` bitmask argument of the `socket` syscall http://man7.org/linux/man-pages/man2/socket.2.html

func (SocketTypeArgument) String

func (s SocketTypeArgument) String() string

func (SocketTypeArgument) Value

func (s SocketTypeArgument) Value() uint64

type SocketcallCallArgument

type SocketcallCallArgument uint64
const (
	SYS_SOCKET SocketcallCallArgument = iota + 1
	SYS_BIND
	SYS_CONNECT
	SYS_LISTEN
	SYS_ACCEPT
	SYS_GETSOCKNAME
	SYS_GETPEERNAME
	SYS_SOCKETPAIR
	SYS_SEND
	SYS_RECV
	SYS_SENDTO
	SYS_RECVFROM
	SYS_SHUTDOWN
	SYS_SETSOCKOPT
	SYS_GETSOCKOPT
	SYS_SENDMSG
	SYS_RECVMSG
	SYS_ACCEPT4
	SYS_RECVMMSG
	SYS_SENDMMSG
)

func ParseSocketcallCall

func ParseSocketcallCall(rawValue uint64) (SocketcallCallArgument, error)

ParseSocketcallCall parses the `call` argument of the `socketcall` syscall http://man7.org/linux/man-pages/man2/socketcall.2.html https://elixir.bootlin.com/linux/latest/source/include/uapi/linux/net.h

func (SocketcallCallArgument) String

func (s SocketcallCallArgument) String() string

func (SocketcallCallArgument) Value

func (s SocketcallCallArgument) Value() uint64

type SystemFunctionArgument

type SystemFunctionArgument interface {
	fmt.Stringer
	Value() uint64
}

func ParseGUPFlagsCurrentOS

func ParseGUPFlagsCurrentOS(rawValue uint64) (SystemFunctionArgument, error)

ParseGUPFlagsCurrentOS parse the GUP flags received according to current machine OS version. It uses optimizations to perform better than ParseGUPFlagsForOS

func ParseGUPFlagsForOS

func ParseGUPFlagsForOS(osInfo *environment.OSInfo, rawValue uint64) (SystemFunctionArgument, error)

ParseGUPFlagsForOS parse the GUP flags received according to given OS version.

type VmFlag

type VmFlag struct {
	// contains filtered or unexported fields
}

VmFlag represents the flags in the `vm_area_struct` in x86 64bit architecture

func ParseVmFlags

func ParseVmFlags(rawValue uint64) VmFlag

ParseVmFlags parses the flags of vm_area_struct for x86 64bit architecture

func (VmFlag) String

func (vmf VmFlag) String() string

func (VmFlag) Value

func (vmf VmFlag) Value() uint64

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL