1 #ifndef _KVI_IRCSOCKET_H_
2 #define _KVI_IRCSOCKET_H_
43 class QSocketNotifier;
124 struct timeval m_tAntiFloodLastMessageTime;
126 #ifdef COMPILE_SSL_SUPPORT
158 unsigned int id() {
return m_uId; };
164 #ifdef COMPILE_SSL_SUPPORT
176 #ifdef COMPILE_SSL_SUPPORT
181 KviSSL * getSSL() {
return m_pSSL; };
217 #ifdef COMPILE_SSL_SUPPORT
225 #endif // COMPILE_SSL_SUPPORT
246 bool getLocalHostIp(QString & szIp,
bool bIPv6);
253 void clearOutputQueue(
bool bPrivateMessagesOnly);
259 unsigned int outputQueueSize();
262 #ifdef COMPILE_SSL_SUPPORT
267 void raiseSSLError();
273 void printSSLPeerCertificate();
279 void printSSLCipherInfo();
280 #endif // COMPILE_SSL_SUPPORT
288 bool sendRawData(
const char * pcBuffer,
int iBufLen);
304 void connectionEstablished();
310 void connectedToProxy();
316 void connectedToIrcServer();
322 void proxyLoginHttp();
340 void proxyAuthUserPassV5();
346 void proxySendTargetDataV5();
353 void proxyHandleV5AuthReply(
unsigned char cReply);
360 void proxyHandleV5MethodReply(
unsigned char cReply);
367 void proxyHandleV5FinalReply(
unsigned char cReply);
374 void proxyHandleV4FinalReply(
unsigned char cReply);
382 void proxyHandleHttpFinalReply(
const char * pcBuffer,
int iBufLen);
399 void handleInvalidSocketRead(
int iReadLength);
405 virtual void reset();
427 bool queue_removeMessage();
433 void queue_removeAllMessages();
439 void queue_removePrivateMessages();
446 virtual void setState(SocketState state);
454 void outputSSLMessage(
const QString & szMsg);
461 void outputSSLError(
const QString & szMsg);
468 void outputProxyMessage(
const QString & szMsg);
475 void outputProxyError(
const QString & szMsg);
482 void outputSocketMessage(
const QString & szMsg);
489 void outputSocketWarning(
const QString & szMsg);
496 void outputSocketError(
const QString & szMsg);
502 void connectionTimedOut();
508 void writeNotifierFired(
int);
520 void readProxyData(
int);
526 void readHttpProxyErrorData(
int);
536 void flushSendQueue();
542 void doSSLHandshake(
int);
545 #endif //_KVI_IRCSOCKET_H_
int kvi_socket_t
Definition: kvi_sockettype.h:40
bool isConnected()
Returns true if the socket is connected.
Definition: KviIrcSocket.h:206
unsigned int m_uReadBytes
Definition: KviIrcSocket.h:117
Definition: KviIrcSocket.h:93
Definition: KviIrcSocket.h:97
Definition: KviConsoleWindow.h:75
The class which manages the irc servers.
Definition: KviIrcServer.h:51
#define KVIRC_API
Definition: kvi_settings.h:128
Definition: KviIrcSocket.h:98
Definition: KviIrcSocket.h:101
struct _KviIrcSocketMsgEntry * next_ptr
Definition: KviIrcSocket.h:61
An abstraction of a connection to an IRC server.
Definition: KviIrcConnection.h:95
SocketState state()
Returns the state of the socket.
Definition: KviIrcSocket.h:146
unsigned int m_uSentPackets
Definition: KviIrcSocket.h:120
unsigned int readBytes()
Returns the number of bytes read.
Definition: KviIrcSocket.h:187
KviIrcServer * m_pIrcServer
Definition: KviIrcSocket.h:114
Definition: KviDataBuffer.h:30
Definition: KviProxy.h:37
QTimer * m_pTimeoutTimer
Definition: KviIrcSocket.h:116
unsigned int id()
Returns the id of the socket.
Definition: KviIrcSocket.h:158
#define e
Definition: detector.cpp:69
SocketState m_state
Definition: KviIrcSocket.h:111
QSocketNotifier * m_pRsn
Definition: KviIrcSocket.h:113
Definition: KviIrcSocket.h:102
KviProxy * m_pProxy
Definition: KviIrcSocket.h:115
QSocketNotifier * m_pWsn
Definition: KviIrcSocket.h:112
KviIrcSocketMsgEntry * m_pSendQueueTail
Definition: KviIrcSocket.h:122
Code
Contains all error codes.
Definition: KviError.h:47
unsigned int m_uSentBytes
Definition: KviIrcSocket.h:118
KviIrcSocketMsgEntry * m_pSendQueueHead
Definition: KviIrcSocket.h:121
KviDataBuffer * pData
Definition: KviIrcSocket.h:60
Definition: KviIrcSocket.h:96
unsigned int sentPackets()
Returns the number of packets sent.
Definition: KviIrcSocket.h:199
KviIrcLink * m_pLink
Definition: KviIrcSocket.h:108
Definition: KviIrcSocket.h:99
Middle stack class for IRC connection.
Definition: KviIrcLink.h:55
Definition: KviIrcSocket.h:94
KviIrcLink * link()
Returns the link.
Definition: KviIrcSocket.h:140
unsigned int m_uId
Definition: KviIrcSocket.h:107
C++ Template based double linked pointer list class.
QTimer * m_pFlushTimer
Definition: KviIrcSocket.h:123
bool m_bInProcessData
Definition: KviIrcSocket.h:125
KviError::Code m_eLastError
Definition: KviIrcSocket.h:119
unsigned int sentBytes()
Returns the number of bytes sent.
Definition: KviIrcSocket.h:193
int lastError()
Returns the last error.
Definition: KviIrcSocket.h:152
bool usingSSL()
Returns true if the socket is a Secure Socket Layer (SSL)
Definition: KviIrcSocket.h:170
KviConsoleWindow * m_pConsole
Definition: KviIrcSocket.h:109
kvi_socket_t m_sock
Definition: KviIrcSocket.h:110
Holds the messages entries.
Definition: KviIrcSocket.h:58
SocketState
Definition: KviIrcSocket.h:91
KviConsoleWindow * console()
Returns the console.
Definition: KviIrcSocket.h:134
struct _KviIrcSocketMsgEntry KviIrcSocketMsgEntry
Definition: KviIrcSocket.h:51
This file contains compile time settings.
Definition: KviIrcSocket.h:95
Definition: KviIrcConnectionTarget.h:35
This class is the lowest level of the KVIrc networking stack.
Definition: KviIrcSocket.h:71
Definition: KviIrcSocket.h:100