Ethereal-users: Re: [ethereal-users] Problems compiling Ethereal with latest version of ucd-snmp

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

From: Guy Harris <gharris@xxxxxxxxxxxx>
Date: Sat, 19 Feb 2000 18:49:47 -0800
On Sun, Feb 20, 2000 at 01:49:56AM +0100, COLIN Stephane wrote:
> Hi all !!!
> 
> Someone know how i can compile ethereal with the latest ucn-snmp-4.1.1 tools ?
> 
> I have proceded like :
> 
> 1) compiled ucd-snmp-4.1.1 OK !!!
> 
> 2) compiled libpcap OK !!!
> 
> 3) compiled tcpdump OK !!!
> 
> 4) compiled ethereal 0.8.3 ERROR !!!
> 
> ------------------------------------
> 
> Switched back like this :
> 
> 1) compiled ucd-snmp-4.0.1 OK !!!
> 
> 2) compiled libpcap OK !!!
> 
> 3) compiled tcpdump OK !!!
> 
> 4) compiled ethereal 0.8.3 OK !!!
> 
> Any idea ???

It appears that the UCD SNMP folks' decision to make
"snmp_set_full_objid()" a macro had yet another unfortunate consequence
- not only do programs linked with pre-4.1[.x] shared libraries that
call "snmp_set_full_objid()" fail to run on systems with 4.1[.x] shared
libraries, but they can't even recompile, as "packet-snmp.c" doesn't
include the right header files to make said macro work.

Perhaps the UCD SNMP folk should consider making "snmp_set_full_objid()"
a subroutine again:

	void snmp_set_full_objid(int val)
	{
		ds_set_boolean(DS_LIBRARY_ID, DS_LIB_PRINT_FULL_OID, val);
	}

and replacing the #define of "snmp_set_full_objid()" in "snmp_api.h"
with the 4.0[.x] declaration of "snmp_set_full_objid()" in a 4.1.2
release?  That would fix both problems.

I'll look into putting #includes of whatever header files are necessary
into "packet-snmp.c"; hopefully I can do so without causing it to fail
to compile under 3.6[.x] or 4.0[.x].