5#ifndef QNATIVESOCKETENGINE_P_P_H
6#define QNATIVESOCKETENGINE_P_P_H
19#include "private/qabstractsocketengine_p.h"
20#include "private/qnativesocketengine_p.h"
23# include <netinet/in.h>
38# ifndef WSAID_WSARECVMSG
39typedef INT (WINAPI *LPFN_WSARECVMSG)(
SOCKET s, LPWSAMSG lpMsg,
40 LPDWORD lpdwNumberOfBytesRecvd,
41 LPWSAOVERLAPPED lpOverlapped,
42 LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
43# define WSAID_WSARECVMSG {0xf689d7c8,0x6f1f,0x436b,{0x8a,0x53,0xe5,0x4f,0xe3,0x51,0xc3,0x22}}
45# ifndef WSAID_WSASENDMSG
49 LPDWORD lpNumberOfBytesSent;
50 LPWSAOVERLAPPED lpOverlapped;
51 LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine;
52} WSASENDMSG, *LPWSASENDMSG;
54typedef INT (WSAAPI *LPFN_WSASENDMSG)(
SOCKET s, LPWSAMSG lpMsg, DWORD dwFlags,
55 LPDWORD lpNumberOfBytesSent,
56 LPWSAOVERLAPPED lpOverlapped,
57 LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine);
59# define WSAID_WSASENDMSG {0xa441e712,0x754f,0x43ca,{0x84,0xa7,0x0d,0xee,0x44,0xcf,0x60,0x6d}}
83 LPFN_WSASENDMSG sendmsg;
84 LPFN_WSARECVMSG recvmsg;
132#ifndef QT_NO_NETWORKINTERFACE
145 QAbstractSocketEngine::PacketHeaderOptions options);
151 bool *selectForRead,
bool *selectForWrite)
const;
169 *sockAddrSize =
sizeof(sockaddr_in6);
175 *sockAddrSize =
sizeof(sockaddr_in);
QAbstractSocket::NetworkLayerProtocol socketProtocol
SocketError
This enum describes the socket errors that can occur.
SocketType
This enum describes the transport layer protocol.
The QHostAddress class provides an IP address.
@ UnknownNetworkLayerProtocol
bool nativeHasPendingDatagrams() const
QNativeSocketEnginePrivate()
bool createNewSocket(QAbstractSocket::SocketType type, QAbstractSocket::NetworkLayerProtocol &protocol)
QNetworkInterface nativeMulticastInterface() const
int nativeSelect(int timeout, bool selectForRead) const
qint64 nativeBytesAvailable() const
QSocketNotifier * readNotifier
qint64 nativeWrite(const char *data, qint64 length)
~QNativeSocketEnginePrivate()
bool nativeJoinMulticastGroup(const QHostAddress &groupAddress, const QNetworkInterface &iface)
bool setOption(QNativeSocketEngine::SocketOption option, int value)
void setError(QAbstractSocket::SocketError error, ErrorString errorString) const
bool nativeSetMulticastInterface(const QNetworkInterface &iface)
bool checkProxy(const QHostAddress &address)
bool fetchConnectionParameters()
Fetches information about both ends of the connection: whatever is available.
bool nativeBind(const QHostAddress &address, quint16 port)
qint64 nativePendingDatagramSize() const
bool nativeListen(int backlog)
qint64 nativeSendDatagram(const char *data, qint64 length, const QIpPacketHeader &header)
bool nativeConnect(const QHostAddress &address, quint16 port)
QSocketNotifier * writeNotifier
void setPortAndAddress(quint16 port, const QHostAddress &address, qt_sockaddr *aa, QT_SOCKLEN_T *sockAddrSize)
bool nativeLeaveMulticastGroup(const QHostAddress &groupAddress, const QNetworkInterface &iface)
QHostAddress adjustAddressProtocol(const QHostAddress &address) const
QSocketNotifier * exceptNotifier
qint64 nativeRead(char *data, qint64 maxLength)
qint64 nativeReceiveDatagram(char *data, qint64 maxLength, QIpPacketHeader *header, QAbstractSocketEngine::PacketHeaderOptions options)
@ NetworkUnreachableErrorString
@ DatagramTooLargeErrorString
@ HostUnreachableErrorString
@ AddressProtectedErrorString
@ OperationUnsupportedErrorString
@ NetworkDroppedConnectionErrorString
@ ConnectionResetErrorString
@ ReceiveDatagramErrorString
@ AddressNotAvailableErrorString
@ NonBlockingInitFailedErrorString
@ RemoteHostClosedErrorString
@ InvalidSocketErrorString
@ ConnectionTimeOutErrorString
@ ConnectionRefusedErrorString
@ AddressInuseErrorString
@ ProtocolUnsupportedErrorString
@ SendDatagramErrorString
@ UnknownSocketErrorString
@ BroadcastingInitFailedErrorString
The QNativeSocketEngine class provides low level access to a socket.
The QNetworkInterface class provides a listing of the host's IP addresses and network interfaces.
Combined button and popup list for selecting options.
DBusConnection const char DBusError * error
static QString header(const QString &name)
EGLOutputLayerEXT EGLint EGLAttrib value
[5]
GLenum GLuint GLenum GLsizei length
GLbitfield GLuint64 timeout
[4]
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data
GLuint GLuint64EXT address