diff options
| author | Karim Pinter <karim.pinter@qt.io> | 2025-08-05 11:20:16 +0300 |
|---|---|---|
| committer | Karim Pinter <karim.pinter@qt.io> | 2025-11-25 18:02:22 +0200 |
| commit | 5c7b5d151894c39af07234563edd101da33bafde (patch) | |
| tree | cb5eb6616b2896c402790bdaffd97c210d868bc8 /src/network/socket/qnativesocketengine_unix.cpp | |
| parent | cc8415653fa5d82f34b86dc6d4ee9fa68a4f72c5 (diff) | |
QNativeSocketEngine/VxWorks: also handle ENOTSUP
VxWorks doesn't return standard error types, so there is a need to
extend the error handling for this OS.
Task-number: QTBUG-138759
Pick-to: 6.8 6.10
Change-Id: I01de0f759c732ae840711949c769a4710aad306f
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'src/network/socket/qnativesocketengine_unix.cpp')
| -rw-r--r-- | src/network/socket/qnativesocketengine_unix.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/network/socket/qnativesocketengine_unix.cpp b/src/network/socket/qnativesocketengine_unix.cpp index 430197ccc6e..a19223e2348 100644 --- a/src/network/socket/qnativesocketengine_unix.cpp +++ b/src/network/socket/qnativesocketengine_unix.cpp @@ -200,7 +200,7 @@ bool QNativeSocketEnginePrivate::createNewSocket(QAbstractSocket::SocketType soc int type = (socketType == QAbstractSocket::UdpSocket) ? SOCK_DGRAM : SOCK_STREAM; int socket = qt_safe_socket(domain, type, protocol, O_NONBLOCK); - if (socket < 0 && socketProtocol == QAbstractSocket::AnyIPProtocol && errno == EAFNOSUPPORT) { + if (socket < 0 && socketProtocol == QAbstractSocket::AnyIPProtocol && (errno == EAFNOSUPPORT || errno == ENOTSUP )) { domain = AF_INET; socket = qt_safe_socket(domain, type, protocol, O_NONBLOCK); socketProtocol = QAbstractSocket::IPv4Protocol; @@ -1161,6 +1161,8 @@ qint64 QNativeSocketEnginePrivate::nativeSendDatagram(const char *data, qint64 l sentBytes = -2; break; case EMSGSIZE: + // seen on VxWorks + case ENOMEM: setError(QAbstractSocket::DatagramTooLargeError, DatagramTooLargeErrorString); break; case ECONNRESET: |
