Build the dpauxmon documentation.
[metze/wireshark/wip.git] / doc / idl2wrs.pod
1 =begin man
2
3 =encoding utf8
4
5 =end man
6
7 =head1 NAME
8
9 idl2wrs - CORBA IDL to Wireshark Plugin Generator
10
11 =head1 SYNOPSIS
12
13 B<idl2wrs> E<lt>filenameE<gt>
14
15 =head1 DESCRIPTION
16
17 B<idl2wrs> is a program that takes a user specified B<CORBA IDL>
18 file and generates B<"C"> source code for a B<Wireshark> "plugin".
19
20 This resulting file can be compiled as a B<Wireshark> plugin, and
21 used to monitor B<GIOP/IIOP> traffic that is using this IDL.
22
23 B<idl2wrs> is actually a shell script wrapper for two B<Python> programs.
24 These programs are:
25
26 =over 4
27
28 =item * B<wireshark_be.py>
29
30 Contains the main IDL Visitor Class
31
32 =item * B<wireshark_gen.py>
33
34 Contains the Source Code Generator Class
35
36 =back
37
38 B<idl2wrs> supports heuristic dissection of GIOP/IIOP traffic,
39 and some experimental code for explicit dissection, based on
40 Object Key <-> Repository Id mapping.
41 However, code for heuristic based plugins is
42 generated by default, and users should consider this the preferred
43 method unless you have some namespace collisions.
44
45
46 =head1 OPTIONS
47
48 Currently there are no options. B<idl2wrs> can be invoked as follows.
49
50 1.  To write the C code to stdout.
51
52     idl2wrs  <your_file.idl>
53
54     eg: idl2wrs echo.idl
55
56
57 2. To write to a file, just redirect the output.
58
59     idl2wrs echo.idl > packet-test.c
60
61
62
63
64 =head1 ENVIRONMENT
65
66 B<idl2wrs> will look for B<wireshark_be.py> and B<wireshark_gen.py> in
67 B<$PYTHONPATH/site-packages/> and if not found, will try the current
68 directory B<./>
69
70 The B<-p> option passed to omniidl (inside B<idl2wrs>) indicates where
71 B<wireshark_be.py> and B<wireshark_gen.py> will be searched.  This may
72 need tweaking if you place these files somewhere else.
73
74 If it complains about being unable to find some modules (eg tempfile.py),
75 you may want to check if PYTHONPATH is set correctly.
76
77 eg:  PYTHONPATH=/usr/lib/python1.5/
78
79
80 =head1 SEE ALSO
81
82 wireshark(1), tshark(1)
83
84
85 =head1 NOTES
86
87 B<idl2wrs> (including B<wireshark_be.py> and B<wireshark_gen.py>) are part of
88 the B<Wireshark> distribution.  The latest version of B<Wireshark> can
89 be found at L<https://www.wireshark.org>.
90
91 B<idl2wrs> uses B<omniidl>, an IDL parser, and can be found at
92 L<http://omniorb.sourceforge.net/>
93
94 =head1 TODO
95
96 Some of the more important things to do are:
97
98 =over 4
99
100 =item *
101 Improve Explicit dissection code.
102
103 =item *
104 Improve command line options.
105
106 =item *
107 Improve decode algorithm when we have operation name collision.
108
109 =back
110
111 =head1 AUTHORS
112
113   Original Author
114   -------- ------
115   Frank Singleton             <frank.singleton[AT]ericsson.com>
116
117
118   Contributors
119   ------------
120