qnativesocketengine_unix.cpp

Absolute File Name:/home/qt/qt5_coco/qt5/qtbase/src/network/socket/qnativesocketengine_unix.cpp
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4static inline void qt_socket_getPortAndAddress(const qt_sockaddr *s, quint16 *port, QHostAddress *addr)-
5{-
6 if (s->a.sa_family == 10
s->a.sa_family == 10Description
TRUEevaluated 1789 times by 14 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
FALSEevaluated 8249 times by 30 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • ...
) {
1789-8249
7 Q_IPV6ADDR tmp;-
8 memcpy(&tmp, &s->a6.sin6_addr, sizeof(tmp));-
9 if (addr
addrDescription
TRUEevaluated 1789 times by 14 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
FALSEnever evaluated
) {
0-1789
10 QHostAddress tmpAddress;-
11 tmpAddress.setAddress(tmp);-
12 *addr = tmpAddress;-
13 if (s->a6.sin6_scope_id
s->a6.sin6_scope_idDescription
TRUEevaluated 30 times by 2 tests
Evaluated by:
  • tst_QTcpServer
  • tst_QUdpSocket
FALSEevaluated 1759 times by 14 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
)
30-1759
14 {30
char scopeid[16];
if (::if_indextoname(s->a6.sin6_scope_id, scopeid)) {
addr->setScopeId(QLatin1String(scopeid));
} elseaddr->setScopeId(QStringQNetworkInterface::numberinterfaceNameFromIndex(s->a6.sin6_scope_id));
executed 30 times by 2 tests: addr->setScopeId(QNetworkInterface::interfaceNameFromIndex(s->a6.sin6_scope_id));
Executed by:
  • tst_QTcpServer
  • tst_QUdpSocket
15 }}
executed 1789 times by 14 tests: end of block
Executed by:
  • tst_NetworkSelfTest
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
1789
16 if (port
portDescription
TRUEevaluated 1789 times by 14 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
FALSEnever evaluated
)
0-1789
17 *
executed 1789 times by 14 tests: *port = ntohs(s->a6.sin6_port);
Executed by:
  • tst_NetworkSelfTest
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
port = ntohs(s->a6.sin6_port);
executed 1789 times by 14 tests: *port = ntohs(s->a6.sin6_port);
Executed by:
  • tst_NetworkSelfTest
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
1789
18 return;
executed 1789 times by 14 tests: return;
Executed by:
  • tst_NetworkSelfTest
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
1789
19 }-
20-
21 if (port
portDescription
TRUEevaluated 8249 times by 30 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • ...
FALSEnever evaluated
)
0-8249
22 *
executed 8249 times by 30 tests: *port = ntohs(s->a4.sin_port);
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • ...
port = ntohs(s->a4.sin_port);
executed 8249 times by 30 tests: *port = ntohs(s->a4.sin_port);
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • ...
8249
23 if (addr
addrDescription
TRUEevaluated 8249 times by 30 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • ...
FALSEnever evaluated
) {
0-8249
24 QHostAddress tmpAddress;-
25 tmpAddress.setAddress(ntohl(s->a4.sin_addr.s_addr));-
26 *addr = tmpAddress;-
27 }}
executed 8249 times by 30 tests: end of block
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • ...
8249
inline uint QNativeSocketEnginePrivate::scopeIdFromString(const QString &scopeid)
{
if (scopeid.isEmpty())
return 0;
bool ok;
uint id = scopeid.toUInt(&ok);
if (!ok)
id = ::if_nametoindex(scopeid.toLatin1());
return id;}
executed 8249 times by 30 tests: end of block
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • ...
29-
30static void convertToLevelAndOption(QNativeSocketEngine::SocketOption opt,-
31 QAbstractSocket::NetworkLayerProtocol socketProtocol, int &level, int &n)-
32{-
33 n = -1;-
34 level = 1;-
35-
36 switch (opt) {-
37 case QNativeSocketEngine::NonBlockingSocketOption:-
38 case QNativeSocketEngine::BindExclusively:-
39 do { ((!(false)) ? qt_assert_x("Q_UNREACHABLE()", "Q_UNREACHABLE was reached",__FILE__,158145) : qt_noop()); __builtin_unreachable(); } while (0);-
40-
41 case QNativeSocketEngine::BroadcastSocketOption:-
42 n = 6;-
43 break;-
44 case QNativeSocketEngine::ReceiveBufferSocketOption:-
45 n = 8;-
46 break;-
47 case QNativeSocketEngine::SendBufferSocketOption:-
48 n = 7;-
49 break;-
50 case QNativeSocketEngine::AddressReusable:-
51 n = 2;-
52 break;-
53 case QNativeSocketEngine::ReceiveOutOfBandData:-
54 n = 10;-
55 break;-
56 case QNativeSocketEngine::LowDelayOption:-
57 level = IPPROTO_TCP;-
58 n = 1;-
59 break;-
60 case QNativeSocketEngine::KeepAliveOption:-
61 n = 9;-
62 break;-
63 case QNativeSocketEngine::MulticastTtlOption:-
64 if (socketProtocol == QAbstractSocket::IPv6Protocol || socketProtocol == QAbstractSocket::AnyIPProtocol) {-
65 level = IPPROTO_IPV6;-
66 n = 18;-
67 } else-
68 {-
69 level = IPPROTO_IP;-
70 n = 33;-
71 }-
72 break;-
73 case QNativeSocketEngine::MulticastLoopbackOption:-
74 if (socketProtocol == QAbstractSocket::IPv6Protocol || socketProtocol == QAbstractSocket::AnyIPProtocol) {-
75 level = IPPROTO_IPV6;-
76 n = 19;-
77 } else-
78 {-
79 level = IPPROTO_IP;-
80 n = 34;-
81 }-
82 break;-
83 case QNativeSocketEngine::TypeOfServiceOption:-
84 if (socketProtocol == QAbstractSocket::IPv4Protocol) {-
85 level = IPPROTO_IP;-
86 n = 1;-
87 }-
88 break;-
89 case QNativeSocketEngine::ReceivePacketInformation:-
90 if (socketProtocol == QAbstractSocket::IPv6Protocol || socketProtocol == QAbstractSocket::AnyIPProtocol) {-
91 level = IPPROTO_IPV6;-
92 n = 49;-
93 } else if (socketProtocol == QAbstractSocket::IPv4Protocol) {-
94 level = IPPROTO_IP;-
95-
96 n = 8;-
97-
98-
99-
100-
101-
102 }-
103 break;-
104 case QNativeSocketEngine::ReceiveHopLimit:-
105 if (socketProtocol == QAbstractSocket::IPv6Protocol || socketProtocol == QAbstractSocket::AnyIPProtocol) {-
106 level = IPPROTO_IPV6;-
107 n = 51;-
108 } else if (socketProtocol == QAbstractSocket::IPv4Protocol) {-
109-
110 level = IPPROTO_IP;-
111 n = 12;-
112-
113 }-
114 break;-
115 }-
116}-
117-
118-
119-
120-
121-
122-
123bool QNativeSocketEnginePrivate::createNewSocket(QAbstractSocket::SocketType socketType,-
124 QAbstractSocket::NetworkLayerProtocol &socketProtocol)-
125{-
126 int protocol = (socketProtocol == QAbstractSocket::IPv6Protocol || socketProtocol == QAbstractSocket::AnyIPProtocol) ? 10 : 2;-
127 int type = (socketType == QAbstractSocket::UdpSocket) ? SOCK_DGRAM : SOCK_STREAM;-
128-
129 int socket = qt_safe_socket(protocol, type, 0, 04000);-
130 if (socket < 0 && socketProtocol == QAbstractSocket::AnyIPProtocol && (*__errno_location ()) == 97) {-
131 protocol = 2;-
132 socket = qt_safe_socket(protocol, type, 0, 04000);-
133 socketProtocol = QAbstractSocket::IPv4Protocol;-
134 }-
135-
136 if (socket < 0) {-
137 int ecopy = (*__errno_location ());-
138 switch (ecopy) {-
139 case 93:-
140 case 97:-
141 case 22:-
142 setError(QAbstractSocket::UnsupportedSocketOperationError, ProtocolUnsupportedErrorString);-
143 break;-
144 case 23:-
145 case 24:-
146 case 105:-
147 case 12:-
148 setError(QAbstractSocket::SocketResourceError, ResourceErrorString);-
149 break;-
150 case 13:-
151 setError(QAbstractSocket::SocketAccessError, AccessErrorString);-
152 break;-
153 default:-
154 break;-
155 }-
156-
157-
158-
159-
160-
161-
162-
163 return false;-
164 }-
165-
166-
167-
168-
169-
170-
171 socketDescriptor = socket;-
172 if (socket != -1) {-
173 this->socketProtocol = socketProtocol;-
174 this->socketType = socketType;-
175 }-
176 return true;-
177}-
178-
179-
180-
181-
182int QNativeSocketEnginePrivate::option(QNativeSocketEngine::SocketOption opt) const-
183{-
184 const QNativeSocketEngine * const q = q_func();-
185 if (!q->isValid())-
186 return -1;-
187-
188-
189 if (opt == QNativeSocketEngine::BindExclusively || opt == QNativeSocketEngine::NonBlockingSocketOption-
190 || opt == QNativeSocketEngine::BroadcastSocketOption)-
191 return -1;-
192-
193 int n, level;-
194 int v = -1;-
195 socklen_t len = sizeof(v);-
196-
197 convertToLevelAndOption(opt, socketProtocol, level, n);-
198 if (n != -1 && ::getsockopt(socketDescriptor, level, n, (char *) &v, &len) != -1)-
199 return v;-
200-
201 return -1;-
202}-
203-
204-
205-
206-
207-
208bool QNativeSocketEnginePrivate::setOption(QNativeSocketEngine::SocketOption opt, int v)-
209{-
210 QNativeSocketEngine * const q = q_func();-
211 if (!q->isValid())-
212 return false;-
213-
214-
215 switch (opt) {-
216 case QNativeSocketEngine::NonBlockingSocketOption: {-
217-
218-
219 int flags = ::fcntl(socketDescriptor, 3, 0);-
220 if (flags == -1) {-
221-
222-
223-
224 return false;-
225 }-
226 if (::fcntl(socketDescriptor, 4, flags | 04000) == -1) {-
227-
228-
229-
230 return false;-
231 }-
232 return true;-
233 }-
234 case QNativeSocketEngine::BindExclusively:-
235 return true;-
236-
237 default:-
238 break;-
239 }-
240-
241 int n, level;-
242 convertToLevelAndOption(opt, socketProtocol, level, n);-
243 return ::setsockopt(socketDescriptor, level, n, (char *) &v, sizeof(v)) == 0;-
244}-
245-
246bool QNativeSocketEnginePrivate::nativeConnect(const QHostAddress &addr, quint16 port)-
247{-
248-
249-
250-
251-
252 qt_sockaddr aa;-
253 socklen_t sockAddrSize;-
254 setPortAndAddress(port, addr, &aa, &sockAddrSize);-
255-
256 int connectResult = qt_safe_connect(socketDescriptor, &aa.a, sockAddrSize);-
257-
258-
259-
260 if (connectResult == -1) {-
261 switch ((*__errno_location ())) {-
262 case 106:-
263 socketState = QAbstractSocket::ConnectedState;-
264 break;-
265 case 111:-
266 case 22:-
267 setError(QAbstractSocket::ConnectionRefusedError, ConnectionRefusedErrorString);-
268 socketState = QAbstractSocket::UnconnectedState;-
269 break;-
270 case 110:-
271 setError(QAbstractSocket::NetworkError, ConnectionTimeOutErrorString);-
272 break;-
273 case 113:-
274 setError(QAbstractSocket::NetworkError, HostUnreachableErrorString);-
275 socketState = QAbstractSocket::UnconnectedState;-
276 break;-
277 case 101:-
278 setError(QAbstractSocket::NetworkError, NetworkUnreachableErrorString);-
279 socketState = QAbstractSocket::UnconnectedState;-
280 break;-
281 case 98:-
282 setError(QAbstractSocket::NetworkError, AddressInuseErrorString);-
283 break;-
284 case 115:-
285 case 114:-
286 setError(QAbstractSocket::UnfinishedSocketOperationError, InvalidSocketErrorString);-
287 socketState = QAbstractSocket::ConnectingState;-
288 break;-
289 case 11:-
290 setError(QAbstractSocket::UnfinishedSocketOperationError, InvalidSocketErrorString);-
291 break;-
292 case 13:-
293 case 1:-
294 setError(QAbstractSocket::SocketAccessError, AccessErrorString);-
295 socketState = QAbstractSocket::UnconnectedState;-
296 break;-
297 case 97:-
298 case 9:-
299 case 14:-
300 case 88:-
301 socketState = QAbstractSocket::UnconnectedState;-
302 default:-
303 break;-
304 }-
305-
306 if (socketState != QAbstractSocket::ConnectedState) {-
307-
308-
309-
310-
311-
312-
313 return false;-
314 }-
315 }-
316-
317-
318-
319-
320-
321-
322 socketState = QAbstractSocket::ConnectedState;-
323 return true;-
324}-
325-
326bool QNativeSocketEnginePrivate::nativeBind(const QHostAddress &address, quint16 port)-
327{-
328 qt_sockaddr aa;-
329 socklen_t sockAddrSize;-
330 setPortAndAddress(port, address, &aa, &sockAddrSize);-
331-
332-
333 if (aa.a.sa_family == 10) {-
334 int ipv6only = 0;-
335 if (address.protocol() == QAbstractSocket::IPv6Protocol)-
336 ipv6only = 1;-
337-
338 ::setsockopt(socketDescriptor, IPPROTO_IPV6, 26, (char*)&ipv6only, sizeof(ipv6only) );-
339 }-
340-
341-
342 int bindResult = ::bind(socketDescriptor, &aa.a, sockAddrSize);-
343 if (bindResult < 0 && (*__errno_location ()) == 97 && address.protocol() == QAbstractSocket::AnyIPProtocol) {-
344-
345 aa.a4.sin_family = 2;-
346 aa.a4.sin_port = htons(port);-
347 aa.a4.sin_addr.s_addr = htonl(address.toIPv4Address());-
348 sockAddrSize = sizeof(aa.a4);-
349 bindResult = ::bind(socketDescriptor, &aa.a, sockAddrSize);-
350 }-
351-
352 if (bindResult < 0) {-
353-
354-
355-
356 switch((*__errno_location ())) {-
357 case 98:-
358 setError(QAbstractSocket::AddressInUseError, AddressInuseErrorString);-
359 break;-
360 case 13:-
361 setError(QAbstractSocket::SocketAccessError, AddressProtectedErrorString);-
362 break;-
363 case 22:-
364 setError(QAbstractSocket::UnsupportedSocketOperationError, OperationUnsupportedErrorString);-
365 break;-
366 case 99:-
367 setError(QAbstractSocket::SocketAddressNotAvailableError, AddressNotAvailableErrorString);-
368 break;-
369 default:-
370 break;-
371 }-
372-
373-
374-
375-
376-
377-
378 return false;-
379 }-
380-
381-
382-
383-
384-
385 socketState = QAbstractSocket::BoundState;-
386 return true;-
387}-
388-
389bool QNativeSocketEnginePrivate::nativeListen(int backlog)-
390{-
391 if (qt_safe_listen(socketDescriptor, backlog) < 0) {-
392-
393-
394-
395 switch ((*__errno_location ())) {-
396 case 98:-
397 setError(QAbstractSocket::AddressInUseError,-
398 PortInuseErrorString);-
399 break;-
400 default:-
401 break;-
402 }-
403-
404-
405-
406-
407-
408 return false;-
409 }-
410-
411-
412-
413-
414-
415 socketState = QAbstractSocket::ListeningState;-
416 return true;-
417}-
418-
419int QNativeSocketEnginePrivate::nativeAccept()-
420{-
421 int acceptedDescriptor = qt_safe_accept(socketDescriptor, 0, 0);-
422 if (acceptedDescriptor == -1) {-
423 switch ((*__errno_location ())) {-
424 case 9:-
425 case 95:-
426 setError(QAbstractSocket::UnsupportedSocketOperationError, InvalidSocketErrorString);-
427 break;-
428 case 103:-
429 setError(QAbstractSocket::NetworkError, RemoteHostClosedErrorString);-
430 break;-
431 case 14:-
432 case 88:-
433 setError(QAbstractSocket::SocketResourceError, NotSocketErrorString);-
434 break;-
435 case 93:-
436-
437 case 71:-
438-
439 case 97:-
440 case 22:-
441 setError(QAbstractSocket::UnsupportedSocketOperationError, ProtocolUnsupportedErrorString);-
442 break;-
443 case 23:-
444 case 24:-
445 case 105:-
446 case 12:-
447 setError(QAbstractSocket::SocketResourceError, ResourceErrorString);-
448 break;-
449 case 13:-
450 case 1:-
451 setError(QAbstractSocket::SocketAccessError, AccessErrorString);-
452 break;-
453-
454-
455-
456 case 11:-
457 setError(QAbstractSocket::TemporaryError, TemporaryErrorString);-
458 break;-
459 default:-
460 setError(QAbstractSocket::UnknownSocketError, UnknownSocketErrorString);-
461 break;-
462 }-
463 }-
464-
465 return acceptedDescriptor;-
466}-
467-
468-
469-
470static bool multicastMembershipHelper(QNativeSocketEnginePrivate *d,-
471 int how6,-
472 int how4,-
473 const QHostAddress &groupAddress,-
474 const QNetworkInterface &interface)-
475{-
476 int level = 0;-
477 int sockOpt = 0;-
478 void *sockArg;-
479 int sockArgSize;-
480-
481 ip_mreq mreq4;-
482 ipv6_mreq mreq6;-
483-
484 if (groupAddress.protocol() == QAbstractSocket::IPv6Protocol
groupAddress.p...::IPv6ProtocolDescription
TRUEevaluated 6 times by 1 test
Evaluated by:
  • tst_QUdpSocket
FALSEevaluated 6 times by 1 test
Evaluated by:
  • tst_QUdpSocket
) {
6
485 level = IPPROTO_IPV6;-
486 sockOpt = how6;-
487 sockArg = &mreq6;-
488 sockArgSize = sizeof(mreq6);-
489 memset(&mreq6, 0, sizeof(mreq6));-
490 Q_IPV6ADDR ip6 = groupAddress.toIPv6Address();-
491 memcpy(&mreq6.ipv6mr_multiaddr, &ip6, sizeof(ip6));-
492 mreq6.ipv6mr_interface = interface.index();-
493 }
executed 6 times by 1 test: end of block
Executed by:
  • tst_QUdpSocket
else
6
494 if (groupAddress.protocol() == QAbstractSocket::IPv4Protocol
groupAddress.p...::IPv4ProtocolDescription
TRUEevaluated 6 times by 1 test
Evaluated by:
  • tst_QUdpSocket
FALSEnever evaluated
) {
0-6
495 level = IPPROTO_IP;-
496 sockOpt = how4;-
497 sockArg = &mreq4;-
498 sockArgSize = sizeof(mreq4);-
499 memset(&mreq4, 0, sizeof(mreq4));-
500 mreq4.imr_multiaddr.s_addr = htonl(groupAddress.toIPv4Address());-
501-
502 if (interface.
interface.isValid()Description
TRUEnever evaluated
FALSEevaluated 6 times by 1 test
Evaluated by:
  • tst_QUdpSocket
isValid()
interface.isValid()Description
TRUEnever evaluated
FALSEevaluated 6 times by 1 test
Evaluated by:
  • tst_QUdpSocket
) {
0-6
503 const QList<QNetworkAddressEntry> addressEntries = interface.addressEntries();-
504 if (!addressEntries.isEmpty()
!addressEntries.isEmpty()Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
505 QHostAddress firstIP = addressEntries.first().ip();-
506 mreq4.imr_interface.s_addr = htonl(firstIP.toIPv4Address());-
507 }
never executed: end of block
else {
0
508 d->setError(QAbstractSocket::NetworkError,-
509 QNativeSocketEnginePrivate::NetworkUnreachableErrorString);-
510 return
never executed: return false;
false;
never executed: return false;
0
511 }-
512 } else {-
513 mreq4.imr_interface.s_addr = ((in_addr_t) 0x00000000);-
514 }
executed 6 times by 1 test: end of block
Executed by:
  • tst_QUdpSocket
6
515 } else {-
516-
517 d->setError(QAbstractSocket::UnsupportedSocketOperationError,-
518 QNativeSocketEnginePrivate::ProtocolUnsupportedErrorString);-
519 return
never executed: return false;
false;
never executed: return false;
0
520 }-
521-
522 int res = setsockopt(d->socketDescriptor, level, sockOpt, sockArg, sockArgSize);-
523 if (res == -1
res == -1Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • tst_QUdpSocket
FALSEevaluated 10 times by 1 test
Evaluated by:
  • tst_QUdpSocket
) {
2-10
524 switch ((*__errno_location ())) {-
525 case
never executed: case 92:
92:
never executed: case 92:
0
526 d->setError(QAbstractSocket::UnsupportedSocketOperationError,-
527 QNativeSocketEnginePrivate::OperationUnsupportedErrorString);-
528 break;
never executed: break;
0
529 case
never executed: case 99:
99:
never executed: case 99:
0
530 d->setError(QAbstractSocket::SocketAddressNotAvailableError,-
531 QNativeSocketEnginePrivate::AddressNotAvailableErrorString);-
532 break;
never executed: break;
0
533 default
executed 2 times by 1 test: default:
Executed by:
  • tst_QUdpSocket
:
executed 2 times by 1 test: default:
Executed by:
  • tst_QUdpSocket
2
534 d->setError(QAbstractSocket::UnknownSocketError,-
535 QNativeSocketEnginePrivate::UnknownSocketErrorString);-
536 break;
executed 2 times by 1 test: break;
Executed by:
  • tst_QUdpSocket
2
537 }-
538 return
executed 2 times by 1 test: return false;
Executed by:
  • tst_QUdpSocket
false;
executed 2 times by 1 test: return false;
Executed by:
  • tst_QUdpSocket
2
539 }-
540 return
executed 10 times by 1 test: return true;
Executed by:
  • tst_QUdpSocket
true;
executed 10 times by 1 test: return true;
Executed by:
  • tst_QUdpSocket
10
541}-
542-
543bool QNativeSocketEnginePrivate::nativeJoinMulticastGroup(const QHostAddress &groupAddress,-
544 const QNetworkInterface &interface)-
545{-
546 return multicastMembershipHelper(this,-
547 20,-
548 35,-
549 groupAddress,-
550 interface);-
551}-
552-
553bool QNativeSocketEnginePrivate::nativeLeaveMulticastGroup(const QHostAddress &groupAddress,-
554 const QNetworkInterface &interface)-
555{-
556 return multicastMembershipHelper(this,-
557 21,-
558 36,-
559 groupAddress,-
560 interface);-
561}-
562-
563QNetworkInterface QNativeSocketEnginePrivate::nativeMulticastInterface() const-
564{-
565 if (socketProtocol == QAbstractSocket::IPv6Protocol || socketProtocol == QAbstractSocket::AnyIPProtocol) {-
566 uint v;-
567 socklen_t sizeofv = sizeof(v);-
568 if (::getsockopt(socketDescriptor, IPPROTO_IPV6, 17, &v, &sizeofv) == -1)-
569 return QNetworkInterface();-
570 return QNetworkInterface::interfaceFromIndex(v);-
571 }-
572-
573 struct in_addr v = { 0 };-
574 socklen_t sizeofv = sizeof(v);-
575 if (::getsockopt(socketDescriptor, IPPROTO_IP, 32, &v, &sizeofv) == -1)-
576 return QNetworkInterface();-
577 if (v.s_addr != 0 && sizeofv >= socklen_t(sizeof(v))) {-
578 QHostAddress ipv4(ntohl(v.s_addr));-
579 QList<QNetworkInterface> ifaces = QNetworkInterface::allInterfaces();-
580 for (int i = 0; i < ifaces.count(); ++i) {-
581 const QNetworkInterface &iface = ifaces.at(i);-
582 QList<QNetworkAddressEntry> entries = iface.addressEntries();-
583 for (int j = 0; j < entries.count(); ++j) {-
584 const QNetworkAddressEntry &entry = entries.at(j);-
585 if (entry.ip() == ipv4)-
586 return iface;-
587 }-
588 }-
589 }-
590 return QNetworkInterface();-
591}-
592-
593bool QNativeSocketEnginePrivate::nativeSetMulticastInterface(const QNetworkInterface &iface)-
594{-
595 if (socketProtocol == QAbstractSocket::IPv6Protocol || socketProtocol == QAbstractSocket::AnyIPProtocol) {-
596 uint v = iface.index();-
597 return (::setsockopt(socketDescriptor, IPPROTO_IPV6, 17, &v, sizeof(v)) != -1);-
598 }-
599-
600 struct in_addr v;-
601 if (iface.isValid()) {-
602 QList<QNetworkAddressEntry> entries = iface.addressEntries();-
603 for (int i = 0; i < entries.count(); ++i) {-
604 const QNetworkAddressEntry &entry = entries.at(i);-
605 const QHostAddress &ip = entry.ip();-
606 if (ip.protocol() == QAbstractSocket::IPv4Protocol) {-
607 v.s_addr = htonl(ip.toIPv4Address());-
608 int r = ::setsockopt(socketDescriptor, IPPROTO_IP, 32, &v, sizeof(v));-
609 if (r != -1)-
610 return true;-
611 }-
612 }-
613 return false;-
614 }-
615-
616 v.s_addr = ((in_addr_t) 0x00000000);-
617 return (::setsockopt(socketDescriptor, IPPROTO_IP, 32, &v, sizeof(v)) != -1);-
618}-
619-
620-
621-
622qint64 QNativeSocketEnginePrivate::nativeBytesAvailable() const-
623{-
624 int nbytes = 0;-
625-
626 qint64 available = 0-1;-
627 if (available == -1
available == -1Description
TRUEevaluated 74694 times by 29 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • ...
FALSEnever evaluated
&&
qt_safe_ioctl(socketDescriptor, 0x541B, (char *) &nbytes) >= 0
qt_safe_ioctl(... &nbytes) >= 0Description
TRUEevaluated 74694 times by 29 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • ...
FALSEnever evaluated
)
0-74694
628 available = (qint64)nbytes;
executed 74694 times by 29 tests: available = nbytes;
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • ...
74694
629-
630-
631-
632-
633 return
executed 74694 times by 29 tests: return available > 0 ? available : 0;
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • ...
available > 0 ? available : 0;
executed 74694 times by 29 tests: return available > 0 ? available : 0;
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • ...
74694
634}-
635-
636bool QNativeSocketEnginePrivate::nativeHasPendingDatagrams() const-
637{-
638-
639 qt_sockaddr storage;-
640 socklen_t storageSize = sizeof(storage);-
641 memset(&storage, 0, storageSize);-
642-
643-
644-
645 ssize_t readBytes;-
646 do {-
647 char c;-
648 readBytes = ::recvfrom(socketDescriptor, &c, 1, MSG_PEEK, &storage.a, &storageSize);-
649 } while (readBytes == -1 && (*__errno_location ()) == 4);-
650-
651-
652-
653 bool result = (readBytes != -1) || (*__errno_location ()) == 90;-
654-
655-
656-
657-
658-
659 return result;-
660}-
661-
662qint64 QNativeSocketEnginePrivate::nativePendingDatagramSize() const-
663{-
664 QVarLengthArray<char, 8192> udpMessagePeekBuffer(8192);-
665 ssize_t recvResult = -1;-
666-
667 for (;;) {-
668-
669-
670-
671 recvResult = ::recv(socketDescriptor, udpMessagePeekBuffer.data(),-
672 udpMessagePeekBuffer.size(), MSG_PEEK);-
673 if (recvResult == -1 && (*__errno_location ()) == 4)-
674 continue;-
675-
676 if (recvResult != (ssize_t) udpMessagePeekBuffer.size())-
677 break;-
678-
679 udpMessagePeekBuffer.resize(udpMessagePeekBuffer.size() * 2);-
680 }-
681-
682-
683-
684-
685-
686 return qint64(recvResult);-
687}-
688-
689qint64 QNativeSocketEnginePrivate::nativeReceiveDatagram(char *data, qint64 maxSize, QIpPacketHeader *header,-
690 QAbstractSocketEngine::PacketHeaderOptions options)-
691{-
692-
693 quintptr cbuf[(((((sizeof(struct in6_pktinfo)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1))) + ((((sizeof(int)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)))-
694-
695-
696-
697 + sizeof(quintptr) - 1) / sizeof(quintptr)];-
698-
699 struct msghdr msg;-
700 struct iovec vec;-
701 qt_sockaddr aa;-
702 char c;-
703 memset(&msg, 0, sizeof(msg));-
704 memset(&aa, 0, sizeof(aa));-
705-
706-
707 vec.iov_base = maxSize ? data : &c;-
708 vec.iov_len = maxSize ? maxSize : 1;-
709 msg.msg_iov = &vec;-
710 msg.msg_iovlen = 1;-
711 if (options & QAbstractSocketEngine::WantDatagramSender) {-
712 msg.msg_name = &aa;-
713 msg.msg_namelen = sizeof(aa);-
714 }-
715 if (options & (QAbstractSocketEngine::WantDatagramHopLimit | QAbstractSocketEngine::WantDatagramDestination)) {-
716 msg.msg_control = cbuf;-
717 msg.msg_controllen = sizeof(cbuf);-
718 }-
719-
720 ssize_t recvResult = 0;-
721 do {-
722 recvResult = ::recvmsg(socketDescriptor, &msg, 0);-
723 } while (recvResult == -1 && (*__errno_location ()) == 4);-
724-
725 if (recvResult == -1) {-
726 setError(QAbstractSocket::NetworkError, ReceiveDatagramErrorString);-
727 if (header)-
728 header->clear();-
729 } else if (options != QAbstractSocketEngine::WantNone) {-
730 ((!(header)) ? qt_assert("header",__FILE__,870866) : qt_noop());-
731 qt_socket_getPortAndAddress(&aa, &header->senderPort, &header->senderAddress);-
732 header->destinationPort = localPort;-
733-
734-
735 struct cmsghdr *cmsgptr;-
736 for (cmsgptr = ((size_t) (&msg)->msg_controllen >= sizeof (struct cmsghdr) ? (struct cmsghdr *) (&msg)->msg_control : (struct cmsghdr *) 0); cmsgptr != __null;-
737 cmsgptr = __cmsg_nxthdr (&msg, cmsgptr)) {-
738 if (cmsgptr->cmsg_level == IPPROTO_IPV6 && cmsgptr->cmsg_type == 50-
739 && cmsgptr->cmsg_len >= ((((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (sizeof(in6_pktinfo)))) {-
740 in6_pktinfo *info = reinterpret_cast<in6_pktinfo *>(((unsigned char *) ((struct cmsghdr *) (cmsgptr) + 1)));-
741-
742 header->destinationAddress.setAddress(reinterpret_cast<quint8 *>(&info->ipi6_addr));-
743 header->ifindex = info->ipi6_ifindex;-
744 if (header->ifindex)-
745 header->destinationAddress.setScopeId(QString::number(info->ipi6_ifindex));-
746 }-
747-
748-
749 if (cmsgptr->cmsg_level == IPPROTO_IP && cmsgptr->cmsg_type == 8-
750 && cmsgptr->cmsg_len >= ((((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (sizeof(in_pktinfo)))) {-
751 in_pktinfo *info = reinterpret_cast<in_pktinfo *>(((unsigned char *) ((struct cmsghdr *) (cmsgptr) + 1)));-
752-
753 header->destinationAddress.setAddress(ntohl(info->ipi_addr.s_addr));-
754 header->ifindex = info->ipi_ifindex;-
755 }-
756 if (cmsgptr->cmsg_len == ((((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (sizeof(int)))-
757 && ((cmsgptr->cmsg_level == IPPROTO_IPV6 && cmsgptr->cmsg_type == 52)-
758 || (cmsgptr->cmsg_level == IPPROTO_IP && cmsgptr->cmsg_type == 2))) {-
759 header->hopLimit = *reinterpret_cast<int *>(((unsigned char *) ((struct cmsghdr *) (cmsgptr) + 1)));-
760 }-
761 }-
762 }-
763 return qint64(maxSize ? recvResult : recvResult == -1 ? -1 : 0);-
764}-
765-
766qint64 QNativeSocketEnginePrivate::nativeSendDatagram(const char *data, qint64 len, const QIpPacketHeader &header)-
767{-
768-
769 quintptr cbuf[(((((sizeof(struct in6_pktinfo)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1))) + ((((sizeof(int)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1))) + sizeof(quintptr) - 1) / sizeof(quintptr)];-
770-
771 struct cmsghdr *cmsgptr = reinterpret_cast<struct cmsghdr *>(cbuf);-
772 struct msghdr msg;-
773 struct iovec vec;-
774 qt_sockaddr aa;-
775-
776 memset(&msg, 0, sizeof(msg));-
777 memset(&aa, 0, sizeof(aa));-
778 vec.iov_base = const_cast<char *>(data);-
779 vec.iov_len = len;-
780 msg.msg_iov = &vec;-
781 msg.msg_iovlen = 1;-
782 msg.msg_name = &aa.a;-
783 msg.msg_control = &cbuf;-
784-
785 setPortAndAddress(header.destinationPort, header.destinationAddress, &aa, &msg.msg_namelen);-
786-
787 if (msg.msg_namelen == sizeof(aa.a6)) {-
788 if (header.hopLimit != -1) {-
789 msg.msg_controllen += ((((sizeof(int)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)));-
790 cmsgptr->cmsg_len = ((((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (sizeof(int)));-
791 cmsgptr->cmsg_level = IPPROTO_IPV6;-
792 cmsgptr->cmsg_type = 52;-
793 memcpy(((unsigned char *) ((struct cmsghdr *) (cmsgptr) + 1)), &header.hopLimit, sizeof(int));-
794 cmsgptr = reinterpret_cast<cmsghdr *>(reinterpret_cast<char *>(cmsgptr) + ((((sizeof(int)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1))));-
795 }-
796 if (header.ifindex != 0 || !header.senderAddress.isNull()) {-
797 struct in6_pktinfo *data = reinterpret_cast<in6_pktinfo *>(((unsigned char *) ((struct cmsghdr *) (cmsgptr) + 1)));-
798 memset(data, 0, sizeof(*data));-
799 msg.msg_controllen += ((((sizeof(*data)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)));-
800 cmsgptr->cmsg_len = ((((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (sizeof(*data)));-
801 cmsgptr->cmsg_level = IPPROTO_IPV6;-
802 cmsgptr->cmsg_type = 50;-
803 data->ipi6_ifindex = header.ifindex;-
804-
805 QIPv6Address tmp = header.senderAddress.toIPv6Address();-
806 memcpy(&data->ipi6_addr, &tmp, sizeof(tmp));-
807 cmsgptr = reinterpret_cast<cmsghdr *>(reinterpret_cast<char *>(cmsgptr) + ((((sizeof(*data)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1))));-
808 }-
809 } else {-
810 if (header.hopLimit != -1) {-
811 msg.msg_controllen += ((((sizeof(int)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)));-
812 cmsgptr->cmsg_len = ((((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (sizeof(int)));-
813 cmsgptr->cmsg_level = IPPROTO_IP;-
814 cmsgptr->cmsg_type = 2;-
815 memcpy(((unsigned char *) ((struct cmsghdr *) (cmsgptr) + 1)), &header.hopLimit, sizeof(int));-
816 cmsgptr = reinterpret_cast<cmsghdr *>(reinterpret_cast<char *>(cmsgptr) + ((((sizeof(int)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1))));-
817 }-
818-
819-
820 if (header.ifindex != 0 || !header.senderAddress.isNull()) {-
821-
822 struct in_pktinfo *data = reinterpret_cast<in_pktinfo *>(((unsigned char *) ((struct cmsghdr *) (cmsgptr) + 1)));-
823 memset(data, 0, sizeof(*data));-
824 cmsgptr->cmsg_type = 8;-
825 data->ipi_ifindex = header.ifindex;-
826 data->ipi_addr.s_addr = htonl(header.senderAddress.toIPv4Address());-
827-
828-
829-
830-
831-
832 cmsgptr->cmsg_level = IPPROTO_IP;-
833 msg.msg_controllen += ((((sizeof(*data)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)));-
834 cmsgptr->cmsg_len = ((((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (sizeof(*data)));-
835 cmsgptr = reinterpret_cast<cmsghdr *>(reinterpret_cast<char *>(cmsgptr) + ((((sizeof(*data)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1)) + (((sizeof (struct cmsghdr)) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1))));-
836 }-
837-
838 }-
839-
840 if (msg.msg_controllen == 0)-
841 msg.msg_control = 0;-
842 ssize_t sentBytes = qt_safe_sendmsg(socketDescriptor, &msg, 0);-
843-
844 if (sentBytes < 0) {-
845 switch ((*__errno_location ())) {-
846 case 90:-
847 setError(QAbstractSocket::DatagramTooLargeError, DatagramTooLargeErrorString);-
848 break;-
849 default:-
850 setError(QAbstractSocket::NetworkError, SendDatagramErrorString);-
851 }-
852 }-
853 return qint64(sentBytes);-
854}-
855-
856bool QNativeSocketEnginePrivate::fetchConnectionParameters()-
857{-
858 localPort = 0;-
859 localAddress.clear();-
860 peerPort = 0;-
861 peerAddress.clear();-
862 inboundStreamCount = outboundStreamCount = 0;-
863-
864 if (socketDescriptor == -1
socketDescriptor == -1Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • tst_qlocalsocket - unknown status
FALSEevaluated 5240 times by 31 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHostInfo
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • ...
)
1-5240
865 return
executed 1 time by 1 test: return false;
Executed by:
  • tst_qlocalsocket - unknown status
false;
executed 1 time by 1 test: return false;
Executed by:
  • tst_qlocalsocket - unknown status
1
866-
867 qt_sockaddr sa;-
868 socklen_t sockAddrSize = sizeof(sa);-
869-
870-
871 memset(&sa, 0, sizeof(sa));-
872 if (::
::getsockname(...AddrSize) == 0Description
TRUEevaluated 5232 times by 31 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHostInfo
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • ...
FALSEevaluated 8 times by 2 tests
Evaluated by:
  • tst_QTcpServer
  • tst_qtcpsocket - unknown status
getsockname(socketDescriptor, &sa.a, &sockAddrSize) == 0
::getsockname(...AddrSize) == 0Description
TRUEevaluated 5232 times by 31 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHostInfo
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • ...
FALSEevaluated 8 times by 2 tests
Evaluated by:
  • tst_QTcpServer
  • tst_qtcpsocket - unknown status
) {
8-5232
873 qt_socket_getPortAndAddress(&sa, &localPort, &localAddress);-
874-
875-
876 switch (sa.a.sa_family) {-
877 case
executed 3867 times by 28 tests: case 2:
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • ...
2:
executed 3867 times by 28 tests: case 2:
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • ...
3867
878 socketProtocol = QAbstractSocket::IPv4Protocol;-
879 break;
executed 3867 times by 28 tests: break;
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • ...
3867
880 case
executed 1207 times by 14 tests: case 10:
Executed by:
  • tst_NetworkSelfTest
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
10:
executed 1207 times by 14 tests: case 10:
Executed by:
  • tst_NetworkSelfTest
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
1207
881 socketProtocol = QAbstractSocket::IPv6Protocol;-
882 break;
executed 1207 times by 14 tests: break;
Executed by:
  • tst_NetworkSelfTest
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
1207
883 default
executed 158 times by 3 tests: default:
Executed by:
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_qlocalsocket - unknown status
:
executed 158 times by 3 tests: default:
Executed by:
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_qlocalsocket - unknown status
158
884 socketProtocol = QAbstractSocket::UnknownNetworkLayerProtocol;-
885 break;
executed 158 times by 3 tests: break;
Executed by:
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_qlocalsocket - unknown status
158
886 }-
887-
888 } else if ((*
(*__errno_location ()) == 9Description
TRUEevaluated 8 times by 2 tests
Evaluated by:
  • tst_QTcpServer
  • tst_qtcpsocket - unknown status
FALSEnever evaluated
__errno_location ()) == 9
(*__errno_location ()) == 9Description
TRUEevaluated 8 times by 2 tests
Evaluated by:
  • tst_QTcpServer
  • tst_qtcpsocket - unknown status
FALSEnever evaluated
) {
0-8
889 setError(QAbstractSocket::UnsupportedSocketOperationError, InvalidSocketErrorString);-
890 return
executed 8 times by 2 tests: return false;
Executed by:
  • tst_QTcpServer
  • tst_qtcpsocket - unknown status
false;
executed 8 times by 2 tests: return false;
Executed by:
  • tst_QTcpServer
  • tst_qtcpsocket - unknown status
8
891 }-
892-
893-
894-
895-
896-
897-
898 int ipv6only = 0;-
899 socklen_t optlen = sizeof(ipv6only);-
900 if (socketProtocol == QAbstractSocket::IPv6Protocol
socketProtocol...::IPv6ProtocolDescription
TRUEevaluated 1207 times by 14 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
FALSEevaluated 4025 times by 30 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • ...
1207-4025
901 && (localAddress == QHostAddress::AnyIPv4
localAddress =...dress::AnyIPv4Description
TRUEnever evaluated
FALSEevaluated 1207 times by 14 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
|| localAddress == QHostAddress::AnyIPv6
localAddress =...dress::AnyIPv6Description
TRUEevaluated 616 times by 13 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
FALSEevaluated 591 times by 12 tests
Evaluated by:
  • tst_QHostInfo
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
)
0-1207
902 && !getsockopt(socketDescriptor, IPPROTO_IPV6, 26, (char*)&ipv6only, &optlen )
!getsockopt(so...nly, &optlen )Description
TRUEevaluated 616 times by 13 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
FALSEnever evaluated
) {
0-616
903 if (optlen != sizeof(ipv6only)
optlen != sizeof(ipv6only)Description
TRUEnever evaluated
FALSEevaluated 616 times by 13 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
)
0-616
904 QMessageLogger(__FILE__, 10791076, __PRETTY_FUNCTION__).warning("unexpected size of IPV6_V6ONLY socket option");
never executed: QMessageLogger(__FILE__, 1076, __PRETTY_FUNCTION__).warning("unexpected size of IPV6_V6ONLY socket option");
0
905 if (!ipv6only
!ipv6onlyDescription
TRUEevaluated 580 times by 13 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
FALSEevaluated 36 times by 5 tests
Evaluated by:
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qtcpsocket - unknown status
) {
36-580
906 socketProtocol = QAbstractSocket::AnyIPProtocol;-
907 localAddress = QHostAddress::Any;-
908 }
executed 580 times by 13 tests: end of block
Executed by:
  • tst_NetworkSelfTest
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
580
909 }
executed 616 times by 13 tests: end of block
Executed by:
  • tst_NetworkSelfTest
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
616
910-
911-
912-
913 if (!::getpeername(socketDescriptor, &sa.a, &sockAddrSize)
!::getpeername...&sockAddrSize)Description
TRUEevaluated 4297 times by 30 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • ...
FALSEevaluated 935 times by 20 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QHostInfo
  • tst_QHttpNetworkConnection
  • tst_QNetworkDiskCache
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
) {
935-4297
914 qt_socket_getPortAndAddress(&sa, &peerPort, &peerAddress);-
915 inboundStreamCount = outboundStreamCount = 1;-
916 }
executed 4297 times by 30 tests: end of block
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • ...
4297
917-
918-
919 int value = 0;-
920 socklen_t valueSize = sizeof(int);-
921 if (::
::getsockopt(s...alueSize) == 0Description
TRUEevaluated 5232 times by 31 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHostInfo
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • ...
FALSEnever evaluated
getsockopt(socketDescriptor, 1, 3, &value, &valueSize) == 0
::getsockopt(s...alueSize) == 0Description
TRUEevaluated 5232 times by 31 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHostInfo
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • ...
FALSEnever evaluated
) {
0-5232
922 if (value == SOCK_STREAM
value == SOCK_STREAMDescription
TRUEevaluated 5092 times by 31 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHostInfo
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • ...
FALSEevaluated 140 times by 4 tests
Evaluated by:
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
)
140-5092
923 socketType = QAbstractSocket::TcpSocket;
executed 5092 times by 31 tests: socketType = QAbstractSocket::TcpSocket;
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHostInfo
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • ...
5092
924 else if (value == SOCK_DGRAM
value == SOCK_DGRAMDescription
TRUEevaluated 140 times by 4 tests
Evaluated by:
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
FALSEnever evaluated
)
0-140
925 socketType = QAbstractSocket::UdpSocket;
executed 140 times by 4 tests: socketType = QAbstractSocket::UdpSocket;
Executed by:
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
140
926 else-
927 socketType = QAbstractSocket::UnknownSocketType;
never executed: socketType = QAbstractSocket::UnknownSocketType;
0
928 }-
929 return
executed 5232 times by 31 tests: return true;
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHostInfo
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • ...
true;
executed 5232 times by 31 tests: return true;
Executed by:
  • tst_NetworkSelfTest
  • tst_QAbstractNetworkCache
  • tst_QFtp
  • tst_QHostInfo
  • tst_QHttpNetworkConnection
  • tst_QNetworkAccessManager_And_QProgressDialog
  • tst_QNetworkDiskCache
  • tst_QNetworkInterface
  • tst_QNetworkProxyFactory
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_QXmlInputSource
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qimagereader - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • ...
5232
930}-
931-
932void QNativeSocketEnginePrivate::nativeClose()-
933{-
934-
935-
936-
937-
938 qt_safe_close(socketDescriptor);-
939}-
940-
941qint64 QNativeSocketEnginePrivate::nativeWrite(const char *data, qint64 len)-
942{-
943 QNativeSocketEngine * const q = q_func();-
944-
945 ssize_t writtenBytes;-
946 writtenBytes = qt_safe_write_nosignal(socketDescriptor, data, len);-
947-
948 if (writtenBytes < 0) {-
949 switch ((*__errno_location ())) {-
950 case 32:-
951 case 104:-
952 writtenBytes = -1;-
953 setError(QAbstractSocket::RemoteHostClosedError, RemoteHostClosedErrorString);-
954 q->close();-
955 break;-
956 case 11:-
957 writtenBytes = 0;-
958 break;-
959 case 90:-
960 setError(QAbstractSocket::DatagramTooLargeError, DatagramTooLargeErrorString);-
961 break;-
962 default:-
963 break;-
964 }-
965 }-
966-
967-
968-
969-
970-
971-
972-
973 return qint64(writtenBytes);-
974}-
975-
976-
977qint64 QNativeSocketEnginePrivate::nativeRead(char *data, qint64 maxSize)-
978{-
979 QNativeSocketEngine * const q = q_func();-
980 if (!q->isValid()) {-
981 QMessageLogger(__FILE__, 11691168, __PRETTY_FUNCTION__).warning("QNativeSocketEngine::nativeRead: Invalid socket");-
982 return -1;-
983 }-
984-
985 ssize_t r = 0;-
986 r = qt_safe_read(socketDescriptor, data, maxSize);-
987-
988 if (r < 0) {-
989 r = -1;-
990 switch ((*__errno_location ())) {-
991-
992-
993-
994 case 11:-
995-
996 r = -2;-
997 break;-
998 case 9:-
999 case 22:-
1000 case 5:-
1001-
1002 break;-
1003 case 104:-
1004-
1005-
1006-
1007 r = 0;-
1008 break;-
1009 default:-
1010 break;-
1011 }-
1012 }-
1013-
1014-
1015-
1016-
1017-
1018-
1019-
1020 return qint64(r);-
1021}-
1022-
1023int QNativeSocketEnginePrivate::nativeSelect(int timeout, bool selectForRead) const-
{
fd_set fds;
do{
1025 int __d0, __d1; __asm__ __volatile__ ("cld; rep; " "stosq" : "=c" (__d0), "=D" (__d1) : "a" (0), "0" (sizeof (fd_set) / sizeof (__fd_mask)), "1" (&((&fds)->fds_bits)[0]) : "memory"); } while (0);-
((void) (((&fds)->fds_bits)[((socketDescriptor) / (8 * (int) sizeof (__fd_mask)))] |= ((__fd_mask) 1 << ((socketDescriptor) % (8 * (int) sizeof (__fd_mask))))));
struct timespec tv;
tv.tv_sec = timeout / 1000;
tv.tv_nsec = (timeout % 1000) * 1000 * 1000;
int retvalbool dummy;
1026 if (selectForRead)262400
retval = qt_safe_selectreturn
executed 262400 times by 20 tests: return nativeSelect(timeout, selectForRead, !selectForRead, &dummy, &dummy);
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
executed 262400 times by 20 tests: return nativeSelect(timeout, selectForRead, !selectForRead, &dummy, &dummy);
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
nativeSelect(socketDescriptor + 1, &fds, 0, 0,timeout< 0 ? 0 : &tv);
executed 262400 times by 20 tests: return nativeSelect(timeout, selectForRead, !selectForRead, &dummy, &dummy);
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
else
executed 262400 times by 20 tests: return nativeSelect(timeout, selectForRead, !selectForRead, &dummy, &dummy);
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
retval = qt_safe_select(socketDescriptor + 1
executed 262400 times by 20 tests: return nativeSelect(timeout, selectForRead, !selectForRead, &dummy, &dummy);
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
executed 262400 times by 20 tests: return nativeSelect(timeout, selectForRead, !selectForRead, &dummy, &dummy);
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
, 0selectForRead, &fds!selectForRead, 0&dummy, timeout < 0 ? 0 : &tv&dummy);
executed 262400 times by 20 tests: return nativeSelect(timeout, selectForRead, !selectForRead, &dummy, &dummy);
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
return retval;}
1028-
1029int QNativeSocketEnginePrivate::nativeSelect(int timeout, bool checkRead, bool checkWrite,-
1030 bool *selectForRead, bool *selectForWrite) const-
{
fd_set fdread;
do{
1032 int __d0, __d1; __asm__ __volatile__ ("cld; rep; " "stosq" : "=c" (__d0), "pollfd pfd = D" (__d1) : "a" (0), "0" (sizeof (fd_set) / sizeof (__fd_mask)), "1" (&((&fdread)->fds_bits)[0]) : "memory"); } whileqt_make_pollfd(socketDescriptor, 0);-
1033-
1034 if (checkRead)
checkReadDescription
TRUEevaluated 275986 times by 23 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
FALSEevaluated 1102 times by 20 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
1102-275986
((void) (((&fdread)->fds_bits)[((socketDescriptor) / (8 * (int
checkReadDescription
TRUEevaluated 275986 times by 23 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
FALSEevaluated 1102 times by 20 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
)
1035 sizeof (__fd_mask)))]pfd.events
executed 275986 times by 23 tests: pfd.events |= 0x001;
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
|= ((__fd_mask) 1 << ((socketDescriptor) % (8 * (int) sizeof (__fd_mask))))));
executed 275986 times by 23 tests: pfd.events |= 0x001;
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
275986
fd_set fdwrite;
executed 275986 times by 23 tests: pfd.events |= 0x001;
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
do { int __d0, __d1; __asm__ __volatile__ ("cld; rep
executed 275986 times by 23 tests: pfd.events |= 0x001;
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
executed 275986 times by 23 tests: pfd.events |= 0x001;
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
0x001;
executed 275986 times by 23 tests: pfd.events |= 0x001;
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
1036-
1037 " "stosq" : "=c" (__d0), "=D" (__d1) : "a" (0), "0" (sizeof (fd_set) / sizeof (__fd_mask)), "1" (&((&fdwrite)->fds_bits)[0]) : "memory"); } while (0);if (checkWrite)
checkWriteDescription
TRUEevaluated 10869 times by 22 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
FALSEevaluated 266219 times by 19 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
10869-266219
((void) (((&fdwrite)->fds_bits)[((socketDescriptor) / (8 * (int) sizeof (__fd_mask)))] |= ((__fd_mask) 1 << ((socketDescriptor) % (8 * (int
checkWriteDescription
TRUEevaluated 10869 times by 22 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
FALSEevaluated 266219 times by 19 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_platformsocketengine - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
)
1038 sizeof (__fd_mask))))));10869
struct timespec tv;
tv.tv_sec = timeout / 1000;
tvpfd
executed 10869 times by 22 tests: pfd.events |= 0x004;
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
.tv_nsecevents |= (timeout % 1000) * 1000 * 10000x004;
executed 10869 times by 22 tests: pfd.events |= 0x004;
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
1039-
1040 const int ret;ret = qt_safe_selectqt_poll_msecs(socketDescriptor + 1, &fdread, &fdwrite&pfd, 01, timeout< 0 ? 0 : &tv);-
1041-
1042 if (ret <= 0
ret <= 0Description
TRUEevaluated 138 times by 10 tests
Evaluated by:
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_qlocalsocket - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
FALSEevaluated 276950 times by 23 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
)
138-276950
1043 return
executed 138 times by 10 tests: return ret;
Executed by:
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_qlocalsocket - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
ret;
executed 138 times by 10 tests: return ret;
Executed by:
  • tst_QNetworkReply
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_qlocalsocket - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qxmlsimplereader - unknown status
138
1044-
1045 *selectForRead = ((((&fdread)->fds_bits)[((socketDescriptor) / (8 * (int) sizeofif (__fd_mask)))]pfd.revents
pfd.revents & 0x020Description
TRUEnever evaluated
FALSEevaluated 276950 times by 23 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
& ((__fd_mask0x020
pfd.revents & 0x020Description
TRUEnever evaluated
FALSEevaluated 276950 times by 23 tests
Evaluated by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
) {
0-276950
1046 (*__errno_location ()) = 9;-
1047 return
never executed: return -1;
-
never executed: return -1;
never executed: return -1;
1<< ((socketDescriptor) % (8;
never executed: return -1;
0
1048 }-
1049-
1050 static const short read_flags = 0x001 | 0x010 | 0x008;-
1051 static const short write_flags = 0x004 | 0x008;-
1052-
1053 *(intselectForRead = ((pfd.revents & read_flags) sizeof (__fd_mask)))))!= 0);-
1054 *selectForWrite = ((((&fdwrite)->fds_bits)[((socketDescriptor) / (8 * (int) sizeof (__fd_mask)))] & ((__fd_mask) 1 <<((socketDescriptor) % (8 * (intpfd.revents & write_flags) sizeof (__fd_mask)))))!= 0);-
1055-
1056 return
executed 276950 times by 23 tests: return ret;
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
ret;
executed 276950 times by 23 tests: return ret;
Executed by:
  • tst_NetworkSelfTest
  • tst_QFtp
  • tst_QNetworkInterface
  • tst_QNetworkReply
  • tst_QNetworkSession
  • tst_QTcpServer
  • tst_QUdpSocket
  • tst_Spdy
  • tst_platformsocketengine - unknown status
  • tst_qeventloop - unknown status
  • tst_qguieventloop - unknown status
  • tst_qhttpsocketengine - unknown status
  • tst_qiodevice - unknown status
  • tst_qlocalsocket - unknown status
  • tst_qobject - unknown status
  • tst_qsocketnotifier - unknown status
  • tst_qsocks5socketengine - unknown status
  • tst_qsslsocket - unknown status
  • tst_qsslsocket_onDemandCertificates_member - unknown status
  • tst_qsslsocket_onDemandCertificates_static - unknown status
  • tst_qtcpsocket - unknown status
  • tst_qtextstream - unknown status
  • tst_qxmlsimplereader - unknown status
276950
1057}-
1058-
1059-
Switch to Source codePreprocessed file

Generated by Squish Coco Non-Commercial 4.3.0-BETA-master-30-08-2018-4cb69e9