1 /* packet-aim-invitation.c
2 * Routines for AIM Instant Messenger (OSCAR) dissection, SNAC Invitation
3 * Copyright 2004, Jelmer Vernooij <jelmer@samba.org>
7 * Wireshark - Network traffic analyzer
8 * By Gerald Combs <gerald@wireshark.org>
9 * Copyright 1998 Gerald Combs
11 * This program is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU General Public License
13 * as published by the Free Software Foundation; either version 2
14 * of the License, or (at your option) any later version.
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
21 * You should have received a copy of the GNU General Public License
22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
30 #include <epan/packet.h>
32 #include "packet-aim.h"
34 void proto_register_aim_invitation(void);
35 void proto_reg_handoff_aim_invitation(void);
37 #define FAMILY_INVITATION 0x0006
39 /* Initialize the protocol and registered fields */
40 static int proto_aim_invitation
= -1;
42 static int ett_aim_invitation
= -1;
44 static int dissect_aim_invitation_req(tvbuff_t
*tvb
, packet_info
*pinfo
, proto_tree
*invite_tree
)
46 return dissect_aim_tlv_sequence(tvb
, pinfo
, 0, invite_tree
, aim_onlinebuddy_tlvs
);
49 static const aim_subtype aim_fnac_family_invitation
[] = {
50 { 0x0001, "Error", dissect_aim_snac_error
},
51 { 0x0002, "Invite a friend to join AIM", dissect_aim_invitation_req
},
52 { 0x0003, "Invitation Ack", NULL
},
58 /* Register the protocol with Wireshark */
60 proto_register_aim_invitation(void)
63 /* Setup protocol subtree array */
64 static gint
*ett
[] = {
68 /* Register the protocol name and description */
69 proto_aim_invitation
= proto_register_protocol("AIM Invitation Service", "AIM Invitation", "aim_invitation");
71 /* Required function calls to register the header fields and subtrees used */
72 proto_register_subtree_array(ett
, array_length(ett
));
76 proto_reg_handoff_aim_invitation(void)
78 aim_init_family(proto_aim_invitation
, ett_aim_invitation
, FAMILY_INVITATION
, aim_fnac_family_invitation
);