2001-08-14  Gary Thomas  <gthomas@redhat.com>

	* tests/snmpping.c: 
	* cdl/snmpagent.cdl: Add CDL options to configure tests.

2001-07-31  Hugo Tyson <hmt@redhat.com>
2001-07-31  Ron Kundla <rkundla@nband.com>

	* utils/mib2c/mib2c (Table-handling): Concatenate rather than
	replace subsequent processed variables.  The symptom was that in
	the generated header file you only get the last table in the MIB.
	This fixes it.  Thanks Ron!

2001-06-07  Jesper Skov  <jskov@redhat.com>

	* src/mibgroup/mibII/ip.c (var_ipNetToMediaTable): Only handle
	IPNETTOMEDIAPHYSADDRESS for devices with associated hardware.

2001-05-29  Hugo Tyson  <hmt@redhat.com>

	* tests/snmpping.c (net_test): Committed the improved version of
	this that I've been using for a while - with new improved SNMPv3
	testing.  This requires (in the current setup) explicit init of
	the SNMPv3 MIBs and a "user" for authentication purposes.  The
	test can also be set to run the interfaces in promiscuous mode,
	and/or to run forever, and it has lots better diagnostics if you
	see mangled ping packets.  And the ping size varies too, to test
	ICMP defragmentation.

2001-05-29  Hugo Tyson  <hmt@redhat.com>
2001-05-28  Manu Sharma <Manu.Sharam@ascom.ch>
2001-05-28  Andrew Lunn <Andrew.Lunn@ascom.ch>

	* src/mibgroup/mibII/interfaces.c (var_ifTable): Support a direct
	call into a customer's device ioctl() for devices of type
	IFT_CUSTOMER_SPECIAL - if they have defined it.  This is to make
	it easier to add a custom interface type and have SNMP deal with
	it properly without editting the SNMP sources.

	* include/snmpEngine.h, include/usmState.h, include/usmUser.h:
	* src/mibgroup/snmpv3/snmpEngine.c, src/mibgroup/snmpv3/usmStats.c:
	* src/mibgroup/snmpv3/usmUser.c: NEW FILES: Added support of
	SNMPv3 User based Security Module (USM). This adds
	authentification and encryption to snmp requests and replies.

	* cdl/snmpagent.cdl: Build the new files above.

2001-05-08  Jonathan Larmour  <jlarmour@redhat.com>

	* utils/mib2c/README-eCos: Clarify usage of mib2c a bit.

2001-01-17  Jonathan Larmour  <jlarmour@redhat.com>

	* src/mibgroup/util_funcs.c (restart_hook): Don't use alarm() in eCos
	(wait_on_exec): Don't use waitpid() in eCos
	The above prevent link errors.

2001-01-10  Jonathan Larmour  <jlarmour@redhat.com>

	* cdl/snmpagent.cdl: Clarify ISO C requirements

2000-11-29  Hugo Tyson  <hmt@redhat.com>
2000-11-29  Andrew Lunn <Andrew.Lunn@ascom.ch>
	* src/mibgroup/mibII/dot3.c (var_dot3StatsTable): 
	* src/mibgroup/mibII/interfaces.c (var_ifTable): 
	Undo Hugo's fix; it fails if there are holes in the if_index space
	(not something I expected).  Use this fix instead, from Andrew.
	[CASE 104939]
	
	* src/mibgroups/mibII/ip.c: IPADENTIFINDEX should return the
	interface index as seen in the interface group.  This is not the
	if_index but merely acquired by counting.

2000-11-17  Hugo Tyson  <hmt@redhat.com>

	* src/mibgroup/mibII/dot3.c (var_dot3StatsTable): 
	* src/mibgroup/mibII/interfaces.c (var_ifTable): Use the
	last component of the OID to select the matching interface rather
	than merely counting through them.  Thus this MIB matches eg. the
	IP MIB in terms of ip.ipAddrTable.ipAddrEntry.ipAdEntIfIndex.
	[CASE 104939 "snmp interface and IP group don't correspond"]

2000-08-31  Hugo Tyson  <hmt@cygnus.co.uk>

	* tests/snmpping.c (net_test): Add use of network realtime test
	harness - if available.  One example is provided for the EBSA285
	in "devs/eth/arm/ebsa285/VERSION/tests/test_net_realtime.h"

2000-08-25  Hugo Tyson  <hmt@cygnus.co.uk>

	* src/mibgroup/mibII/dot3.c (var_dot3StatsTable): A little further
	diddling; have a bool to say whether the dot3 info is filled in.

