Control: tags -1 + patch
On Sat, Aug 26, 2023 at 11:50:52PM +0200, наб wrote:
> GDB says
> │ 402 if (kind == DomainInfo::All) {
> │
> │ > 403 ret<<parts[1]<<" zonecount:"<<count;
> │
> │ 404 }
> │
> │ 405 else {
> │
> │ 406 ret<<"All zonecount:"<<count;
> │
> │ 407 }
> │
>
>
> But the function starts with
> │ 378 string DLListZones(const vector<string>&parts, Utility::pid_t
> ppid) │
> │ 379 {
> │
> │ 380 UeberBackend B;
> │
> │ 381 g_log<<Logger::Notice<<"Received request to list zones."<<endl;
> │
> ...
> │ 386 if (parts.size() > 1) {
> │
> │ 387 kind = DomainInfo::stringToKind(parts[1]);
> │
> │ 388 }
> │
> │ 389 else {
> │
> │ 390 kind = DomainInfo::All;
> │
> │ 391 }
> │
>
> So... (kind == DomainInfo::All) <=> (parts.size() == 0)
"(kind == DomainInfo::All) <=> (parts.size() == 1)" of course.Confirmed and fixed by 403s/1/0/ # pdns_control list-zones master All zonecount:0 # pdns_control list-zones slave All zonecount:0 # pdns_control list-zones native ws.co.ls. All zonecount:1 # pdns_control list-zones ws.co.ls. LIST-ZONES zonecount:1 Patch attached. Best,
--- pdns-4.7.1.orig/pdns/dynhandler.cc
+++ pdns-4.7.1/pdns/dynhandler.cc
@@ -400,7 +400,7 @@ string DLListZones(const vector<string>&
}
if (kind == DomainInfo::All) {
- ret<<parts[1]<<" zonecount:"<<count;
+ ret<<parts[0]<<" zonecount:"<<count;
}
else {
ret<<"All zonecount:"<<count;
signature.asc
Description: PGP signature

