mirror of
https://github.com/XRPLF/rippled.git
synced 2026-09-27 15:28:03 +00:00
requireReadableFile proved a path readable with getFileContents, which loads the whole file into a std::string and then drops it. One of the three paths it checks is tls_client_key, so a private key was loaded to answer a question that does not need its contents. It now stats the path, rejects anything that is not a regular file, and opens it without reading. The message shape is unchanged: "[telemetry] <key> cannot be read: <path> - <reason>". A path naming a directory used to escape as an ios failure from the stream buffer, naming neither the config key nor the path. It is now rejected as "not a regular file" with both named. The new test covers that case; it fails against the old implementation and against a copy with the file-type branch removed. The runbook's quick start and disable sections both told the reader to run "cmake --preset default". No presets file is tracked, and the only preset Conan generates is conan-release, so each of those steps failed on its first command. Replaced with the flow BUILD.md documents, and noted that telemetry is the current default while still passing the flags.