src/protocols/jabber/jpacket.c

Mon, 31 Mar 2003 07:19:46 +0000

author
Sean Egan <seanegan@pidgin.im>
date
Mon, 31 Mar 2003 07:19:46 +0000
changeset 4916
11b8fd3f8ffc
parent 3127
4213ad5b231c
permissions
-rw-r--r--

[gaim-migrate @ 5250]
Buddy list editing.

Does this work? I don't know; I don't test things. It compiles though.

It probably does work though, because I'm perfect.

So, see, I did really terribly in school last semester (really terribly--
like, why didn't they kick me out terribly) and so I'm working really hard
to do well this semester (and I am so far :)). Anyway, that's why you may
have noticed I'm a bit slow with the development of late. In fact, I would
test and fix this stuff up, but I really need to work on an English paper,
so I figured it'd be best just to commit it as is and let Rob, Nathan, Chip
and the boys work out the kinks. Besides, I've had most of this code written
for weeks already.

Thank you all for your patience.

Oh, so there's now an Edit menu on your buddy list (which makes the minimum
buddy list width wider :-D) and here you'll find things with which to edit
your list and privacy, prefs and accounts. It should all be real intuitive.

Feel free to IM me if you want to talk about my paper.

3127
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
1 /* --------------------------------------------------------------------------
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
2 *
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
3 * License
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
4 *
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
5 * The contents of this file are subject to the Jabber Open Source License
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
6 * Version 1.0 (the "JOSL"). You may not copy or use this file, in either
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
7 * source code or executable form, except in compliance with the JOSL. You
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
8 * may obtain a copy of the JOSL at http://www.jabber.org/ or at
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
9 * http://www.opensource.org/.
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
10 *
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
11 * Software distributed under the JOSL is distributed on an "AS IS" basis,
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
12 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the JOSL
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
13 * for the specific language governing rights and limitations under the
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
14 * JOSL.
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
15 *
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
16 * Copyrights
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
17 *
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
18 * Portions created by or assigned to Jabber.com, Inc. are
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
19 * Copyright (c) 1999-2002 Jabber.com, Inc. All Rights Reserved. Contact
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
20 * information for Jabber.com, Inc. is available at http://www.jabber.com/.
2086
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
21 *
3127
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
22 * Portions Copyright (c) 1998-1999 Jeremie Miller.
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
23 *
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
24 * Acknowledgements
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
25 *
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
26 * Special thanks to the Jabber Open Source Contributors for their
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
27 * suggestions and support of Jabber.
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
28 *
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
29 * Alternatively, the contents of this file may be used under the terms of the
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
30 * GNU General Public License Version 2 or later (the "GPL"), in which case
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
31 * the provisions of the GPL are applicable instead of those above. If you
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
32 * wish to allow use of your version of this file only under the terms of the
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
33 * GPL and not to allow others to use your version of this file under the JOSL,
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
34 * indicate your decision by deleting the provisions above and replace them
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
35 * with the notice and other provisions required by the GPL. If you do not
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
36 * delete the provisions above, a recipient may use your version of this file
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
37 * under either the JOSL or the GPL.
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
38 *
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
39 *
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
40 * --------------------------------------------------------------------------*/
2086
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
41
3127
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
42 #include "lib.h"
2086
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
43
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
44 jpacket jpacket_new(xmlnode x)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
45 {
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
46 jpacket p;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
47
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
48 if(x == NULL)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
49 return NULL;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
50
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
51 p = pmalloc(xmlnode_pool(x),sizeof(_jpacket));
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
52 p->x = x;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
53
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
54 return jpacket_reset(p);
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
55 }
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
56
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
57 jpacket jpacket_reset(jpacket p)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
58 {
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
59 char *val;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
60 xmlnode x;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
61
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
62 x = p->x;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
63 memset(p,0,sizeof(_jpacket));
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
64 p->x = x;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
65 p->p = xmlnode_pool(x);
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
66
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
67 if(strncmp(xmlnode_get_name(x),"message",7) == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
68 {
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
69 p->type = JPACKET_MESSAGE;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
70 }else if(strncmp(xmlnode_get_name(x),"presence",8) == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
71 {
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
72 p->type = JPACKET_PRESENCE;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
73 val = xmlnode_get_attrib(x, "type");
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
74 if(val == NULL)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
75 p->subtype = JPACKET__AVAILABLE;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
76 else if(strcmp(val,"unavailable") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
77 p->subtype = JPACKET__UNAVAILABLE;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
78 else if(strcmp(val,"probe") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
79 p->subtype = JPACKET__PROBE;
3127
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
80 else if(strcmp(val,"error") == 0)
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
81 p->subtype = JPACKET__ERROR;
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
82 else if(strcmp(val,"invisible") == 0)
4213ad5b231c [gaim-migrate @ 3142]
Sean Egan <seanegan@pidgin.im>
parents: 2086
diff changeset
83 p->subtype = JPACKET__INVISIBLE;
2086
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
84 else if(*val == 's' || *val == 'u')
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
85 p->type = JPACKET_S10N;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
86 else if(strcmp(val,"available") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
87 { /* someone is using type='available' which is frowned upon */
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
88 xmlnode_hide_attrib(x,"type");
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
89 p->subtype = JPACKET__AVAILABLE;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
90 }else
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
91 p->type = JPACKET_UNKNOWN;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
92 }else if(strncmp(xmlnode_get_name(x),"iq",2) == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
93 {
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
94 p->type = JPACKET_IQ;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
95 p->iq = xmlnode_get_tag(x,"?xmlns");
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
96 p->iqns = xmlnode_get_attrib(p->iq,"xmlns");
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
97 }
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
98
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
99 /* set up the jids if any, flag packet as unknown if they are unparseable */
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
100 val = xmlnode_get_attrib(x,"to");
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
101 if(val != NULL)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
102 if((p->to = jid_new(p->p, val)) == NULL)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
103 p->type = JPACKET_UNKNOWN;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
104 val = xmlnode_get_attrib(x,"from");
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
105 if(val != NULL)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
106 if((p->from = jid_new(p->p, val)) == NULL)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
107 p->type = JPACKET_UNKNOWN;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
108
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
109 return p;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
110 }
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
111
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
112
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
113 int jpacket_subtype(jpacket p)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
114 {
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
115 char *type;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
116 int ret = p->subtype;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
117
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
118 if(ret != JPACKET__UNKNOWN)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
119 return ret;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
120
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
121 ret = JPACKET__NONE; /* default, when no type attrib is specified */
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
122 type = xmlnode_get_attrib(p->x, "type");
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
123 if(j_strcmp(type,"error") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
124 ret = JPACKET__ERROR;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
125 else
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
126 switch(p->type)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
127 {
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
128 case JPACKET_MESSAGE:
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
129 if(j_strcmp(type,"chat") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
130 ret = JPACKET__CHAT;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
131 else if(j_strcmp(type,"groupchat") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
132 ret = JPACKET__GROUPCHAT;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
133 else if(j_strcmp(type,"headline") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
134 ret = JPACKET__HEADLINE;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
135 break;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
136 case JPACKET_S10N:
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
137 if(j_strcmp(type,"subscribe") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
138 ret = JPACKET__SUBSCRIBE;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
139 else if(j_strcmp(type,"subscribed") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
140 ret = JPACKET__SUBSCRIBED;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
141 else if(j_strcmp(type,"unsubscribe") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
142 ret = JPACKET__UNSUBSCRIBE;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
143 else if(j_strcmp(type,"unsubscribed") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
144 ret = JPACKET__UNSUBSCRIBED;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
145 break;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
146 case JPACKET_IQ:
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
147 if(j_strcmp(type,"get") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
148 ret = JPACKET__GET;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
149 else if(j_strcmp(type,"set") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
150 ret = JPACKET__SET;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
151 else if(j_strcmp(type,"result") == 0)
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
152 ret = JPACKET__RESULT;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
153 break;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
154 }
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
155
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
156 p->subtype = ret;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
157 return ret;
007508451e2c [gaim-migrate @ 2096]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
158 }

mercurial