2000-08-24  Hugo Tyson  <hmt@cygnus.co.uk>

	* src/mibgroup/mibII/dot3.c (var_dot3StatsTable):
	* src/mibgroup/mibII/interfaces.c (var_ifTable): Use new ioctl()
	interface to get information out of ethernet devices.  If the
	ioctl call is not supported, we just get default values.

2000-08-16  Hugo Tyson  <hmt@cygnus.co.uk>

	* src/snmpd.c (snmpd): Remove call to
	init_all_network_interfaces(); it's a bad idea for the situations
	when initialization has been done externally to our helper
	functions.  This adds the constraint that you must initialize the
	network interfaces first, by whatever means.  Starting snmpd
	before the network is up may cause confusion.
	[CASE 104330]

	Also tidied some warnings.

2000-07-25  Hugo Tyson  <hmt@cygnus.co.uk>

	* tests/snmpping.c (net_test): Make it ping the loopback
	interfaces so as to do some valid testing in the absence of any
	real interfaces on the platform.  Also make it run less time or no
	doubt the farm will report many non-failures.

2000-07-13  Hugo Tyson  <hmt@cygnus.co.uk>

	* tests/snmpping.c: Up the stack size to cope with full DHCP
	initialization in init_all_network_interfaces().

2000-06-27  Hugo Tyson  <hmt@cygnus.co.uk>

	* src/mibgroup/mibII/dot3.c (var_dot3StatsTable): Forgot the
	DOT3STATSINDEX for loopback, so it claimed index 0.  Fixed.

2000-06-26  Hugo Tyson  <hmt@cygnus.co.uk>

	* src/snmptask.c (cyg_net_snmp_init): Change the priority of the
	SNMP thread; make it one less important than the network thread of
	which it is a client.

2000-06-19  Hugo Tyson  <hmt@cygnus.co.uk>

	* src/mibgroup/mibII/dot3.c (var_dot3StatsTable): Don't trip over
	loopback interface; it doesn't support the same enquiries as an
	eth device.

	* src/mibgroup/mibII/interfaces.c (var_ifTable): Don't trip over
	loopback interface; it doesn't support the same enquiries as an
	eth device.

2000-06-14  Hugo Tyson  <hmt@cygnus.co.uk>

	* cdl/snmpagent.cdl: Add options for the default values for system
	MIB vals that describe the machine.

	* src/mibgroup/mibII/system_mib.c (init_system_mib): Pick up
	values from configury (this goes via config.h in the library).

2000-06-14  John Dallaway  <jld@redhat.com>

	* cdl/snmpagent.cdl: Tidy display strings.

2000-06-14  Hugo Tyson  <hmt@cygnus.co.uk>

	* cdl/snmpagent.cdl: Install all the header files below
	include/ucd-snmp/ as is the normal host-side standard; this avoids
	some rather terrible filenamespace pollution too.  That location
	is also added to the include path, using a mechanism that's rather
	build-method-specific; it may need revisiting.

2000-06-14  Hugo Tyson  <hmt@cygnus.co.uk>

	* cdl/snmpagent.cdl: parent this below CYGPKG_NET.

2000-06-13  Hugo Tyson  <hmt@cygnus.co.uk>

	* cdl/snmpagent.cdl: Add mibgroup/mibII/dot3.c to compile list.

	* src/mibgroup/mibII/dot3.c (var_dot3StatsTable): Done that - and
	it required changes to the EBSA ether device driver.  Of course,
	if those info-macros are not present, the SNMP agent module uses
	zeros, so it should "work" half-heartedly with other platforms
	too.

	* include/mibgroup/mibII/dot3.h: Completed handler function list.

	* src/mibgroup/mibII/interfaces.c (var_ifTable): This now makes
	use of info-macros exported from the ethernet dd.

	* include/mib_module_inits.h: Call init_dot3() in the bootup.

	* src/mibgroup/mibII/system_mib.c (init_system_mib): Fill in
	default system type description.

2000-06-09  Hugo Tyson  <hmt@cygnus.co.uk>

	* src/mibgroup/mibII/tcp.c (var_tcpConnTable): Done that.

2000-06-09  Hugo Tyson  <hmt@cygnus.co.uk>

	* src/mibgroup/mibII/udp.c (var_udpTable): Done that.

