RegEx engine improvements

I rebased this branch on the current beta branch.

testing (ran pihole checkout ftl new/regex_replytype). first test result here, due to topic relevance.

edit
thus tested reply=ip, dig result:

; <<>> DiG 9.16.4 <<>> fuk01.ps4.update.playstation.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 19237
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;fuk01.ps4.update.playstation.net. IN   A

;; ANSWER SECTION:
fuk01.ps4.update.playstation.net. 2 IN  A       192.168.2.57

;; Query time: 4 msec
;; SERVER: 192.168.2.57#53(192.168.2.57)
;; WHEN: Fri Sep 10 09:55:10 Romance Daylight Time 2021
;; MSG SIZE  rcvd: 77

tested reply=nodata, dig result:

; <<>> DiG 9.16.4 <<>> fuk01.ps4.update.playstation.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 14311
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;fuk01.ps4.update.playstation.net. IN   A

;; Query time: 6 msec
;; SERVER: 192.168.2.57#53(192.168.2.57)
;; WHEN: Fri Sep 10 10:35:18 Romance Daylight Time 2021
;; MSG SIZE  rcvd: 61

tested reply=nxdomain, dig result:

; <<>> DiG 9.16.4 <<>> fuk01.ps4.update.playstation.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 28488
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;fuk01.ps4.update.playstation.net. IN   A

;; Query time: 5 msec
;; SERVER: 192.168.2.57#53(192.168.2.57)
;; WHEN: Fri Sep 10 10:41:36 Romance Daylight Time 2021
;; MSG SIZE  rcvd: 61

all modes tested and working, replies as expected.
/edit

edit2
with (\.|^)ps4\.update\.playstation\.net$;reply=ip
dig AAAA fuk01.ps4.update.playstation.net
´´´
; <<>> DiG 9.16.4 <<>> AAAA fuk01.ps4.update.playstation.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51782
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;fuk01.ps4.update.playstation.net. IN AAAA

;; ANSWER SECTION:
fuk01.ps4.update.playstation.net. 2 IN AAAA 2a02:xxxx:yyyy:zzzz:9435:92d8:531d:b64a

;; Query time: 5 msec
;; SERVER: 192.168.2.57#53(192.168.2.57)
;; WHEN: Fri Sep 10 14:32:23 Romance Daylight Time 2021
;; MSG SIZE rcvd: 89
´´´

so this also produces a correct response.
/edit2

Thanks for your testing, the feature PR can be found here:


I should mention there is another option:

;reply=none

The new feature has already been reviewed and approved. It'll be part of the next Pi-hole release and is already part of the currently running beta.

Documentation update still outstanding.

Has been implemented in

2 posts were split to a new topic: Is there a way to block adclick.g.doubleclick.net ads

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.