Move the helper function to higher level

This commit is contained in:
topjohnwu 2017-04-17 16:33:01 +08:00
parent c37a2e61ed
commit aefbc1c9bf
3 changed files with 1 additions and 19 deletions

16
misc.c
View File

@ -13,22 +13,6 @@
#include "magisk.h" #include "magisk.h"
#include "su.h" #include "su.h"
int quit_signals[] = { SIGALRM, SIGABRT, SIGHUP, SIGPIPE, SIGQUIT, SIGTERM, SIGINT, 0 };
void setup_sighandlers(void (*handler)(int)) {
struct sigaction act;
// Install the termination handlers
// Note: we're assuming that none of these signal handlers are already trapped.
// If they are, we'll need to modify this code to save the previous handler and
// call it after we restore stdin to its previous state.
memset(&act, 0, sizeof(act));
act.sa_handler = handler;
for (int i = 0; quit_signals[i]; ++i) {
sigaction(quit_signals[i], &act, NULL);
}
}
void set_identity(unsigned uid) { void set_identity(unsigned uid) {
/* /*
* Set effective uid back to root, otherwise setres[ug]id will fail * Set effective uid back to root, otherwise setres[ug]id will fail

2
su.c
View File

@ -214,7 +214,7 @@ int su_daemon_main(int argc, char **argv) {
.database_path = APPLICATION_DATA_PATH REQUESTOR_DATABASE_PATH, .database_path = APPLICATION_DATA_PATH REQUESTOR_DATABASE_PATH,
.base_path = APPLICATION_DATA_PATH REQUESTOR .base_path = APPLICATION_DATA_PATH REQUESTOR
}, },
.umask = umask(027), .umask = umask(022),
}; };
su_ctx = &ctx; su_ctx = &ctx;

2
su.h
View File

@ -103,7 +103,6 @@ typedef enum {
} policy_t; } policy_t;
extern int from_uid, from_pid; extern int from_uid, from_pid;
extern int quit_signals[];
// su.c // su.c
@ -127,7 +126,6 @@ policy_t database_check(struct su_context *ctx);
// misc.c // misc.c
void setup_sighandlers(void (*handler)(int));
void set_identity(unsigned uid); void set_identity(unsigned uid);
char *get_command(const struct su_request *to); char *get_command(const struct su_request *to);
int fork_zero_fucks(); int fork_zero_fucks();