ldc: Update from 1.8 to 1.9
[termux-packages] / disabled-packages / apt-updated / apt-pkg-contrib-srvrec.cc.patch
CommitLineData
f87fe8f9
FF
1diff -u -r ../apt-1.1.3/apt-pkg/contrib/srvrec.cc ./apt-pkg/contrib/srvrec.cc
2--- ../apt-1.1.3/apt-pkg/contrib/srvrec.cc 2015-11-30 03:08:24.000000000 -0500
3+++ ./apt-pkg/contrib/srvrec.cc 2015-12-03 16:21:54.397715576 -0500
4@@ -40,14 +40,24 @@
5 struct servent *s_ent = nullptr;
6 std::vector<char> buf(1024);
7
8+#ifdef __ANDROID__
9+ s_ent = getservbyport(htons(port), "tcp");
10+ if (s_ent == nullptr) return false;
11+#else
12 res = getservbyport_r(htons(port), "tcp", &s_ent_buf, buf.data(), buf.size(), &s_ent);
13 if (res != 0 || s_ent == nullptr)
14 return false;
15+#endif
16
17 strprintf(target, "_%s._tcp.%s", s_ent->s_name, host.c_str());
18 return GetSrvRecords(target, Result);
19 }
20
21+#ifdef __ANDROID__
22+extern "C" int __dn_skipname(const unsigned char* comp_dn, const unsigned char* eom);
23+static inline int dn_skipname(const unsigned char* a, const unsigned char* b) { return __dn_skipname(a,b); }
24+#endif
25+
26 bool GetSrvRecords(std::string name, std::vector<SrvRec> &Result)
27 {
28 unsigned char answer[PACKETSZ];