2000-06-08  Hugo Tyson  <hmt@cygnus.co.uk>

	* src/mibgroup/mibII/icmp.c (var_icmp): Fleshed this out with a
	copy from the UCD version - BSD stack nosing-in-kernel memory arm
	of the code is the same, unsurprisingly.

2000-06-08  Hugo Tyson  <hmt@cygnus.co.uk>

	* src/mibgroup/mibII/ip.c (var_ip): Flesh this out; it's mostly
	there now.

	* src/mibgroup/mibII/interfaces.c (var_ifTable): Make this more
	consistent, particularly the use of FIXMEs for the bits I have not
	completed yet.

2000-06-06  Hugo Tyson  <hmt@cygnus.co.uk>

	* src/mibgroup/mibII/interfaces.c (var_ifTable): Flesh this out
	with lots of snooping into the ifnet structures and a little info
	from the device driver.  The info is there now.

	* src/mibgroup/mibII/tcp.c (var_tcpConnTable,var_ipv6TcpConnTable):
	* src/mibgroup/mibII/udp.c (var_udpTable,var_ipv6UdpTable):
	* src/mibgroup/mibII/ip.c (var_ipAddrTable,var_ipNetToMediaTable):
	Fix these (by commenting out) parts for complex tables that made
	the snmpwalk tool crash out; ie. it acts as if all such complex
	tables are empty, rather than returning badly indexed entries.

2000-06-02  Hugo Tyson  <hmt@cygnus.co.uk>

	* utils/mib2c/README-eCos:
	* utils/mib2c/README.mib2c:
	* utils/mib2c/mib2c:
	* utils/mib2c/mib2c.conf:
	* utils/mib2c/mib2c.conf-ORIG:
	* utils/mib2c/mib2c.storage.conf:
	* utils/mib2c/mib2c.vartypes.conf:
	New files, just to keep my variant of mib2c.conf under source
	controlled; it includes our copyright (and attribution to UCD et
	al, of course) the different include paths as required by eCos'
	package layout and a couple of other nits sorted out.

2000-06-02  Hugo Tyson  <hmt@cygnus.co.uk>

	* cdl/snmpagent.cdl (compile): Omit the read-only file-system
	part; the library will cheerfully use it, but it's not at all
	necessary.  Waste of time - unless someone is liable to use the
	snmplib for tool rather than agent purposes.

	* include/mib_module_includes.h: Include the full set of includes
	for the MIBs we will implement.  Ie.
	  mibgroup/mibII/system_mib.h  // { mib2 1 }
	  mibgroup/mibII/sysORTable.h  // { mib2 1.9.1 } == { system 9.1 }
	  mibgroup/mibII/interfaces.h  // { mib2 2 }
	  (NOT mibgroup/mibII/at.h)    // #3 is deprecated
	  mibgroup/mibII/ip.h          // { mib2 4 }
	  mibgroup/mibII/icmp.h        // { mib2 5 }
	  mibgroup/mibII/tcp.h         // { mib2 6 }
	  mibgroup/mibII/udp.h         // { mib2 7 }
	  mibgroup/mibII/dot3.h        // { mib2 10.7 } == { transmission 7 }
	  mibgroup/mibII/snmp_mib.h    // { mib2 11 }

	* include/mib_module_inits.h: Same thing really; but dot3 is not
	yet in there at all, it'll be added later.
	  init_system_mib();  // { mib2 1 }
	  init_sysORTable();  // { mib2 1.9.1 } == { system 9.1 }
	  init_interfaces();  // { mib2 2 }
	  //init_at();        // #3 is deprecated
	  init_ip();          // { mib2 4 }
	  init_icmp();        // { mib2 5 }
	  init_tcp();         // { mib2 6 }
	  init_udp();         // { mib2 7 }
	  //init_dot3();      // { mib2 10.7 } == { transmission 7 } FIXME
	  init_snmp_mib();    // { mib2 11 }

	* include/mibgroup/mibII/icmp.h:
	* include/mibgroup/mibII/interfaces.h:
	* include/mibgroup/mibII/ip.h:
	* include/mibgroup/mibII/tcp.h:
	* include/mibgroup/mibII/udp.h:
	These files have all been replaced by versions direct from mib2c,
	without any of the UNIX/LINUX/Win32-specific gubbins from the
	original versions.

	* include/mibgroup/mibII/dot3.h: New file direct from mib2c.

	* include/mibgroup/mibII/route_write.h: DELETED
	* include/mibgroup/mibII/at.h: DELETED
	* include/mibgroup/mibII/var_route.h: DELETED
	Removed, not necessary for the vanilla headers; they were there
	before to satisfy include needs of the originals.

	* src/mibgroup/mibII/dot3.c:
	* src/mibgroup/mibII/icmp.c:
	* src/mibgroup/mibII/interfaces.c:
	* src/mibgroup/mibII/ip.c:
	* src/mibgroup/mibII/tcp.c:
	* src/mibgroup/mibII/udp.c:
	These are new files, direct from mib2c, again without all the
	UNIX/LINUX/Win32-specific gubbins from the original versions.

	* src/rofs/EtherLike-MIB.c: DELETED
	* src/rofs/IANAifType-MIB.c: DELETED
	* src/rofs/IF-MIB.c: DELETED
	* src/rofs/IP-MIB.c: DELETED
	* src/rofs/RFC-1215.c: DELETED
	* src/rofs/SNMPv2-CONF.c: DELETED
	* src/rofs/SNMPv2-MIB.c: DELETED
	* src/rofs/SNMPv2-SMI.c: DELETED
	* src/rofs/SNMPv2-TC.c: DELETED
	* src/rofs/SNMPv2-TM.c: DELETED
	* src/rofs/TCP-MIB.c: DELETED
	* src/rofs/UDP-MIB.c: DELETED
	* src/rofs/snmprofs.c: DELETED
	Turns out that I don't need a read-only FS with all the MIBs in in
	the agent - reading them in (and complaining of their absence) is
	part of the snmplib startup, but it's not needed by an agent.
	This also means that if reinstated they should live in the lib
	component rather than the agent one; oh well.


