Skip to content

fix: GCC 13+ build and RPC passwords with special characters#23

Open
JohnnyLawDGB wants to merge 1 commit intoDigiAsset-Core:developmentfrom
JohnnyLawDGB:fix/gcc13-and-rpc-url-encoding
Open

fix: GCC 13+ build and RPC passwords with special characters#23
JohnnyLawDGB wants to merge 1 commit intoDigiAsset-Core:developmentfrom
JohnnyLawDGB:fix/gcc13-and-rpc-url-encoding

Conversation

@JohnnyLawDGB
Copy link
Copy Markdown

Summary

  • Add missing #include <cstdint> to Blob.h — GCC 13 (Ubuntu 24.04) no longer implicitly includes it, causing build failure on uint8_t references
  • URL-encode rpcuser and rpcpassword when constructing the HTTP basic auth URL — passwords containing /, +, =, or @ broke URL parsing and caused false "DigiByte Core Offline" errors

Context

Discovered while building on Ubuntu 24.04 LTS with GCC 13.3.0. The cstdint issue is a known GCC 13 change affecting many C++ projects. The URL encoding issue affects anyone whose digibyte.conf has an auto-generated rpcpassword containing base64 characters.

Test plan

  • Verified build succeeds on Ubuntu 24.04 with GCC 13.3.0
  • Verified RPC connection works with password containing /, +, =
  • Verified chain sync starts successfully after fixes

🤖 Generated with Claude Code

- Add missing #include <cstdint> to Blob.h — GCC 13 (Ubuntu 24.04) no
  longer implicitly includes it via other headers, causing build failure.

- URL-encode rpcuser and rpcpassword when constructing the HTTP basic auth
  URL for jsonrpc::HttpClient. Passwords containing /, +, =, or @ broke
  the URL parsing and caused "DigiByte Core Offline" errors even when the
  node was running and the credentials were correct.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant