diff options
author | Drew DeVault <sir@cmpwn.com> | 2017-04-16 10:17:43 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-16 10:17:43 -0400 |
commit | 7494a48378bff3b11304ba4077bda5a84ed10087 (patch) | |
tree | 21abe14fe200099fffe5de9b7770cf2ca921e371 /include | |
parent | Merge pull request #1175 from JerziKaminsky/fix_sway_assert_variadic (diff) | |
parent | Handle symlinks as IPC security targets (diff) | |
download | sway-7494a48378bff3b11304ba4077bda5a84ed10087.tar.gz sway-7494a48378bff3b11304ba4077bda5a84ed10087.tar.zst sway-7494a48378bff3b11304ba4077bda5a84ed10087.zip |
Merge pull request #1173 from JerziKaminsky/security_resolve_symlink
FOR_REVIEW: IPC security - Allow policy targets to be symlinks
Diffstat (limited to 'include')
-rw-r--r-- | include/sway/security.h | 8 | ||||
-rw-r--r-- | include/util.h | 8 |
2 files changed, 13 insertions, 3 deletions
diff --git a/include/sway/security.h b/include/sway/security.h index c3a5cfd4..0edffdfa 100644 --- a/include/sway/security.h +++ b/include/sway/security.h | |||
@@ -3,9 +3,11 @@ | |||
3 | #include <unistd.h> | 3 | #include <unistd.h> |
4 | #include "sway/config.h" | 4 | #include "sway/config.h" |
5 | 5 | ||
6 | uint32_t get_feature_policy(pid_t pid); | 6 | uint32_t get_feature_policy_mask(pid_t pid); |
7 | uint32_t get_ipc_policy(pid_t pid); | 7 | uint32_t get_ipc_policy_mask(pid_t pid); |
8 | uint32_t get_command_policy(const char *cmd); | 8 | uint32_t get_command_policy_mask(const char *cmd); |
9 | |||
10 | struct feature_policy *get_feature_policy(const char *name); | ||
9 | 11 | ||
10 | const char *command_policy_str(enum command_context context); | 12 | const char *command_policy_str(enum command_context context); |
11 | 13 | ||
diff --git a/include/util.h b/include/util.h index 839af265..e5365458 100644 --- a/include/util.h +++ b/include/util.h | |||
@@ -49,4 +49,12 @@ pid_t get_parent_pid(pid_t pid); | |||
49 | */ | 49 | */ |
50 | uint32_t parse_color(const char *color); | 50 | uint32_t parse_color(const char *color); |
51 | 51 | ||
52 | /** | ||
53 | * Given a path string, recurseively resolves any symlinks to their targets | ||
54 | * (which may be a file, directory) and returns the result. | ||
55 | * argument is returned. Caller must free the returned buffer. | ||
56 | * If an error occures, if the path does not exist or if the path corresponds | ||
57 | * to a dangling symlink, NULL is returned. | ||
58 | */ | ||
59 | char* resolve_path(const char* path); | ||
52 | #endif | 60 | #endif |