20#include <xrpld/app/main/Application.h> 
   21#include <xrpld/app/main/NodeIdentity.h> 
   22#include <xrpld/app/rdb/Wallet.h> 
   23#include <xrpld/core/Config.h> 
   24#include <xrpld/core/ConfigSections.h> 
   31    boost::program_options::variables_map 
const& cmdline)
 
   35    if (cmdline.count(
"nodeid"))
 
   40            Throw<std::runtime_error>(
"Invalid 'nodeid' in command line");
 
   44        seed = parseBase58<Seed>(
 
   48            Throw<std::runtime_error>(
"Invalid [" SECTION_NODE_SEED
 
   49                                      "] in configuration file");
 
   57        return {publicKey, secretKey};
 
   62    if (cmdline.count(
"newnodeid") != 0)
 
 
virtual Config & config()=0
 
virtual DatabaseCon & getWalletDB()=0
Retrieve the "wallet database".
 
bool exists(std::string const &name) const
Returns true if a section with the given name exists.
 
Section & section(std::string const &name)
Returns the section with the given name.
 
LockedSociSession checkoutDb()
 
std::vector< std::string > const & lines() const
Returns all the lines in the section.
 
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
 
std::pair< PublicKey, SecretKey > getNodeIdentity(Application &app, boost::program_options::variables_map const &cmdline)
The cryptographic credentials identifying this server instance.
 
PublicKey derivePublicKey(KeyType type, SecretKey const &sk)
Derive the public key from a secret key.
 
SecretKey generateSecretKey(KeyType type, Seed const &seed)
Generate a new secret key deterministically.
 
void clearNodeIdentity(soci::session &session)
Delete any saved public/private key associated with this node.
 
std::optional< Seed > parseGenericSeed(std::string const &str, bool rfc1751=true)
Attempt to parse a string as a seed.