aboutsummaryrefslogtreecommitdiff
path: root/llvm/tools/llvm-objdump/llvm-objdump.cpp
diff options
context:
space:
mode:
authorNoah Shutty <noahshutty@gmail.com>2022-07-07 17:55:25 +0000
committerNoah Shutty <noahshutty@gmail.com>2022-07-07 18:33:27 +0000
commit36f01909a0e29c1014301ed6835687a84bf0e9fa (patch)
tree33cce8d7c4411fe8816fc413bec2da676a4eab35 /llvm/tools/llvm-objdump/llvm-objdump.cpp
parent472aa7e6bbc384707b992c5326462fb764489ecc (diff)
downloadllvm-36f01909a0e29c1014301ed6835687a84bf0e9fa.zip
llvm-36f01909a0e29c1014301ed6835687a84bf0e9fa.tar.gz
llvm-36f01909a0e29c1014301ed6835687a84bf0e9fa.tar.bz2
[llvm] [Debuginfod] LLVM debuginfod server.
This implements a debuginfod server in llvm using the `DebuginfodCollection` and `DebuginfodServer` classes. This is tested with lit tests against the debuginfod-find client. The server scans 0 or more local directories for artifacts. It serves the debuginfod protocol over HTTP. Only the `executable` and `debuginfo` endpoints are supported (no `/source` endpoint). The server also uses the debuginfod client as a fallback, so it can hit the local debuginfod cache or federate to other known debuginfod servers. The client behavior is controllable through the standard environment variables (`DEBUGINFOD_URLS`, `DEBUGINFOD_CACHE_PATH`, `DEBUGINFOD_TIMEOUT`) The server implements on-demand collection updates as follows: If the build-id is not found by a local lookup, rescan immediately and look up the build-id again before returning 404. To protect against DoS attacks, do not rescan more frequently than once per N seconds (specified by `-m`). Lit tests are provided which test the `llvm-debuginfod-find` client against the `llvm-debuginfod` server. Reviewed By: mysterymath Differential Revision: https://reviews.llvm.org/D114846
Diffstat (limited to 'llvm/tools/llvm-objdump/llvm-objdump.cpp')
0 files changed, 0 insertions, 0 deletions