projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Allow users to create trigger with their uid
[lttng-tools.git]
/
src
/
common
/
trigger.c
diff --git
a/src/common/trigger.c
b/src/common/trigger.c
index ec96fc80b7d804249c8c4f1f395d4a693080fd1e..21550140100a755984523d8b1f1f7a8fd76e4acb 100644
(file)
--- a/
src/common/trigger.c
+++ b/
src/common/trigger.c
@@
-704,6
+704,7
@@
enum lttng_trigger_status lttng_trigger_set_owner_uid(
struct lttng_trigger *trigger, uid_t uid)
{
enum lttng_trigger_status ret = LTTNG_TRIGGER_STATUS_OK;
struct lttng_trigger *trigger, uid_t uid)
{
enum lttng_trigger_status ret = LTTNG_TRIGGER_STATUS_OK;
+ const uid_t euid = geteuid();
const struct lttng_credentials creds = {
.uid = LTTNG_OPTIONAL_INIT_VALUE(uid),
.gid = LTTNG_OPTIONAL_INIT_UNSET,
const struct lttng_credentials creds = {
.uid = LTTNG_OPTIONAL_INIT_VALUE(uid),
.gid = LTTNG_OPTIONAL_INIT_UNSET,
@@
-715,7
+716,7
@@
enum lttng_trigger_status lttng_trigger_set_owner_uid(
}
/* Client-side validation only to report a clearer error. */
}
/* Client-side validation only to report a clearer error. */
- if (
geteuid() != 0
) {
+ if (
euid != 0 && euid != uid
) {
ret = LTTNG_TRIGGER_STATUS_PERMISSION_DENIED;
goto end;
}
ret = LTTNG_TRIGGER_STATUS_PERMISSION_DENIED;
goto end;
}
This page took
0.024065 seconds
and
4
git commands to generate.