diff options
author | dec05eba <dec05eba@protonmail.com> | 2024-02-16 20:03:03 +0100 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2024-02-16 20:06:38 +0100 |
commit | d31dc61e1a1358fa6b0960d699f2a55e39854096 (patch) | |
tree | 8b19f7e056bc9d6ba4abb57899cfa72eb1e84350 /main.c | |
parent | 08693e6095cfa79a80faa8e9d0c76e0f183929fd (diff) |
Create ~/.local/bin as regular user
Diffstat (limited to 'main.c')
-rw-r--r-- | main.c | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -120,7 +120,7 @@ int main(int argc, char **argv) { return 1; char kms_server_proxy_local_filepath[PATH_MAX]; - snprintf(kms_server_proxy_local_filepath, sizeof(kms_server_proxy_local_filepath), "%s/.local/bin/kms-server-proxy", user_homepath); + snprintf(kms_server_proxy_local_filepath, sizeof(kms_server_proxy_local_filepath), "%s/.local/bin/kms-server-proxy-1", user_homepath); if(file_has_sys_admin_capability(gsr_kms_server_filepath)) { const char *args[] = { gsr_kms_server_filepath, initial_socket_path, card_path, NULL }; @@ -141,13 +141,13 @@ int main(int argc, char **argv) { return execvp(args[0], (char *const*)args); } else if(geteuid() == 0) { /* is current user root */ file_set_sys_admin_capability(gsr_kms_server_filepath, 0); - - if(create_local_kms_server_proxy_directory(user_homepath)) - create_local_kms_server_proxy_file(self_path, kms_server_proxy_local_filepath); + create_local_kms_server_proxy_file(self_path, kms_server_proxy_local_filepath); const char *args[] = { gsr_kms_server_filepath, initial_socket_path, card_path, NULL }; return execv(args[0], (char *const*)args); } else { + create_local_kms_server_proxy_directory(user_homepath); + const char *args[] = { "pkexec", self_path, initial_socket_path, card_path, user_homepath, NULL }; return execvp(args[0], (char *const*)args); } |