2 * Interface for IrDA application dissectors
3 * By Jan Kiszka <jan.kiszka@web.de>
4 * Copyright 2003 Jan Kiszka
6 * Wireshark - Network traffic analyzer
7 * By Gerald Combs <gerald@unicom.net>
8 * Copyright 1998 Gerald Combs
10 * SPDX-License-Identifier: GPL-2.0-or-later
14 #ifndef __IRDA_APPL_H__
15 #define __IRDA_APPL_H__
18 * Prototypes, defines, and typedefs needed for implementing IrDA application
20 * There should be no need to modify this part.
23 /* LM-IAS Attribute types */
29 /* Maximum number of handled list entries of an IAP result */
30 #define MAX_IAP_ENTRIES 32
39 typedef bool (*ias_value_dissector_t
)(tvbuff_t
* tvb
, unsigned offset
, packet_info
* pinfo
, proto_tree
* tree
,
40 unsigned list_index
, uint8_t attr_type
, uint8_t circuit_id
);
42 typedef const struct ias_attr_dissector
{
43 const char* attr_name
;
44 ias_value_dissector_t value_dissector
;
45 } ias_attr_dissector_t
;
47 typedef const struct ias_class_dissector
{
48 const char* class_name
;
49 ias_attr_dissector_t
* pattr_dissector
;
50 } ias_class_dissector_t
;
53 extern bool check_iap_octet_result(tvbuff_t
* tvb
, proto_tree
* tree
, unsigned offset
,
54 const char* attr_name
, uint8_t attr_type
);
55 extern uint8_t check_iap_lsap_result(tvbuff_t
* tvb
, proto_tree
* tree
, unsigned offset
,
56 const char* attr_name
, uint8_t attr_type
);
58 extern void add_lmp_conversation(packet_info
* pinfo
, uint8_t dlsap
, bool ttp
, dissector_handle_t dissector
, uint8_t circuit_id
);
60 extern unsigned dissect_param_tuple(tvbuff_t
* tvb
, proto_tree
* tree
, unsigned offset
);
64 * Modify the lines below to add new protocols.
67 /* IrCOMM/IrLPT protocol */
68 extern void proto_register_ircomm(void);
69 extern ias_attr_dissector_t ircomm_attr_dissector
[];
70 extern ias_attr_dissector_t irlpt_attr_dissector
[];
72 /* Serial Infrared (SIR) */
73 extern void proto_register_irsir(void);
80 /* IAS class dissectors */
81 #define CLASS_DISSECTORS \
82 { "Device", device_attr_dissector }, \
83 { "IrDA:IrCOMM", ircomm_attr_dissector }, \
84 { "IrLPT", irlpt_attr_dissector }, \
87 #endif /* __IRDA_APPL_H__ */