]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
rec: Use the correct ECS address when proxy-protocol is enabled
authorRemi Gacogne <remi.gacogne@powerdns.com>
Mon, 19 Apr 2021 08:09:40 +0000 (10:09 +0200)
committerRemi Gacogne <remi.gacogne@powerdns.com>
Mon, 19 Apr 2021 08:09:40 +0000 (10:09 +0200)
pdns/pdns_recursor.cc

index 72588567aca192ab90999c247147b006bf188454..278e084207baaf9de4f15ad174d88bcf82e81495 100644 (file)
@@ -1620,7 +1620,7 @@ static void startDoResolve(void *p)
 #ifdef HAVE_FSTRM
     sr.setFrameStreamServers(t_frameStreamServers);
 #endif
-    sr.setQuerySource(dc->d_remote, g_useIncomingECS && !dc->d_ednssubnet.source.empty() ? boost::optional<const EDNSSubnetOpts&>(dc->d_ednssubnet) : boost::none);
+    sr.setQuerySource(dc->d_source, g_useIncomingECS && !dc->d_ednssubnet.source.empty() ? boost::optional<const EDNSSubnetOpts&>(dc->d_ednssubnet) : boost::none);
     sr.setQueryReceivedOverTCP(dc->d_tcp);
 
     bool tracedQuery=false; // we could consider letting Lua know about this too
@@ -1735,7 +1735,7 @@ static void startDoResolve(void *p)
 
       if (wantsRPZ && appliedPolicy.d_kind != DNSFilterEngine::PolicyKind::NoAction) {
 
-        if (t_pdl && t_pdl->policyHitEventFilter(dc->d_remote, dc->d_mdp.d_qname, QType(dc->d_mdp.d_qtype), dc->d_tcp, appliedPolicy, dc->d_policyTags, sr.d_discardedPolicies)) {
+        if (t_pdl && t_pdl->policyHitEventFilter(dc->d_source, dc->d_mdp.d_qname, QType(dc->d_mdp.d_qtype), dc->d_tcp, appliedPolicy, dc->d_policyTags, sr.d_discardedPolicies)) {
           /* reset to no match */
           appliedPolicy = DNSFilterEngine::Policy();
         }