Directly print output over socket

This commit is contained in:
topjohnwu
2018-11-16 01:49:15 -05:00
parent 77fd5fa7de
commit ba70269398
2 changed files with 6 additions and 13 deletions
+2 -10
View File
@@ -97,6 +97,8 @@ int magiskhide_main(int argc, char *argv[]) {
write_int(fd, req);
if (req == ADD_HIDELIST || req == RM_HIDELIST)
write_string(fd, argv[2]);
if (req == LS_HIDELIST)
send_fd(fd, STDOUT_FILENO);
// Get response
int code = read_int(fd);
@@ -129,15 +131,5 @@ int magiskhide_main(int argc, char *argv[]) {
return DAEMON_ERROR;
}
if (code == DAEMON_SUCCESS && req == LS_HIDELIST) {
int cnt = read_int(fd);
for (int i = 0; i < cnt; ++i) {
char *s = read_string(fd);
printf("%s\n", s);
free(s);
}
}
close(fd);
return req == HIDE_STATUS ? (code == HIDE_IS_ENABLED ? 0 : 1) : code != DAEMON_SUCCESS;
}