====================================================== README (tcl_snmp, tcl_curses, tcl_dbm, tcl_mib, tclnm) ====================================================== DATE: Wed Mar 24 21:07:40 MET 1993 STATUS: /* disregard all version-numbers in other files ! */ patchlevel a tcl_snmp 1.03 SNMP extensions. tcl_curses 1.03 Curses(3) interface tcl_dbm 1.03 Ndbm(3) interface tcl_mib 1.03 MIB access routines. tclnm 1.03 Tcl-Network-Management Known to work on these platforms: SunOS 4.1.3, X11R5, Tcl6.7, TK3.2, gcc-2.3.3 386BSD 0.1pl110, No X11, Tcl6.7, gcc-2.3.3 MESSAGE: News in 1.03: ( Consider this a beta-release. ) BEWARE: syntax for 'send' and 'callback' changed. The callback argument has been cleaned up. snmp set is implemented. (be careful !) no support from the MIB yet, I'm not sure I know how this is supposed to work. In the tk_version, everything stalls at the synchronous calls (ie. snmp get, snmp getnext &c &c), I might have found a way to do this better, but infinite recursion seems possible, I'll have to check it first. Improved installation, handles 386bsd too. The Scripts directory contains some beginnings, more to come, look carefully before running. Feature under test: caching the MIB-dbm data in VM. All data from the MIB-dbm file is cached in VM. (look for 'cache' in tcl_mib.tcl and tcl_dbm.c). This can be a problem with the (tclnm_)dumpmib utility since it might traverse large parts of the MIB. This is not the final implementation of it. Idea always welcome, Poul-Henning COMPILE/INSTALL: I have started on a friendly installation, But if anyone can point me at some code to do this, I would be happy. My $env() is mostly sun's, and I'm getting paid to keep their natural diversity at a minimum. You will need to edit Config.edit, the run any tcl program on Config.tcl, tcl or wish will do just fine, then make. I have included a makefile.init which will appear as just 'makefile' after a 'make realclean' which does just this. You might try make install, but check out install.tcl first... Whats installed: tclnm smic2dbm (and a dbm base is made) wishnm dumpmib/tclnm_dumpib ip_routes/tclnm_dumpib COPYRIGHT &c: Since I'm from Denmark, which is slightly less paranoid than the USA, and a good deal more reasonable one might add, you have to do without the normal kilobyte(s) of legalese. If you feel this is a problem, you may insert the GNU COPYLEFT here. "You can do whatever you want to with my code. Beware of the code I have borrowed, it might have other restrictions. If this solves a problem for you and we ever meet, you owe me a beer." ( The BEER-WARE LICENSE version 42) CREDITS: Except for the parts mentioned below, this was written by Poul-Henning Kamp . Lennart Sorth ought to share the blame, if any. Dave Collier-Brown has generously donated space on his ftp-server. The following has provided fixes & suggestions: Craig Jackson, Lennart Sorth, Chris Fedde, Louis A. Mamakos, Dirk Wisse, Juergen Schoenwaelder, Bill Owens, + anyone I forgot, in that case remind me and I'll straighten the record. The mail-list provided a lot of light, much appreciated, thanx. The MIB stuff lives on data from the SMIC MIB-compiler. This is the only MIB-compiler I have found which doesn't just do proof of concept. Contact: . The ASN.1 stuff is cut&pasted from Tricklet, a neat little SNMP package by Dirk Wisse / Ir. Jan van Oorschot. You can reach them at . { tcl_snmp/asn.[ch] tcl_snmp/asn1.h tcl_snmp/aut.[ch] tcl_snmp/pkt.[ch] tcl_snmp/snmp.h } AVAILABILITY: Via anonymous FTP from: nexus.yorku.ca ~pub/tcl_snmp Mirrored at: ftp.ibr.cs.tu-bs.de ~pub/languages/tcl/contrib/tcl_snmp [134.169.34.15] HISTORY: 23mar93 phk@data.fls.dk release of 1.03 Added set, snmp-error handling. 06mar93 phk@data.fls.dk release of 1.02 16feb93 phk@data.fls.dk found a bug in tcl_snmp/asn.c, integers of zero length hosed the code. Cisco saves a byte that way... (maybe a bug they say, but now we cope.) 27jan93 phk@data.fls.dk added mkpdu, rmpdu and -P, rearranged ParseLOIDV a bit. A patch to tcl_curses, and some to the MIB-stuff from Craig Jackson. 18jan93 phk@data.fls.dk Initial release of this collection of Tcl tools. BUGS: probably lots :-( many places memory leak when errors occur. The return from the mib isn't always good, ascii-strings with quotes and braces are not nice... TODO: tcl_snmp: ========= * implement close * implement destroy_tcl_snmp() * add round-trip-time & retry counters. * configure # of outstanding call-backs tk_snmp: ======== * decide on exact spec. tk_mib: ======= * decide on non tcl_snmp interface commands. * decide on and implement support for 'set' tk_dbm: ======= * Implement least-recently-used cache. tk_curses: ========== * curses(3) seems not at all to be a WKO (Well-Known-Object), I have no idea how to handle the differences. One could scan the libcurses.a for [tT] symbols, and make a conditional for each. But how to guarantee interoperability ??? * needs a cleanup anyway... EOF: That's all folk's.