* Receives an open file handle and writes this key's contents to the
* file.
*
- * \param[in] fp An open file handle for writing.
+ * \param[in] outputFile An open file handle for writing.
*
* \exception std::runtime_error In case of OpenSSL errors.
*/
- void convertToPEM(std::FILE& fp) const override;
+ void convertToPEMFile(std::FILE& outputFile) const override;
#endif
[[nodiscard]] storvector_t convertToISCVector() const override;
}
}
-void DecafED25519DNSCryptoKeyEngine::convertToPEM(std::FILE& fp) const
+void DecafED25519DNSCryptoKeyEngine::convertToPEMFile(std::FILE& outputFile) const
{
auto key = std::unique_ptr<EVP_PKEY, void (*)(EVP_PKEY*)>(EVP_PKEY_new_raw_private_key(EVP_PKEY_ED25519, nullptr, d_seckey, DECAF_EDDSA_25519_PRIVATE_BYTES), EVP_PKEY_free);
if (key == nullptr) {
throw runtime_error(getName() + ": Could not create private key from buffer");
}
- auto ret = PEM_write_PrivateKey(&fp, key.get(), nullptr, nullptr, 0, nullptr, nullptr);
+ auto ret = PEM_write_PrivateKey(&outputFile, key.get(), nullptr, nullptr, 0, nullptr, nullptr);
if (ret == 0) {
throw runtime_error(getName() + ": Could not convert private key to PEM");
}
* Receives an open file handle and writes this key's contents to the
* file.
*
- * \param[in] fp An open file handle for writing.
+ * \param[in] outputFile An open file handle for writing.
*
* \exception std::runtime_error In case of OpenSSL errors.
*/
- void convertToPEM(std::FILE& fp) const override;
+ void convertToPEMFile(std::FILE& outputFile) const override;
#endif
storvector_t convertToISCVector() const override;
}
}
-void DecafED448DNSCryptoKeyEngine::convertToPEM(std::FILE& fp) const
+void DecafED448DNSCryptoKeyEngine::convertToPEMFile(std::FILE& outputFile) const
{
auto key = std::unique_ptr<EVP_PKEY, void (*)(EVP_PKEY*)>(EVP_PKEY_new_raw_private_key(EVP_PKEY_ED448, nullptr, d_seckey, DECAF_EDDSA_448_PRIVATE_BYTES), EVP_PKEY_free);
if (key == nullptr) {
throw runtime_error(getName() + ": Could not create private key from buffer");
}
- auto ret = PEM_write_PrivateKey(&fp, key.get(), nullptr, nullptr, 0, nullptr, nullptr);
+ auto ret = PEM_write_PrivateKey(&outputFile, key.get(), nullptr, nullptr, 0, nullptr, nullptr);
if (ret == 0) {
throw runtime_error(getName() + ": Could not convert private key to PEM");
}
[[nodiscard]] virtual storvector_t convertToISCVector() const =0;
[[nodiscard]] std::string convertToISC() const ;
- virtual void convertToPEM(std::FILE& fp) const
+ virtual void convertToPEMFile(std::FILE& /* outputFile */) const
{
throw std::runtime_error(getName() + ": Conversion to PEM not supported");
};
*
* \exception std::runtime_error In case of OpenSSL errors.
*/
- void convertToPEM(std::FILE& outputFile) const override;
+ void convertToPEMFile(std::FILE& outputFile) const override;
[[nodiscard]] storvector_t convertToISCVector() const override;
#endif
}
-void OpenSSLRSADNSCryptoKeyEngine::convertToPEM(std::FILE& outputFile) const
+void OpenSSLRSADNSCryptoKeyEngine::convertToPEMFile(std::FILE& outputFile) const
{
#if OPENSSL_VERSION_MAJOR >= 3
if (PEM_write_PrivateKey(&outputFile, d_key.get(), nullptr, nullptr, 0, nullptr, nullptr) == 0) {
*
* \exception std::runtime_error In case of OpenSSL errors.
*/
- void convertToPEM(std::FILE& outputFile) const override;
+ void convertToPEMFile(std::FILE& outputFile) const override;
[[nodiscard]] storvector_t convertToISCVector() const override;
[[nodiscard]] std::string hash(const std::string& message) const override;
#endif
}
-void OpenSSLECDSADNSCryptoKeyEngine::convertToPEM(std::FILE& outputFile) const
+void OpenSSLECDSADNSCryptoKeyEngine::convertToPEMFile(std::FILE& outputFile) const
{
#if OPENSSL_VERSION_MAJOR >= 3
if (PEM_write_PrivateKey(&outputFile, d_eckey.get(), nullptr, nullptr, 0, nullptr, nullptr) == 0) {
*
* \exception std::runtime_error In case of OpenSSL errors.
*/
- void convertToPEM(std::FILE& outputFile) const override;
+ void convertToPEMFile(std::FILE& outputFile) const override;
[[nodiscard]] storvector_t convertToISCVector() const override;
[[nodiscard]] std::string sign(const std::string& msg) const override;
}
}
-void OpenSSLEDDSADNSCryptoKeyEngine::convertToPEM(std::FILE& outputFile) const
+void OpenSSLEDDSADNSCryptoKeyEngine::convertToPEMFile(std::FILE& outputFile) const
{
auto ret = PEM_write_PrivateKey(&outputFile, d_edkey.get(), nullptr, nullptr, 0, nullptr, nullptr);
if (ret == 0) {
string zone = cmds.at(1);
auto id = pdns::checked_stoi<unsigned int>(cmds.at(2));
DNSSECPrivateKey dpk = dk.getKeyById(DNSName(zone), id);
- dpk.getKey()->convertToPEM(*stdout);
+ dpk.getKey()->convertToPEMFile(*stdout);
}
else if (cmds.at(0) == "increase-serial") {
if (cmds.size() < 2) {
* Receives an open file handle and writes this key's contents to the
* file.
*
- * \param[in] fp An open file handle for writing.
+ * \param[in] outputFile An open file handle for writing.
*
* \exception std::runtime_error In case of OpenSSL errors.
*/
- void convertToPEM(std::FILE& fp) const override;
+ void convertToPEMFile(std::FILE& outputFile) const override;
#endif
[[nodiscard]] storvector_t convertToISCVector() const override;
memcpy(d_seckey + secKeyLen, d_pubkey, pubKeyLen);
}
-void SodiumED25519DNSCryptoKeyEngine::convertToPEM(std::FILE& fp) const
+void SodiumED25519DNSCryptoKeyEngine::convertToPEMFile(std::FILE& outputFile) const
{
auto key = std::unique_ptr<EVP_PKEY, void (*)(EVP_PKEY*)>(EVP_PKEY_new_raw_private_key(EVP_PKEY_ED25519, nullptr, d_seckey, crypto_sign_ed25519_SEEDBYTES), EVP_PKEY_free);
if (key == nullptr) {
throw runtime_error(getName() + ": Could not create private key from buffer");
}
- auto ret = PEM_write_PrivateKey(&fp, key.get(), nullptr, nullptr, 0, nullptr, nullptr);
+ auto ret = PEM_write_PrivateKey(&outputFile, key.get(), nullptr, nullptr, 0, nullptr, nullptr);
if (ret == 0) {
throw runtime_error(getName() + ": Could not convert private key to PEM");
}
std::string dckePEMOutput{};
dckePEMOutput.resize(buflen);
unique_ptr<std::FILE, decltype(&std::fclose)> dckePEMOutputFp{fmemopen(static_cast<void*>(dckePEMOutput.data()), dckePEMOutput.length() - 1, "w"), &std::fclose};
- dcke->convertToPEM(*dckePEMOutputFp);
+ dcke->convertToPEMFile(*dckePEMOutputFp);
std::fflush(dckePEMOutputFp.get());
dckePEMOutput.resize(std::ftell(dckePEMOutputFp.get()));
std::string pemKeyOutput{};
pemKeyOutput.resize(buflen);
unique_ptr<std::FILE, decltype(&std::fclose)> pemKeyOutputFp{fmemopen(static_cast<void*>(pemKeyOutput.data()), pemKeyOutput.length() - 1, "w"), &std::fclose};
- pemKey->convertToPEM(*pemKeyOutputFp);
+ pemKey->convertToPEMFile(*pemKeyOutputFp);
std::fflush(pemKeyOutputFp.get());
pemKeyOutput.resize(std::ftell(pemKeyOutputFp.get()));