]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Check return value of DNSCryptoKeyEngine::makeFromPEMString() and 11326/head
authorOtto Moerbeek <otto.moerbeek@open-xchange.com>
Mon, 14 Feb 2022 19:49:40 +0000 (20:49 +0100)
committerOtto Moerbeek <otto.moerbeek@open-xchange.com>
Mon, 14 Feb 2022 19:49:40 +0000 (20:49 +0100)
do not implement non-implemented features with an empty body.

pdns/decafsigners.cc
pdns/pdnsutil.cc
pdns/sodiumsigners.cc

index cce6fd0479e3a453375e48c05e6c4fcbe741c4db..3b348e3c8409a6e1e13ed9e5ce522aed9fd9985c 100644 (file)
@@ -26,8 +26,6 @@ public:
   int getBits() const override;
   void fromISCMap(DNSKEYRecordContent& drc, std::map<std::string, std::string>& stormap) override;
   void fromPublicKeyString(const std::string& content) override;
-  void fromPEMString(DNSKEYRecordContent& drc, const std::string& raw) override
-  {}
 
   static std::unique_ptr<DNSCryptoKeyEngine> maker(unsigned int algorithm)
   {
index 6b99588d50dd3760d90b71a1a6676e94f4d923ad..37660105fff94e89fb563733ea3a40d5d6a38744 100644 (file)
@@ -3296,6 +3296,10 @@ try
     DNSSECPrivateKey dpk;
     DNSKEYRecordContent drc;
     shared_ptr<DNSCryptoKeyEngine> key(DNSCryptoKeyEngine::makeFromPEMString(drc, raw));
+    if (!key) {
+      cerr << "Could not convert key from PEM to internal format" << endl;
+      return 1;
+    }
     dpk.setKey(key);
 
     dpk.d_algorithm = pdns_stou(cmds.at(3));
index 90ed36fb122dc7675de548d6ead2f07bbca34964..ee142a6c1c01962d8cad4e3c7e8fd93b34459144 100644 (file)
@@ -21,8 +21,6 @@ public:
   int getBits() const override;
   void fromISCMap(DNSKEYRecordContent& drc, std::map<std::string, std::string>& stormap) override;
   void fromPublicKeyString(const std::string& content) override;
-  void fromPEMString(DNSKEYRecordContent& drc, const std::string& raw) override
-  {}
 
   static std::unique_ptr<DNSCryptoKeyEngine> maker(unsigned int algorithm)
   {