Frequently Asked Questions

 < Day Day Up > 



The following Frequently Asked Questions, answered by the authors of this book, are designed to both measure your understanding of the concepts presented in this chapter and to assist you with real-life implementation of these concepts. To have your questions about this chapter answered by the author, browse to www.syngress.com/solutions and click on the “Ask the Author” form. You will also gain access to thousands of other FAQs at ITFAQnet.com.

1. 

How does Ethereal know when a dissector should be called?

the dissector_add function defines the condition in which the dissector should be called.

2. 

Where do you locate the design document for developing Ethereal?

there really isn t a design document, but the readme.developer document and the other documents contained in the doc directory contain useful information.

3. 

How do you pass information from one dissector to another?

by using the pinfo--private_data to pass a pointer to the other dissectors data.

4. 

How do I know what functions are provided by Ethereal?

we have tried to list many of the common ones within this chapter, but for a complete listing you should look at the header files of the source for all exports . exports are the mechanism that allows you to define the public functions that will be available to the rest of the application. functions that are not exported are limited in visibility to the module in which they are defined. although they may be limited in their visibility, it is important that you do not create a function within your dissector that might conflict with a public function that has been exported. this is one of the reasons why you should declare your private functions as static unless you plan to export the function for use with other ethereal modules.

5. 

Can I build Ethereal with Microsoft Visual C++?

yes, you just need to make sure you have all of the required libraries and tools. it is important to realize that building under microsoft visual c++ does not include using the visual studio environment. building ethereal utilizes the command line interface and you build ethereal.exe with nmake.exe. ethereal does not include any visual studio workspace or configuration files to be used with the visual studio gui. to build ethereal under microsoft visual c++ you open a cmd window and then navigate to the main source directory of ethereal. finally you execute nmake with the syntax nmake f makefile.nmake .

6. 

Where can I find more information on programming the GUI?

the gtk website has development tutorials and examples at www.gtk.org

Answers

1. 

The dissector_add function defines the condition in which the dissector should be called.

2. 

There really isn’t a design document, but the README.developer document and the other documents contained in the doc directory contain useful information.

3. 

By using the pinfo->private_data to pass a pointer to the other dissectors data.

4. 

We have tried to list many of the common ones within this chapter, but for a complete listing you should look at the header files of the source for all exports. Exports are the mechanism that allows you to define the public functions that will be available to the rest of the application. Functions that are not exported are limited in visibility to the module in which they are defined. Although they may be limited in their visibility, it is important that you do not create a function within your dissector that might conflict with a public function that has been exported. This is one of the reasons why you should declare your private functions as static unless you plan to export the function for use with other Ethereal modules.

5. 

Yes, you just need to make sure you have all of the required libraries and tools. It is important to realize that building under Microsoft Visual C++ does not include using the visual studio environment. Building Ethereal utilizes the command line interface and you build Ethereal.exe with nmake.exe. Ethereal does not include any visual studio workspace or configuration files to be used with the visual studio GUI. To build Ethereal under Microsoft Visual C++ you open a CMD window and then navigate to the main source directory of Ethereal. Finally you execute nmake with the syntax – nmake –f makefile.nmake.

6. 

The GTK website has development tutorials and examples at www.gtk.org



 < Day Day Up > 



Ethereal Packet Sniffing
Ethereal Packet Sniffing (Syngress)
ISBN: 1932266828
EAN: 2147483647
Year: 2004
Pages: 105
Authors: Syngress

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net