66 lines
2.7 KiB
Diff
66 lines
2.7 KiB
Diff
diff -uNr qt-everywhere-src-5.11.1/qtbase/src/network/kernel/qhostinfo_unix.cpp qt-everywhere-src-5.11.1.mod/qtbase/src/network/kernel/qhostinfo_unix.cpp
|
|
--- qt-everywhere-src-5.11.1/qtbase/src/network/kernel/qhostinfo_unix.cpp 2018-06-15 10:29:31.000000000 +0300
|
|
+++ qt-everywhere-src-5.11.1.mod/qtbase/src/network/kernel/qhostinfo_unix.cpp 2018-09-15 15:10:50.021336038 +0300
|
|
@@ -84,6 +84,61 @@
|
|
NeedResNInit
|
|
};
|
|
|
|
+#include <sys/types.h>
|
|
+#include <linux/in.h>
|
|
+
|
|
+/* res_state: the global state used by the resolver stub. */
|
|
+#define MAXNS 3 /* max # name servers we'll track */
|
|
+#define MAXDFLSRCH 3 /* # default domain levels to try */
|
|
+#define MAXDNSRCH 6 /* max # domains in search path */
|
|
+#define MAXRESOLVSORT 10 /* number of net to sort on */
|
|
+
|
|
+struct __res_state {
|
|
+ int retrans; /* retransmition time interval */
|
|
+ int retry; /* number of times to retransmit */
|
|
+ unsigned long options; /* option flags - see below. */
|
|
+ int nscount; /* number of name servers */
|
|
+ struct sockaddr_in
|
|
+ nsaddr_list[MAXNS]; /* address of name server */
|
|
+ unsigned short id; /* current message id */
|
|
+ /* 2 byte hole here. */
|
|
+ char *dnsrch[MAXDNSRCH+1]; /* components of domain to search */
|
|
+ char defdname[256]; /* default domain (deprecated) */
|
|
+ unsigned long pfcode; /* RES_PRF_ flags - see below. */
|
|
+ unsigned ndots:4; /* threshold for initial abs. query */
|
|
+ unsigned nsort:4; /* number of elements in sort_list[] */
|
|
+ unsigned ipv6_unavail:1; /* connecting to IPv6 server failed */
|
|
+ unsigned unused:23;
|
|
+ struct {
|
|
+ struct in_addr addr;
|
|
+ uint32_t mask;
|
|
+ } sort_list[MAXRESOLVSORT];
|
|
+ /* 4 byte hole here on 64-bit architectures. */
|
|
+ void * __glibc_unused_qhook;
|
|
+ void * __glibc_unused_rhook;
|
|
+ int res_h_errno; /* last one set for this context */
|
|
+ int _vcsock; /* PRIVATE: for res_send VC i/o */
|
|
+ unsigned int _flags; /* PRIVATE: see below */
|
|
+ /* 4 byte hole here on 64-bit architectures. */
|
|
+ union {
|
|
+ char pad[52]; /* On an i386 this means 512b total. */
|
|
+ struct {
|
|
+ uint16_t nscount;
|
|
+ uint16_t nsmap[MAXNS];
|
|
+ int nssocks[MAXNS];
|
|
+ uint16_t nscount6;
|
|
+ uint16_t nsinit;
|
|
+ struct sockaddr_in6 *nsaddrs[MAXNS];
|
|
+#ifdef _LIBC
|
|
+ unsigned long long int __glibc_extension_index
|
|
+ __attribute__((packed));
|
|
+#else
|
|
+ unsigned int __glibc_reserved[2];
|
|
+#endif
|
|
+ } _ext;
|
|
+ } _u;
|
|
+};
|
|
+
|
|
typedef struct __res_state *res_state_ptr;
|
|
|
|
typedef int (*res_init_proto)(void);
|