OpenMoHAA 0.82.0
Loading...
Searching...
No Matches
chatSocket.h
1/*
2GameSpy Chat SDK
3Dan "Mr. Pants" Schoenblum
4dan@gamespy.com
5
6Copyright 1999-2007 GameSpy Industries, Inc
7
8devsupport@gamespy.com
9*/
10
11#ifndef _CHATSOCKET_H_
12#define _CHATSOCKET_H_
13
14/*************
15** INCLUDES **
16*************/
17#include "chat.h"
18#include "chatCrypt.h"
19
20/**********
21** ENUMS **
22**********/
23typedef enum ciConnectState
24{
25 ciNotConnected,
26 ciConnected,
27 ciDisconnected
28} ciConnectState;
29
30/**********
31** TYPES **
32**********/
33typedef struct ciBuffer
34{
35 char * buffer;
36 int length;
37 int size;
38} ciBuffer;
39
40typedef struct ciServerMessage
41{
42 char * message;
43 char * server;
44 char * nick;
45 char * user;
46 char * host;
47 char * command;
48 char * middle;
49 char * param;
50 char ** params;
51 int numParams;
53
54typedef struct ciSocket
55{
56 SOCKET sock;
57 ciConnectState connectState;
58 char serverAddress[256];
59
60 ciBuffer inputQueue;
61 ciBuffer outputQueue;
62
63 CHATBool secure;
64 gs_crypt_key inKey;
65 gs_crypt_key outKey;
66
67 ciServerMessage lastMessage;
68
69#ifdef IRC_LOG
70 char filename[FILENAME_MAX];
71#endif
72} ciSocket;
73
74/**************
75** FUNCTIONS **
76**************/
77CHATBool ciSocketInit(ciSocket * sock, const char * nick);
78
79CHATBool ciSocketConnect(ciSocket * sock,
80 const char * serverAddress,
81 int port);
82
83void ciSocketDisconnect(ciSocket * sock);
84
85void ciSocketThink(ciSocket * sock);
86
87CHATBool ciSocketSend(ciSocket * sock,
88 const char * buffer);
89
90CHATBool ciSocketSendf(ciSocket * sock,
91 const char * format,
92 ...);
93
94ciServerMessage * ciSocketRecv(ciSocket * sock);
95
96#endif
Definition chatSocket.h:34
Definition chatSocket.h:41
Definition chatSocket.h:55