25 lines
1.1 KiB
Diff
25 lines
1.1 KiB
Diff
commit c6b1e59f3b413493551910a7d0a3e9206d488599
|
|
Author: Chris Hofstaedtler <chris.hofstaedtler@deduktiva.com>
|
|
Date: Sat Apr 6 23:51:35 2024 +0200
|
|
|
|
auth dnsproxy: fix build on s390x
|
|
|
|
--- a/pdns/dnsproxy.cc
|
|
+++ b/pdns/dnsproxy.cc
|
|
@@ -240,10 +240,11 @@ void DNSProxy::mainloop()
|
|
memcpy(&dHead, &buffer[0], sizeof(dHead));
|
|
{
|
|
auto conntrack = d_conntrack.lock();
|
|
-#if BYTE_ORDER == BIG_ENDIAN
|
|
- // this is needed because spoof ID down below does not respect the native byteorder
|
|
- d.id = (256 * (uint16_t)buffer[1]) + (uint16_t)buffer[0];
|
|
-#endif
|
|
+ if (BYTE_ORDER == BIG_ENDIAN) {
|
|
+ // this is needed because spoof ID down below does not respect the native byteorder
|
|
+ dHead.id = (256 * (uint16_t)buffer[1]) + (uint16_t)buffer[0];
|
|
+ }
|
|
+
|
|
auto iter = conntrack->find(dHead.id ^ d_xor);
|
|
if (iter == conntrack->end()) {
|
|
g_log << Logger::Error << "Discarding untracked packet from recursor backend with id " << (dHead.id ^ d_xor) << ". Conntrack table size=" << conntrack->size() << endl;
|