]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
tidy: avoid pointer math
authorPeter van Dijk <peter.van.dijk@powerdns.com>
Tue, 16 Jan 2024 14:14:28 +0000 (15:14 +0100)
committerPeter van Dijk <peter.van.dijk@powerdns.com>
Tue, 16 Jan 2024 14:14:28 +0000 (15:14 +0100)
pdns/lua-record.cc

index 388cf01205c5a3cd254168f8fa8a872ab7b57978..d844b19569e5de00fa7c46bdf5bb9bd4345b222b 100644 (file)
@@ -766,8 +766,12 @@ static void setupLuaRecords(LuaContext& lua)
           }
           ret.resize(ret.size() - 1); // remove trailing dot after last octet
           return ret;
-        } else if(input.length() >= 8 && sscanf(input.c_str()+(input.length()-8), "%02x%02x%02x%02x", &x1, &x2, &x3, &x4)==4) {
-          return std::to_string(x1)+"."+std::to_string(x2)+"."+std::to_string(x3)+"."+std::to_string(x4);
+        }
+        if(input.length() >= 8) {
+          auto last8 = input.substr(input.length()-8);
+          if(sscanf(last8.c_str(), "%02x%02x%02x%02x", &x1, &x2, &x3, &x4)==4) {
+            return std::to_string(x1)+"."+std::to_string(x2)+"."+std::to_string(x3)+"."+std::to_string(x4);
+          }
         }
       }
       return allZerosIP;