Ethereal-dev: Re: [ethereal-dev] network object names

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Laurent Deniel <deniel@xxxxxxxxxxx>
Date: Tue, 15 Sep 1998 21:36:38 +0200
Gilbert Ramirez Jr. wrote:
> 
> As Laurent Deniel said:
> >
> > Why do you want to use them in the library ? Maybe a simple replacement of
> > the logical name by the hardware address (at ethereal level) can be done
> > (e.g. for filters) ?
> 
> that is true. I was hoping to make a patched tcpdump, too. :)
 
oh ok :-)

> > In such a case, according to the length of the system-wide and per-user
> > files, these names can be stored in another hash table in resolv.c
> 
> that sounds good.
> 
> --gilbert
> 

What I propose to implement:

/etc/ethers		- system wide hardware addresses (txt)
/etc/manuf		- system wide vendor addresses (txt)
~/.ethereal/ethers      - per-user hardware addresses (txt)

The manuf file (I have already one) can be delivered with
the ethereal distribution.

At ethereal startup, the hash tables are filled with the content
of these files. Filling the manufacturer hash table with the whole
file at startup is not a problem (not so big). I think that for
the ethers files, it is not an issue but if I am wrong, I can
update the hash table only on demand (as TCP/UDP ports) (i.e.
a getethbyaddr that will parse the ethers files like
getservbyport when an address is not already in the hash table).

At packet decoding, the XX:XX:XX:XX:XX:XX is replaced by 
<logical_name> if found in the system wide or per-user ethers
files else by <vendor_string>_XX:XX:XX if the manufacturer is
known. If the -n option is set no resolving is performed.
When an option window will be available, the switch between
these tree representations can be easily controlled (if the
routines are well written ;-)

Laurent.

--
Laurent DENIEL            | E-mail: deniel@xxxxxxxxxxx
Paris, FRANCE             |         deniel@xxxxxxxxxxxxxxxxxxxxxxxxxxxx
                          | WWW   : http://www.worldnet.fr/~deniel
    All above opinions are personal, unless stated otherwise.