diff options
Diffstat (limited to 'tools/debugserver/source/DNB.cpp')
-rw-r--r-- | tools/debugserver/source/DNB.cpp | 56 |
1 files changed, 40 insertions, 16 deletions
diff --git a/tools/debugserver/source/DNB.cpp b/tools/debugserver/source/DNB.cpp index 03c85df441de..bb3603649199 100644 --- a/tools/debugserver/source/DNB.cpp +++ b/tools/debugserver/source/DNB.cpp @@ -360,21 +360,13 @@ DNBProcessLaunch (const char *path, char *err_str, size_t err_len) { - DNBLogThreadedIf(LOG_PROCESS, "%s ( path='%s', argv = %p, envp = %p, working_dir=%s, stdin=%s, stdout=%s, stderr=%s, no-stdio=%i, launch_flavor = %u, disable_aslr = %d, err = %p, err_len = %llu) called...", - __FUNCTION__, - path, - argv, - envp, - working_directory, - stdin_path, - stdout_path, - stderr_path, - no_stdio, - launch_flavor, - disable_aslr, - err_str, - (uint64_t)err_len); - + DNBLogThreadedIf(LOG_PROCESS, "%s ( path='%s', argv = %p, envp = %p, working_dir=%s, stdin=%s, stdout=%s, " + "stderr=%s, no-stdio=%i, launch_flavor = %u, disable_aslr = %d, err = %p, err_len = " + "%llu) called...", + __FUNCTION__, path, static_cast<void *>(argv), static_cast<void *>(envp), working_directory, + stdin_path, stdout_path, stderr_path, no_stdio, launch_flavor, disable_aslr, + static_cast<void *>(err_str), static_cast<uint64_t>(err_len)); + if (err_str && err_len > 0) err_str[0] = '\0'; struct stat path_stat; @@ -548,7 +540,6 @@ DNBProcessAttach (nub_process_t attach_pid, struct timespec *timeout, char *err_ switch (pid_state) { - default: case eStateInvalid: case eStateUnloaded: case eStateAttaching: @@ -1092,6 +1083,39 @@ DNBGetLoadedDynamicLibrariesInfos (nub_process_t pid, nub_addr_t image_list_addr return JSONGenerator::ObjectSP(); } +JSONGenerator::ObjectSP +DNBGetAllLoadedLibrariesInfos (nub_process_t pid) +{ + MachProcessSP procSP; + if (GetProcessSP (pid, procSP)) + { + return procSP->GetAllLoadedLibrariesInfos (pid); + } + return JSONGenerator::ObjectSP(); +} + +JSONGenerator::ObjectSP +DNBGetLibrariesInfoForAddresses (nub_process_t pid, std::vector<uint64_t> &macho_addresses) +{ + MachProcessSP procSP; + if (GetProcessSP (pid, procSP)) + { + return procSP->GetLibrariesInfoForAddresses (pid, macho_addresses); + } + return JSONGenerator::ObjectSP(); +} + +JSONGenerator::ObjectSP +DNBGetSharedCacheInfo (nub_process_t pid) +{ + MachProcessSP procSP; + if (GetProcessSP (pid, procSP)) + { + return procSP->GetSharedCacheInfo (pid); + } + return JSONGenerator::ObjectSP(); +} + const char * |