Wireshark-dev: Re: [Wireshark-dev] MIB parsing unnecessary

From: Jaap Keuter <jaap.keuter@xxxxxxxxx>
Date: Mon, 13 Aug 2007 23:48:46 +0200
Hi,

There's a long standing bug on this: bug 1088.
Fixing that would be most appreciated.

Thanx,
Jaap

Luis EG Ontanon wrote:
You'll keep that feature :-)

char* format_oid_decoded(guint8* oid, guint32 len) {
	char* result;
	guint32 matched;
	oid_info_t* oid_info = lookup_oid(oid, len, &matched);
	
	if (oid_info) {
		result = oid_info->decoded;
	} else {
		result = "";
	}

	if (len - matched == 0) {
		return result;
	} else {
		return ep_strdup_printf("%s.%u",result,format_oid_undecoded(&(oid[len
- matched]), len - matched) );
	}
}

On 8/13/07, Anders Broman <a.broman@xxxxxxxxx> wrote:
Hi,
It sounds really good, a few thoughts:

A "feature" of the current MIB parser is that it will print the
"resolved" part of an OID tree (name: 1.3.6.1.4.1.5825.3.2.1.2.6.1.1.1
(SNMPv2-SMI::enterprises.5825.3.2.1.2.6.1.1.1)) which is lacking from
OID's added from ASN1 dissectors. I have found this useful on occasion.
It would be nice to keep this feature.

The tool to create the file must be part of the distro and run on all
Platforms as it's possible to add private MIB's today.

As the file becomes much smaller we can consider supplying more "MIB's"
With the package.
Regards
Anders





-----Ursprungligt meddelande-----
Från: wireshark-dev-bounces@xxxxxxxxxxxxx
[mailto:wireshark-dev-bounces@xxxxxxxxxxxxx] För Luis EG Ontanon
Skickat: den 13 augusti 2007 18:53
Till: Developer support list for Wireshark
Ämne: [Wireshark-dev] MIB parsing unnecessary

I been thinking about the fact that Wireshark does not really need a
MIB parser. It just needs to know OIDs, their name and their type.

So I believe we should use a flat file that contains these three
fields and provide the user with a separate program that actually
reads the MIBs to maintain this file: like adding and removing
modules. A file with basic oids should be provided to the user.

That way we could get rid of the NET-SNMP dependency, and *clean* a
dissector that really needs it. I guess that more than 1/3rd (2/3rds
if we take encryption out) of the handwritten code in
packet-snmp-template.c can easily go. And trust me, no one will ever
miss it, especially the maintainers.

The program to maintain the oids file (based on libsmi) I got it
almost written (while "playing" with libsmi).

The changes t get rid of the "extra code" in packet-snmp I'll commit
in the next week or so if no one objects that.

Luis