const CN_IDX_PROC … const PROC_EVENT_NONE … const PROC_EVENT_FORK … const PROC_EVENT_EXEC … const PROC_EVENT_UID … const PROC_EVENT_GID … const PROC_EVENT_SID … const PROC_EVENT_PTRACE … const PROC_EVENT_COMM … const PROC_EVENT_COREDUMP … const PROC_EVENT_EXIT … const CN_VAL_PROC … const PROC_CN_MCAST_LISTEN … type ProcEventMsg … type ProcEventHeader … type ProcEvent … func (pe *ProcEvent) setHeader(h ProcEventHeader) { … } type ExitProcEvent … func (e *ExitProcEvent) Pid() uint32 { … } func (e *ExitProcEvent) Tgid() uint32 { … } type ExecProcEvent … func (e *ExecProcEvent) Pid() uint32 { … } func (e *ExecProcEvent) Tgid() uint32 { … } type ForkProcEvent … func (e *ForkProcEvent) Pid() uint32 { … } func (e *ForkProcEvent) Tgid() uint32 { … } type CommProcEvent … func (e *CommProcEvent) Pid() uint32 { … } func (e *CommProcEvent) Tgid() uint32 { … } func ProcEventMonitor(ch chan<- ProcEvent, done <-chan struct{ … } func parseNetlinkMessage(m syscall.NetlinkMessage) *ProcEvent { … }