teleport/lib/restrictedsession
Andrew LeFevre d4b3afe9a1
split recording session events and emitting audit events (#27873)
* split recording session events and emitting audit events

This is a refactor of how audit events and session events are handled.
Previously, all events were emitted using the same interface,
api/types/events.Emitter. This lead to event-related code getting to be
very confusing, as it was often unclear whether a given event was being
recorded as a session event and emitted as an audit event, or only one
of the two. Naturally, a few bugs arose due to this.

To simplify event handling, a separate interface for recording session
events has been created. A api/types/events.Recorder should now only be
used to record session events, and an Emitter should now only be used to
emit audit events. Instead of using a confusing TeeWriter that would
transparently (and confusingly, given its name) hold a few event types
that only belonged in session recordings, callers can now explicitly
record and/or emit an event when necessary.

* ensure e build won't break
2023-07-11 19:53:33 +00:00
..
bytecode Updated BPF asset embedding. 2021-07-28 17:16:14 -07:00
audit.go Add server_hostname to session.* events (#18812) 2022-11-28 20:28:41 +00:00
config.go Enable network BPF modules only when needed. (#18497) 2022-11-25 18:33:40 +00:00
fuzz_test.go oss fuzz integration (#13473) 2022-06-18 21:28:07 +00:00
manager.go Fix BPF (#17269) 2022-10-12 18:41:26 +00:00
network.go Bump to libbpfgo v0.2.5 (#12288) 2022-06-08 05:00:01 +00:00
nop.go Refactor tctl's dependencies (#22693) 2023-03-09 17:48:36 +00:00
restricted.go Refactor tctl's dependencies (#22693) 2023-03-09 17:48:36 +00:00
restricted_test.go split recording session events and emitting audit events (#27873) 2023-07-11 19:53:33 +00:00
watcher.go Run GCI as make fix-imports (#17956) 2022-11-04 15:46:46 +00:00