On Tue, Sep 09, 2003 at 08:30:09AM -0700, Alek wasiukiewicz wrote:
> I compiled successfully, but after I start ethereal the following error appears:
>
> [root@sidhcp199213 ethereal-0.9.14]# ethereal
>
> ** ERROR **: file prefs.c: line 432 (register_preference): assertion failed: ((strncmp(name,
> module->name, strlen(module->name)) != 0) || (((name[strlen(module->name)]) != '.') &&
> ((name[strlen(module->name)]) != '_')))
> aborting...
> Aborted
>
> any ideas?
Did you just download and compile it, or have you written new dissectors
for it and tried compiling and testing them as well?
If you've written new dissectors, and they have preference settings,
*don't* give the preference settings names that begin with the name of
the protocol - that's redundant; the name you use in the
"prefs_register_{bool,enum,string,uint}_preference()" have the name of
the protocol (the last of the three names specified in
"proto_register_protocol()" put at the beginning, with a "." between
them, so you don't have to do it yourself. (I.e, something such as
"ip.ip_defragment" is redundant - "ip.defragment" is sufficient, so the
IP dissector just registers that preference as "defragment".)
If you haven't written new dissectors, or you have but they don't have
preference settings that begin with the name of the protocol, try
downloading 0.9.15 and compiling and running it - 0.9.15 has just been
released, and that might've been a bug in the source release that we
fixed.
If it crashes in the same fashion, and it produced a core dump file (I'm
inferring from the "#" in your prompt that this is probably UNIX, not
Windows), try using a debugger on the binary and the core file, and get
a stack trace.
If it didn't produce a core dump file, try not running it as root. If
it *still* doesn't produce a core dump, try running it inside the
debugger.