Commit | Line | Data |
---|---|---|
b0f2e8db JG |
1 | /* |
2 | * Copyright (C) 2022 Jérémie Galarneau <jeremie.galarneau@efficios.com> | |
3 | * | |
4 | * SPDX-License-Identifier: GPL-2.0-only | |
5 | * | |
6 | */ | |
7 | ||
8 | #ifndef LTTNG_UST_REGISTRY_SESSION_UID_H | |
9 | #define LTTNG_UST_REGISTRY_SESSION_UID_H | |
10 | ||
11 | #include "trace-class.hpp" | |
12 | #include "ust-registry-session.hpp" | |
13 | ||
14 | #include <cstdint> | |
15 | #include <lttng/lttng.h> | |
16 | #include <unistd.h> | |
17 | ||
18 | namespace lttng { | |
19 | namespace sessiond { | |
20 | namespace ust { | |
21 | ||
22 | class registry_session_per_uid : public registry_session { | |
23 | public: | |
24 | registry_session_per_uid(const struct lttng::sessiond::trace::abi& trace_abi, | |
25 | uint32_t major, | |
26 | uint32_t minor, | |
27 | const char *root_shm_path, | |
28 | const char *shm_path, | |
29 | uid_t euid, | |
30 | gid_t egid, | |
31 | uint64_t tracing_id, | |
32 | uid_t tracing_uid); | |
33 | ||
34 | virtual lttng_buffer_type get_buffering_scheme() const noexcept override final; | |
35 | ||
36 | private: | |
37 | virtual void _visit_environment( | |
38 | lttng::sessiond::trace::trace_class_visitor& trace_class_visitor) | |
39 | const override final; | |
40 | ||
41 | const uid_t _tracing_uid; | |
42 | }; | |
43 | ||
44 | } /* namespace ust */ | |
45 | } /* namespace sessiond */ | |
46 | } /* namespace lttng */ | |
47 | ||
48 | #endif /* LTTNG_UST_REGISTRY_SESSION_UID_H */ |