Loading uncrypt/uncrypt.cpp +18 −2 Original line number Diff line number Diff line Loading @@ -210,6 +210,11 @@ static const char* find_block_device(const char* path, bool* encryptable, bool* } static bool write_status_to_socket(int status, int socket) { // If socket equals -1, uncrypt is in debug mode without socket communication. // Skip writing and return success. if (socket == -1) { return true; } int status_out = htonl(status); return android::base::WriteFully(socket, &status_out, sizeof(int)); } Loading Loading @@ -566,7 +571,7 @@ static void usage(const char* exename) { } int main(int argc, char** argv) { enum { UNCRYPT, SETUP_BCB, CLEAR_BCB } action; enum { UNCRYPT, SETUP_BCB, CLEAR_BCB, UNCRYPT_DEBUG } action; const char* input_path = nullptr; const char* map_file = CACHE_BLOCK_MAP.c_str(); Loading @@ -579,7 +584,7 @@ int main(int argc, char** argv) { } else if (argc == 3) { input_path = argv[1]; map_file = argv[2]; action = UNCRYPT; action = UNCRYPT_DEBUG; } else { usage(argv[0]); return 2; Loading @@ -593,6 +598,17 @@ int main(int argc, char** argv) { return 1; } if (action == UNCRYPT_DEBUG) { LOG(INFO) << "uncrypt called in debug mode, skip socket communication\n"; bool success = uncrypt_wrapper(input_path, map_file, -1); if (success) { LOG(INFO) << "uncrypt succeeded\n"; } else{ LOG(INFO) << "uncrypt failed\n"; } return success ? 0 : 1; } // c3. The socket is created by init when starting the service. uncrypt // will use the socket to communicate with its caller. android::base::unique_fd service_socket(android_get_control_socket(UNCRYPT_SOCKET.c_str())); Loading Loading
uncrypt/uncrypt.cpp +18 −2 Original line number Diff line number Diff line Loading @@ -210,6 +210,11 @@ static const char* find_block_device(const char* path, bool* encryptable, bool* } static bool write_status_to_socket(int status, int socket) { // If socket equals -1, uncrypt is in debug mode without socket communication. // Skip writing and return success. if (socket == -1) { return true; } int status_out = htonl(status); return android::base::WriteFully(socket, &status_out, sizeof(int)); } Loading Loading @@ -566,7 +571,7 @@ static void usage(const char* exename) { } int main(int argc, char** argv) { enum { UNCRYPT, SETUP_BCB, CLEAR_BCB } action; enum { UNCRYPT, SETUP_BCB, CLEAR_BCB, UNCRYPT_DEBUG } action; const char* input_path = nullptr; const char* map_file = CACHE_BLOCK_MAP.c_str(); Loading @@ -579,7 +584,7 @@ int main(int argc, char** argv) { } else if (argc == 3) { input_path = argv[1]; map_file = argv[2]; action = UNCRYPT; action = UNCRYPT_DEBUG; } else { usage(argv[0]); return 2; Loading @@ -593,6 +598,17 @@ int main(int argc, char** argv) { return 1; } if (action == UNCRYPT_DEBUG) { LOG(INFO) << "uncrypt called in debug mode, skip socket communication\n"; bool success = uncrypt_wrapper(input_path, map_file, -1); if (success) { LOG(INFO) << "uncrypt succeeded\n"; } else{ LOG(INFO) << "uncrypt failed\n"; } return success ? 0 : 1; } // c3. The socket is created by init when starting the service. uncrypt // will use the socket to communicate with its caller. android::base::unique_fd service_socket(android_get_control_socket(UNCRYPT_SOCKET.c_str())); Loading