libpurple/protocols/gg/lib/protocol.h

branch
release-2.x.y
changeset 35617
c9069e0e3c36
parent 31826
0f6ab56fbf9d
child 35573
d9a333109990
child 35627
fd11790cc4d6
--- a/libpurple/protocols/gg/lib/protocol.h	Mon Feb 24 15:43:08 2014 +0100
+++ b/libpurple/protocols/gg/lib/protocol.h	Fri Feb 28 17:29:00 2014 +0100
@@ -33,6 +33,8 @@
 
 #define GG_LOGIN80 0x0031
 
+#define GG_LOGIN105 0x0083
+
 #undef GG_FEATURE_STATUS80BETA
 #undef GG_FEATURE_MSG80
 #undef GG_FEATURE_STATUS80
@@ -40,9 +42,14 @@
 #define GG_FEATURE_MSG80		0x02
 #define GG_FEATURE_STATUS80 		0x05
 
+#define GG_DEFAULT_HOST_WHITE_LIST { "gadu-gadu.pl", "gg.pl", NULL }
+
 #define GG8_LANG	"pl"
 #define GG8_VERSION	"Gadu-Gadu Client Build "
 
+#define GG11_VERSION	"GG-Phoenix/"
+#define GG11_TARGET	" (BUILD;WINNT_x86-msvc;rv:11.0,pl;release;standard) (OS;Windows;Windows NT 6.1)"
+
 struct gg_login80 {
 	uint32_t uin;			/* mój numerek */
 	uint8_t language[2];		/* język: GG8_LANG */
@@ -63,6 +70,8 @@
 
 #define GG_LOGIN80_OK 0x0035
 
+#define GG_LOGIN110_OK 0x009d
+
 /**
  * Logowanie powiodło się (pakiet \c GG_LOGIN80_OK)
  */
@@ -92,6 +101,8 @@
 	uint32_t description_size;		/**< rozmiar opisu */
 } GG_PACKED;
 
+#define GG_NEW_STATUS105 0x0063
+
 #define GG_STATUS80BETA 0x002a
 #define GG_NOTIFY_REPLY80BETA 0x002b
 
@@ -319,6 +330,80 @@
 	/* char reply[]; */
 } GG_PACKED;
 
+struct gg_pong110 {
+	uint8_t dummy;
+	uint32_t time;
+} GG_PACKED;
+
+struct gg_chat_create {
+	uint32_t seq;
+	uint32_t dummy;
+} GG_PACKED;
+
+struct gg_chat_invite {
+	uint64_t id;
+	uint32_t seq;
+	uint32_t participants_count;
+	/* struct {
+		uint32_t uin;
+		uint32_t dummy; (0x1e)
+	} participants[]; */
+} GG_PACKED;
+
+struct gg_chat_leave {
+	uint64_t id;
+	uint32_t seq;
+} GG_PACKED;
+
+struct gg_chat_created {
+	uint64_t id;
+	uint32_t seq;
+} GG_PACKED;
+
+struct gg_chat_invite_ack {
+	uint64_t id;
+	uint32_t seq;
+	uint32_t unknown1; /* 0x00 */
+	uint32_t unknown2; /* 0x10 */
+} GG_PACKED;
+
+struct gg_chat_left {
+	uint64_t id;
+	uint32_t uin;
+} GG_PACKED;
+
+#define GG_ADD_NOTIFY105 0x007b
+#define GG_REMOVE_NOTIFY105 0x007c
+#define GG_EVENT110 0x0084
+#define GG_IMTOKEN 0x008c
+#define GG_ACCESS_INFO 0x008f
+#define GG_NOTIFY105_FIRST 0x0077
+#define GG_NOTIFY105_LAST 0x0078
+#define GG_NOTIFY105_LIST_EMPTY 0x0079
+#define GG_PONG110 0x00a1
+#define GG_OPTIONS 0x009b
+
+#define GG_SEND_MSG110 0x007d
+#define GG_RECV_MSG110 0x007e
+#define GG_RECV_OWN_MSG110 0x0082
+#define GG_ACK110 0x0086
+#define GG_SEND_MSG_ACK110 0x0087
+
+#define GG_CHAT_INFO 0x0093
+#define GG_CHAT_INFO_UPDATE 0x009e
+#define GG_CHAT_CREATED 0x0045
+#define GG_CHAT_INVITE_ACK 0x0047
+#define GG_CHAT_RECV_MSG 0x0088
+#define GG_CHAT_RECV_OWN_MSG 0x008e
+#define GG_CHAT_CREATE 0x0047
+#define GG_CHAT_INVITE 0x0090
+#define GG_CHAT_LEAVE 0x0052
+#define GG_CHAT_LEFT 0x0066
+#define GG_CHAT_SEND_MSG 0x008d
+
+#define GG_UIN_INFO 0x007a
+#define GG_TRANSFER_INFO 0x00a0
+
 #ifdef _WIN32
 #pragma pack(pop)
 #endif

mercurial