Mercurial > pidgin.yaz
annotate libpurple/protocols/msn/p2p.c @ 31769:eeca86db288b
Oops, I forgot to move the size check to the new location.
author | Elliott Sales de Andrade <qulogic@pidgin.im> |
---|---|
date | Thu, 10 Mar 2011 05:07:48 +0000 |
parents | 8cf9270acf4c |
children | b8e076d51817 |
rev | line source |
---|---|
31412
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
1 /** |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
2 * @file p2p.c MSN P2P functions |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
3 * |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
4 * purple |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
5 * |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
6 * Purple is the legal property of its developers, whose names are too numerous |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
7 * to list here. Please refer to the COPYRIGHT file distributed with this |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
8 * source distribution. |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
9 * |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
10 * This program is free software; you can redistribute it and/or modify |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
11 * it under the terms of the GNU General Public License as published by |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
12 * the Free Software Foundation; either version 2 of the License, or |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
13 * (at your option) any later version. |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
14 * |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
15 * This program is distributed in the hope that it will be useful, |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
18 * GNU General Public License for more details. |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
19 * |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
20 * You should have received a copy of the GNU General Public License |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
21 * along with this program; if not, write to the Free Software |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
22 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
23 */ |
72e6fa6caecc
These new files are missing GPL headers. And fix a couple incorrect
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31306
diff
changeset
|
24 |
31209
198d5bf82e09
Oops, forgot to save before commiting.
masca@cpw.pidgin.im
parents:
31206
diff
changeset
|
25 #include "internal.h" |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
26 #include "debug.h" |
31209
198d5bf82e09
Oops, forgot to save before commiting.
masca@cpw.pidgin.im
parents:
31206
diff
changeset
|
27 |
198d5bf82e09
Oops, forgot to save before commiting.
masca@cpw.pidgin.im
parents:
31206
diff
changeset
|
28 #include "p2p.h" |
31491
7b771e6f1142
Change SLP P2P functions to use the new buffer access functions
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31417
diff
changeset
|
29 #include "msnutils.h" |
31206
f66e289bebc6
Move parsing of the p2p header to p2p to avoid duplicated code.
masca@cpw.pidgin.im
parents:
diff
changeset
|
30 |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
31 MsnP2PInfo * |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
32 msn_p2p_info_new(MsnP2PVersion version) |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
33 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
34 MsnP2PInfo *info = g_new0(MsnP2PInfo, 1); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
35 info->version = version; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
36 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
37 switch (version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
38 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
39 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
40 /* Nothing to do */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
41 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
42 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
43 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
44 purple_debug_error("msn", "Invalid P2P Info version: %d\n", version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
45 g_free(info); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
46 info = NULL; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
47 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
48 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
49 return info; |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
50 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
51 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
52 MsnP2PInfo * |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
53 msn_p2p_info_dup(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
54 { |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
55 MsnP2PInfo *new_info = g_new0(MsnP2PInfo, 1); |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
56 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
57 new_info->version = info->version; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
58 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
59 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
60 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
61 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
62 *new_info = *info; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
63 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
64 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
65 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
66 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
67 g_free(new_info); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
68 new_info = NULL; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
69 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
70 |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
71 return new_info; |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
72 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
73 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
74 void |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
75 msn_p2p_info_free(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
76 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
77 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
78 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
79 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
80 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
81 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
82 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
83 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
84 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
85 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
86 |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
87 g_free(info); |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
88 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
89 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
90 size_t |
31768
8cf9270acf4c
Add a maximum length when parsing the P2P wire data.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31717
diff
changeset
|
91 msn_p2p_header_from_wire(MsnP2PInfo *info, const char *wire, size_t max_len) |
31206
f66e289bebc6
Move parsing of the p2p header to p2p to avoid duplicated code.
masca@cpw.pidgin.im
parents:
diff
changeset
|
92 { |
31769
eeca86db288b
Oops, I forgot to move the size check to the new location.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31768
diff
changeset
|
93 size_t len = 0; |
31206
f66e289bebc6
Move parsing of the p2p header to p2p to avoid duplicated code.
masca@cpw.pidgin.im
parents:
diff
changeset
|
94 |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
95 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
96 case MSN_P2P_VERSION_ONE: { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
97 MsnP2PHeader *header = &info->header.v1; |
31206
f66e289bebc6
Move parsing of the p2p header to p2p to avoid duplicated code.
masca@cpw.pidgin.im
parents:
diff
changeset
|
98 |
31769
eeca86db288b
Oops, I forgot to move the size check to the new location.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31768
diff
changeset
|
99 if (max_len < P2P_PACKET_HEADER_SIZE) { |
eeca86db288b
Oops, I forgot to move the size check to the new location.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31768
diff
changeset
|
100 /* Invalid packet length */ |
eeca86db288b
Oops, I forgot to move the size check to the new location.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31768
diff
changeset
|
101 len = 0; |
eeca86db288b
Oops, I forgot to move the size check to the new location.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31768
diff
changeset
|
102 break; |
eeca86db288b
Oops, I forgot to move the size check to the new location.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31768
diff
changeset
|
103 } |
eeca86db288b
Oops, I forgot to move the size check to the new location.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31768
diff
changeset
|
104 |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
105 header->session_id = msn_pop32le(wire); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
106 header->id = msn_pop32le(wire); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
107 header->offset = msn_pop64le(wire); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
108 header->total_size = msn_pop64le(wire); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
109 header->length = msn_pop32le(wire); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
110 header->flags = msn_pop32le(wire); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
111 header->ack_id = msn_pop32le(wire); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
112 header->ack_sub_id = msn_pop32le(wire); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
113 header->ack_size = msn_pop64le(wire); |
31206
f66e289bebc6
Move parsing of the p2p header to p2p to avoid duplicated code.
masca@cpw.pidgin.im
parents:
diff
changeset
|
114 |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
115 len = P2P_PACKET_HEADER_SIZE; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
116 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
117 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
118 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
119 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
120 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
121 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
122 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
123 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
124 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
125 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
126 return len; |
31206
f66e289bebc6
Move parsing of the p2p header to p2p to avoid duplicated code.
masca@cpw.pidgin.im
parents:
diff
changeset
|
127 } |
f66e289bebc6
Move parsing of the p2p header to p2p to avoid duplicated code.
masca@cpw.pidgin.im
parents:
diff
changeset
|
128 |
31491
7b771e6f1142
Change SLP P2P functions to use the new buffer access functions
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31417
diff
changeset
|
129 char * |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
130 msn_p2p_header_to_wire(MsnP2PInfo *info, size_t *len) |
31206
f66e289bebc6
Move parsing of the p2p header to p2p to avoid duplicated code.
masca@cpw.pidgin.im
parents:
diff
changeset
|
131 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
132 char *wire = NULL; |
31491
7b771e6f1142
Change SLP P2P functions to use the new buffer access functions
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31417
diff
changeset
|
133 char *tmp; |
31534
a8cc50c2279f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
31491
diff
changeset
|
134 |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
135 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
136 case MSN_P2P_VERSION_ONE: { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
137 MsnP2PHeader *header = &info->header.v1; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
138 tmp = wire = g_new(char, P2P_PACKET_HEADER_SIZE); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
139 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
140 msn_push32le(tmp, header->session_id); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
141 msn_push32le(tmp, header->id); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
142 msn_push64le(tmp, header->offset); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
143 msn_push64le(tmp, header->total_size); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
144 msn_push32le(tmp, header->length); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
145 msn_push32le(tmp, header->flags); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
146 msn_push32le(tmp, header->ack_id); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
147 msn_push32le(tmp, header->ack_sub_id); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
148 msn_push64le(tmp, header->ack_size); |
31206
f66e289bebc6
Move parsing of the p2p header to p2p to avoid duplicated code.
masca@cpw.pidgin.im
parents:
diff
changeset
|
149 |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
150 if (len) |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
151 *len = P2P_PACKET_HEADER_SIZE; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
152 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
153 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
154 } |
31206
f66e289bebc6
Move parsing of the p2p header to p2p to avoid duplicated code.
masca@cpw.pidgin.im
parents:
diff
changeset
|
155 |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
156 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
157 if (len) |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
158 *len = 0; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
159 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
160 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
161 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
162 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
163 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
164 } |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
165 |
31209
198d5bf82e09
Oops, forgot to save before commiting.
masca@cpw.pidgin.im
parents:
31206
diff
changeset
|
166 return wire; |
198d5bf82e09
Oops, forgot to save before commiting.
masca@cpw.pidgin.im
parents:
31206
diff
changeset
|
167 |
31206
f66e289bebc6
Move parsing of the p2p header to p2p to avoid duplicated code.
masca@cpw.pidgin.im
parents:
diff
changeset
|
168 } |
f66e289bebc6
Move parsing of the p2p header to p2p to avoid duplicated code.
masca@cpw.pidgin.im
parents:
diff
changeset
|
169 |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
170 size_t |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
171 msn_p2p_footer_from_wire(MsnP2PInfo *info, const char *wire) |
31220 | 172 { |
173 MsnP2PFooter *footer; | |
174 | |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
175 footer = &info->footer; |
31220 | 176 |
31491
7b771e6f1142
Change SLP P2P functions to use the new buffer access functions
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31417
diff
changeset
|
177 footer->value = msn_pop32be(wire); |
31220 | 178 |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
179 return P2P_PACKET_FOOTER_SIZE; |
31220 | 180 } |
181 | |
31491
7b771e6f1142
Change SLP P2P functions to use the new buffer access functions
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31417
diff
changeset
|
182 char * |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
183 msn_p2p_footer_to_wire(MsnP2PInfo *info, size_t *len) |
31220 | 184 { |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
185 MsnP2PFooter *footer; |
31491
7b771e6f1142
Change SLP P2P functions to use the new buffer access functions
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31417
diff
changeset
|
186 char *wire; |
7b771e6f1142
Change SLP P2P functions to use the new buffer access functions
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31417
diff
changeset
|
187 char *tmp; |
31220 | 188 |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
189 footer = &info->footer; |
31491
7b771e6f1142
Change SLP P2P functions to use the new buffer access functions
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31417
diff
changeset
|
190 tmp = wire = g_new(char, P2P_PACKET_FOOTER_SIZE); |
31220 | 191 |
31491
7b771e6f1142
Change SLP P2P functions to use the new buffer access functions
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31417
diff
changeset
|
192 msn_push32be(tmp, footer->value); |
31220 | 193 |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
194 if (len) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
195 *len = P2P_PACKET_FOOTER_SIZE; |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
196 |
31220 | 197 return wire; |
198 } | |
199 | |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
200 void |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
201 msn_p2p_info_to_string(MsnP2PInfo *info, GString *str) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
202 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
203 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
204 case MSN_P2P_VERSION_ONE: { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
205 MsnP2PHeader *header = &info->header.v1; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
206 g_string_append_printf(str, "Session ID: %u\r\n", header->session_id); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
207 g_string_append_printf(str, "ID: %u\r\n", header->id); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
208 g_string_append_printf(str, "Offset: %" G_GUINT64_FORMAT "\r\n", header->offset); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
209 g_string_append_printf(str, "Total size: %" G_GUINT64_FORMAT "\r\n", header->total_size); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
210 g_string_append_printf(str, "Length: %u\r\n", header->length); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
211 g_string_append_printf(str, "Flags: 0x%x\r\n", header->flags); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
212 g_string_append_printf(str, "ACK ID: %u\r\n", header->ack_id); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
213 g_string_append_printf(str, "SUB ID: %u\r\n", header->ack_sub_id); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
214 g_string_append_printf(str, "ACK Size: %" G_GUINT64_FORMAT "\r\n", header->ack_size); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
215 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
216 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
217 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
218 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
219 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
220 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
221 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
222 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
223 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
224 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
225 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
226 |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
227 g_string_append_printf(str, "Footer: 0x%08X\r\n", info->footer.value); |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
228 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
229 |
31306
5964f65c17ed
Avoid duplicated code using a util function to check the flags.
masca@cpw.pidgin.im
parents:
31220
diff
changeset
|
230 gboolean |
5964f65c17ed
Avoid duplicated code using a util function to check the flags.
masca@cpw.pidgin.im
parents:
31220
diff
changeset
|
231 msn_p2p_msg_is_data(const MsnP2PHeaderFlag flags) |
5964f65c17ed
Avoid duplicated code using a util function to check the flags.
masca@cpw.pidgin.im
parents:
31220
diff
changeset
|
232 { |
5964f65c17ed
Avoid duplicated code using a util function to check the flags.
masca@cpw.pidgin.im
parents:
31220
diff
changeset
|
233 return (flags == P2P_MSN_OBJ_DATA || |
31417
f26e961e1274
Fix the name of this flag.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31412
diff
changeset
|
234 flags == (P2P_WLM2009_COMP | P2P_MSN_OBJ_DATA) || |
31306
5964f65c17ed
Avoid duplicated code using a util function to check the flags.
masca@cpw.pidgin.im
parents:
31220
diff
changeset
|
235 flags == P2P_FILE_DATA); |
5964f65c17ed
Avoid duplicated code using a util function to check the flags.
masca@cpw.pidgin.im
parents:
31220
diff
changeset
|
236 } |
31491
7b771e6f1142
Change SLP P2P functions to use the new buffer access functions
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31417
diff
changeset
|
237 |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
238 gboolean |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
239 msn_p2p_info_is_valid(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
240 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
241 gboolean valid = FALSE; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
242 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
243 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
244 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
245 valid = info->header.v1.total_size >= info->header.v1.length; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
246 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
247 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
248 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
249 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
250 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
251 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
252 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
253 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
254 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
255 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
256 return valid; |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
257 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
258 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
259 gboolean |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
260 msn_p2p_info_is_final(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
261 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
262 gboolean final = FALSE; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
263 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
264 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
265 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
266 final = info->header.v1.offset + info->header.v1.length >= info->header.v1.total_size; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
267 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
268 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
269 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
270 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
271 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
272 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
273 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
274 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
275 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
276 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
277 return final; |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
278 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
279 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
280 guint32 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
281 msn_p2p_info_get_session_id(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
282 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
283 guint32 session_id = 0; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
284 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
285 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
286 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
287 session_id = info->header.v1.session_id; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
288 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
289 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
290 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
291 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
292 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
293 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
294 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
295 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
296 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
297 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
298 return session_id; |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
299 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
300 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
301 guint32 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
302 msn_p2p_info_get_id(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
303 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
304 guint32 id = 0; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
305 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
306 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
307 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
308 id = info->header.v1.id; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
309 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
310 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
311 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
312 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
313 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
314 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
315 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
316 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
317 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
318 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
319 return id; |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
320 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
321 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
322 guint64 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
323 msn_p2p_info_get_offset(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
324 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
325 guint64 offset = 0; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
326 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
327 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
328 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
329 offset = info->header.v1.offset; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
330 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
331 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
332 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
333 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
334 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
335 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
336 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
337 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
338 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
339 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
340 return offset; |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
341 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
342 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
343 guint64 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
344 msn_p2p_info_get_total_size(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
345 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
346 guint64 total_size = 0; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
347 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
348 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
349 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
350 total_size = info->header.v1.total_size; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
351 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
352 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
353 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
354 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
355 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
356 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
357 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
358 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
359 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
360 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
361 return total_size; |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
362 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
363 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
364 guint32 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
365 msn_p2p_info_get_length(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
366 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
367 guint32 length = 0; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
368 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
369 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
370 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
371 length = info->header.v1.length; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
372 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
373 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
374 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
375 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
376 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
377 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
378 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
379 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
380 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
381 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
382 return length; |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
383 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
384 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
385 guint32 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
386 msn_p2p_info_get_flags(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
387 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
388 guint32 flags = 0; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
389 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
390 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
391 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
392 flags = info->header.v1.flags; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
393 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
394 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
395 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
396 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
397 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
398 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
399 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
400 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
401 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
402 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
403 return flags; |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
404 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
405 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
406 guint32 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
407 msn_p2p_info_get_ack_id(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
408 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
409 guint32 ack_id = 0; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
410 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
411 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
412 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
413 ack_id = info->header.v1.ack_id; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
414 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
415 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
416 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
417 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
418 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
419 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
420 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
421 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
422 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
423 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
424 return ack_id; |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
425 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
426 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
427 guint32 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
428 msn_p2p_info_get_ack_sub_id(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
429 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
430 guint32 ack_sub_id = 0; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
431 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
432 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
433 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
434 ack_sub_id = info->header.v1.ack_sub_id; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
435 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
436 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
437 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
438 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
439 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
440 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
441 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
442 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
443 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
444 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
445 return ack_sub_id; |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
446 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
447 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
448 guint64 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
449 msn_p2p_info_get_ack_size(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
450 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
451 guint64 ack_size = 0; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
452 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
453 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
454 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
455 ack_size = info->header.v1.ack_size; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
456 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
457 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
458 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
459 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
460 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
461 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
462 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
463 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
464 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
465 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
466 return ack_size; |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
467 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
468 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
469 guint32 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
470 msn_p2p_info_get_app_id(MsnP2PInfo *info) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
471 { |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
472 return info->footer.value; |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
473 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
474 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
475 void |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
476 msn_p2p_info_set_session_id(MsnP2PInfo *info, guint32 session_id) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
477 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
478 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
479 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
480 info->header.v1.session_id = session_id; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
481 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
482 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
483 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
484 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
485 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
486 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
487 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
488 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
489 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
490 |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
491 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
492 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
493 void |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
494 msn_p2p_info_set_id(MsnP2PInfo *info, guint32 id) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
495 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
496 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
497 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
498 info->header.v1.id = id; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
499 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
500 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
501 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
502 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
503 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
504 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
505 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
506 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
507 } |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
508 |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
509 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
510 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
511 void |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
512 msn_p2p_info_set_offset(MsnP2PInfo *info, guint64 offset) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
513 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
514 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
515 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
516 info->header.v1.offset = offset; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
517 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
518 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
519 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
520 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
521 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
522 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
523 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
524 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
525 } |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
526 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
527 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
528 void |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
529 msn_p2p_info_set_total_size(MsnP2PInfo *info, guint64 total_size) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
530 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
531 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
532 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
533 info->header.v1.total_size = total_size; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
534 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
535 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
536 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
537 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
538 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
539 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
540 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
541 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
542 } |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
543 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
544 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
545 void |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
546 msn_p2p_info_set_length(MsnP2PInfo *info, guint32 length) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
547 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
548 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
549 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
550 info->header.v1.length = length; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
551 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
552 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
553 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
554 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
555 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
556 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
557 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
558 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
559 } |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
560 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
561 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
562 void |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
563 msn_p2p_info_set_flags(MsnP2PInfo *info, guint32 flags) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
564 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
565 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
566 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
567 info->header.v1.flags = flags; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
568 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
569 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
570 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
571 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
572 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
573 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
574 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
575 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
576 } |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
577 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
578 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
579 void |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
580 msn_p2p_info_set_ack_id(MsnP2PInfo *info, guint32 ack_id) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
581 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
582 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
583 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
584 info->header.v1.ack_id = ack_id; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
585 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
586 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
587 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
588 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
589 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
590 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
591 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
592 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
593 } |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
594 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
595 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
596 void |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
597 msn_p2p_info_set_ack_sub_id(MsnP2PInfo *info, guint32 ack_sub_id) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
598 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
599 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
600 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
601 info->header.v1.ack_sub_id = ack_sub_id; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
602 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
603 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
604 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
605 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
606 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
607 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
608 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
609 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
610 } |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
611 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
612 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
613 void |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
614 msn_p2p_info_set_ack_size(MsnP2PInfo *info, guint64 ack_size) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
615 { |
31717
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
616 switch (info->version) { |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
617 case MSN_P2P_VERSION_ONE: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
618 info->header.v1.ack_size = ack_size; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
619 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
620 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
621 case MSN_P2P_VERSION_TWO: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
622 /* Nothing to do! */ |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
623 break; |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
624 |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
625 default: |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
626 purple_debug_error("msn", "Invalid P2P Info version: %d\n", info->version); |
9562a7baa9e4
Add P2Pv2 header information to the P2P info struct. Of course, all
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31599
diff
changeset
|
627 } |
31599
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
628 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
629 |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
630 void |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
631 msn_p2p_info_set_app_id(MsnP2PInfo *info, guint32 app_id) |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
632 { |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
633 info->footer.value = app_id; |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
634 } |
34da321b60f1
Try to hide all P2P fields away behind accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
31534
diff
changeset
|
635 |