2000-05-31  Hugo Tyson  <hmt@cygnus.co.uk>

	* Initial commit of port of UCD-SNMP version 4.1.2 to eCos. 

//==========================================================================
//
//      ./agent/current/ChangeLog
//
//
//==========================================================================
//####COPYRIGHTBEGIN####
//                                                                          
// -------------------------------------------                              
// The contents of this file are subject to the Red Hat eCos Public License 
// Version 1.1 (the "License"); you may not use this file except in         
// compliance with the License.  You may obtain a copy of the License at    
// http://www.redhat.com/                                                   
//                                                                          
// Software distributed under the License is distributed on an "AS IS"      
// basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.  See the 
// License for the specific language governing rights and limitations under 
// the License.                                                             
//                                                                          
// The Original Code is eCos - Embedded Configurable Operating System,      
// released September 30, 1998.                                             
//                                                                          
// The Initial Developer of the Original Code is Red Hat.                   
// Portions created by Red Hat are                                          
// Copyright (C) 1998, 1999, 2000 Red Hat, Inc.                             
// All Rights Reserved.                                                     
// -------------------------------------------                              
//                                                                          
//####COPYRIGHTEND####
//####UCDSNMPCOPYRIGHTBEGIN####
//
// -------------------------------------------
//
// Portions of this software may have been derived from the UCD-SNMP
// project,  <http://ucd-snmp.ucdavis.edu/>  from the University of
// California at Davis, which was originally based on the Carnegie Mellon
// University SNMP implementation.  Portions of this software are therefore
// covered by the appropriate copyright disclaimers included herein.
//
// The release used was version 4.1.2 of May 2000.  "ucd-snmp-4.1.2"
// -------------------------------------------
//
//####UCDSNMPCOPYRIGHTEND####
//==========================================================================
//#####DESCRIPTIONBEGIN####
//
// Author(s):    hmt
// Contributors: hmt
// Date:         2000-05-30
// Purpose:      Port of UCD-SNMP distribution to eCos.
// Description:  
//              
//
//####DESCRIPTIONEND####
//
//==========================================================================
/********************************************************************
       Copyright 1989, 1991, 1992 by Carnegie Mellon University

			  Derivative Work -
Copyright 1996, 1998, 1999, 2000 The Regents of the University of California

			 All Rights Reserved

Permission to use, copy, modify and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appears in all copies and
that both that copyright notice and this permission notice appear in
supporting documentation, and that the name of CMU and The Regents of
the University of California not be used in advertising or publicity
pertaining to distribution of the software without specific written
permission.

CMU AND THE REGENTS OF THE UNIVERSITY OF CALIFORNIA DISCLAIM ALL
WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS.  IN NO EVENT SHALL CMU OR
THE REGENTS OF THE UNIVERSITY OF CALIFORNIA BE LIABLE FOR ANY SPECIAL,
INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
FROM THE LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*********************************************************************/
