arpwatch-2.1a15/CHANGES0100444000177400000340000000775310446326556013726 0ustar leressunsrc@(#) $Id: CHANGES,v 1.42 2006/06/21 20:34:52 leres Exp $ (LBL) v2.1 Wed Jun 21 13:34:42 PDT 2006 - Add FDDI support. Based on code contributed by Flemming Johansen (fsj@csd.cri.dk) - New -f flag overrides the default database filename. - New -r flag allows tcpdump save files to be read. - memcpy() doesn't handle overlapping buffers so use bcopy() instead. Reported by Attila Bruncsak (attila.bruncsak@itu.int) - Have configure determine the sendmail path. - Don't bother updating hostnames when reading arp.dat since this can be expensive in the number of dns requests generated. - Improve robostness of the aprfetch script. - Update massagevendor to convert the IEEE public Organizationally Unique Identifier (OUI) file format. - Don't use -e with awk, not all versions support it. Suggested by Stephen Thompson (thompson@pobox.upenn.edu) - Convert usage of mktemp() to mkstemp(). - Add -n flag (alternate networks) and -N flag (don't report bogons). - Improve ethernet address parser error checking. - More concessions to linux. - Special case dn_skipname() check for bind 8. - Convert arp2ethers from csh to sh. v2.0.2 Sat Jun 7 03:15:03 PDT 1997 - Look for "_res" in -lresolv since Solaris doesn't have it in libc. Problem first reported by Blair Zajac (blair@gps.caltech.edu) v2.0.1 Wed Jan 1 20:43:12 PST 1997 - Rework signal setup to accommodate Linux. - Autoconf -lstr for DLPI under HPUX. v2.0 Sat Oct 5 22:14:05 PDT 1996 - Add arpsnmp. - Updated ethercodes.dat from http://www.cavebear.com/CaveBear/Ethernet/ - Ethernet vendor codes table now dynamic. - Linux support added. v1.11 Sat Sep 14 14:24:26 PDT 1996 - Rewrite gmt2local() to avoid problematic os dependencies. - Fixed the autoconf "wait status" detection for OSF. Resulted from a bug report from Guy Loucks (ukloug@engsyd.bhp.com.au) - Autoconf ARPDIR as suggested by Davin Milun (milun@cs.buffalo.edu) - Use autoconf to make ether_header and ether_arp struct accesses work on more systems. v1.10 Mon Jul 29 19:03:24 PDT 1996 - Disable hinfo lookups when dn_skipname() isn't available. v1.9 Sun Fri Jul 5 23:12:20 PDT 1996 - Added getopt() externs for systems that don't define them. Thanks to Jun Shoji (jshoji@jsnext.linc.or.jp) - Fixed swapped arguments to MEMCPY(). Thanks to Jun Shoji. - On systems that have it, use sigset() instead of signal() since signal() has different semantics on these systems. Resulted from a bug report by Michael Neef (neef@neuroinformatik.ruhr-uni-bochum.de) - Modified to handle timezones more generically. v1.8 Fri Jun 7 19:45:09 PDT 1996 - Convert to autoconf. v1.7 Mon Jun 12 03:25:50 PDT 1995 - Fixed bug that was causing endless nameserver lookups. - Fixed the makefile to use -I. to pick up the files in lbl directory. v1.6 Tue Apr 4 13:35:10 PDT 1995 - Fix a typo in configure regarding libresolv logic. Thanks to Mark Andrews (mandrews@alias.com). - Added os prototype support. v1.5 Sun Apr 2 19:40:16 PDT 1995 - Forgot to include addresses.h.in. Thanks to Tamas Pinter (pinter@donio.bgytf.hu). v1.4 Wed Mar 15 20:26:31 PST 1995 - Updated ethercodes.dat from ftp://ftp.lcs.mit.edu/pub/map/EtherNet-codes - Changed to use -lresolv under SunOS 4 since the stock libc doesn't have dns routines). - Change configure to create addresses.h from addresses.h.in when it doesn't already exist. v1.3 Tue Oct 4 12:55:53 PDT 1994 - Port to Solaris. New configuration script. - dns.c: Define BUFSIZ if it's not defined by stdio.h. - Lowered the snaplen to what we really need. v1.2 Tue Oct 12 00:34:47 PDT 1993 - arpwatch.c: Modified to use libpcap. - db.c: Rewrote data structures to handle an arbitrary number of ethernet addresses per ip address. - report.c: Simplified child process management. Queue mail messages if we get too many at once. v1.1 Sat Aug 14 20:42:46 PDT 1993 - arpwatch.c: Fixed byte ordering problems. Thanks to Yoshitaka Tokugawa (toku@dit.co.jp). - inet.c: Modified to work with 4.4 BSD. v1.0 Tue Jun 16 3:05:31 PDT 1992 - Initial release. arpwatch-2.1a15/FILES0100444000177400000340000000117110462452076013477 0ustar leressunsrcCHANGES FILES INSTALL Makefile.in README VERSION aclocal.m4 addresses.h.in arp2ethers arpfetch arpsnmp.8 arpsnmp.c arpwatch.8 arpwatch.c arpwatch.h bcopy.c bihourly.sh config.guess config.sub configure configure.in d.awk db.c db.h dns.c dns.h duplicates.awk e.awk ec.c ec.h ethercodes.dat euppertolower.awk fddi.h file.c file.h install-sh intoa.c lbl/gnuc.h lbl/os-irix4.h lbl/os-irix5.h lbl/os-osf3.h lbl/os-solaris2.h lbl/os-sunos3.h lbl/os-sunos4.h lbl/os-ultrix4.h linux-include/netinet/if_ether.h machdep.c machdep.h massagevendor massagevendor-old mkdep p.awk report.c report.h setsignal.c setsignal.h strerror.c util.c util.h arpwatch-2.1a15/INSTALL0100444000177400000340000001014110462452634013740 0ustar leressunsrc@(#) $Id: INSTALL,v 1.18 2006/07/28 18:21:09 leres Exp $ (LBL) If you have not built libpcap, do so first (unless you only want to build arpsnmp). See the README file in this directory for the ftp location. You will need an ANSI C compiler to build the arpwatch package. The configure script will abort if your compiler is not ANSI compliant. If this happens, use the GNU C compiler, available via anonymous ftp: ftp://ftp.gnu.org/gnu/gcc/ After libpcap has been built (either install it or make sure it's in ../libpcap), edit the BINDEST and MANDEST paths in Makefile.in and the address defines in addresses.h.in. Then run ./configure (a shell script). "configure" will determine your system attributes and generate an appropriate Makefile and addresses.h from Makefile.in and addresses.h.in. Now build arpwatch by running "make". If you only want to build arpsnmp, and don't have libpcap, type "make arpsnmp" Note that if you do not already have an arp.dat database file, the configure script will automatically create an empty one for you. It's recommended that you run arpwatch with the -d flag at first since it has the potential of generating a huge number of email messages when started with an empty database file on a busy subnet. Finally, remember that startup error messages are syslog'ed, so if arpwatch won't run, check your syslogs first. If you want to run arpsnmp, there are two scripts in this distribution that are of interest. The first is arpfetch and it knows how to retrieve the arp tables from a cisco using snmpwalk. This script takes two arguments, the hostname and the snmp community name. The other script is called bihourly.sh and is suitable as a cron job. To configure it, you need to create a file called "list" that contains the names of the hosts to query and "cname" which contains the read/only snmp community name. If you get a lot of "bogon" syslog messages, the host system is probably running with the wrong subnet mask. Finally, arpwatch and arpsnmp use the resolver(3) library to get most of its information. This means you probably should either have a local named running or a correctly configured /etc/resolv.conf (or both). FILES ----- CHANGES - description of differences between releases FILES - list of files exported as part of the distribution INSTALL - this file Makefile.in - compilation rules (input to the configure script) README - description of distribution VERSION - version of this release aclocal.m4 - autoconf macros addresses.h.in - default email address defines arp2ethers - script to convert arp.dat to ethers format arpfetch - snmp grabber script (converts snmpwalk output) arpsnmp.8 - man page arpsnmp.c - snmp reader program arpwatch.8 - man page arpwatch.c - main program arpwatch.h - config info bcopy.c - missing routine bihourly.sh - arpsnmp wrapper script config.guess - autoconf support config.sub - autoconf support configure - configure script (run this first) configure.in - configure script source d.awk - add "-ip" suffix to hosts with decnet addresses db.c - database routines db.h - global definitions dns.c - domain name system routines dns.h - global definitions e.awk - add "-old" suffix to sorted ethers file ec.c - ethernet vendor code routines ec.h - global definitions ethercodes.dat - ethernet vendor code database euppertolower.awk - massagevendor support file.c - db file i/o routines file.h - global definitions inet.c - Internet routines install-sh - BSD style install script intoa.c - inet_ntoa() replacement lbl/gnuc.h - gcc macros and defines lbl/os-*.h - os dependent defines and prototypes machdep.c - machine dependent routines machdep.h - machine dependent definitions massagevendor - massage oui.txt.html into ethercodes.dat format massagevendor-old - massage vendor.html into ethercodes.dat format mkdep - construct Makefile dependency list p.awk - print the first ethernet address seen report.c - email report generating routines report.h - global definitions setsignal.c - os independent signal routines setsignal.h - os independent signal prototypes strerror.c - missing routine util.c - arpwatch and arpsnmp utility routines util.h - global definitions arpwatch-2.1a15/Makefile.in0100444000177400000340000001106307122022733014750 0ustar leressunsrc# Copyright (c) 1990, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000 # The Regents of the University of California. All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that: (1) source code distributions # retain the above copyright notice and this paragraph in its entirety, (2) # distributions including binary code include the above copyright notice and # this paragraph in its entirety in the documentation or other materials # provided with the distribution, and (3) all advertising materials mentioning # features or use of this software display the following acknowledgement: # ``This product includes software developed by the University of California, # Lawrence Berkeley Laboratory and its contributors.'' Neither the name of # the University nor the names of its contributors may be used to endorse # or promote products derived from this software without specific prior # written permission. # THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED # WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. # # @(#) $Id: Makefile.in,v 1.68 2000/06/15 00:39:54 leres Exp $ (LBL) # # Various configurable paths (remember to edit Makefile.in, not Makefile) # # Top level hierarchy prefix = @prefix@ exec_prefix = @exec_prefix@ # Pathname of directory to install the binary BINDEST = @sbindir@ # Pathname of directory to install the man page MANDEST = @mandir@ # Pathname of directory to install database file ARPDIR = $(prefix)/arpwatch # VPATH srcdir = @srcdir@ VPATH = @srcdir@ # # You shouldn't need to edit anything below here. # CC = @CC@ PROG = arpwatch CCOPT = @V_CCOPT@ INCLS = -I. @V_INCLS@ DEFS = -DDEBUG @DEFS@ -DARPDIR=\"$(ARPDIR)\" -DPATH_SENDMAIL=\"$(SENDMAIL)\" # Standard CFLAGS CFLAGS = $(CCOPT) $(DEFS) $(INCLS) # Standard LIBS LIBS = @LIBS@ # Standard LIBS without libpcap.a SLIBS = @LBL_LIBS@ INSTALL = @INSTALL@ SENDMAIL = @V_SENDMAIL@ # Explicitly define compilation rule since SunOS 4's make doesn't like gcc. # Also, gcc does not remove the .o before forking 'as', which can be a # problem if you don't own the file but can write to the directory. .c.o: @rm -f $@ $(CC) $(CFLAGS) -c $(srcdir)/$*.c CSRC = db.c dns.c ec.c file.c intoa.c machdep.c util.c report.c setsignal.c WSRC = arpwatch.c SSRC = arpsnmp.c GENSRC = version.c SRC = $(WSRC) $(SSRC) $(CSRC) $(GENSRC) # We would like to say "OBJ = $(SRC:.c=.o)" but Ultrix's make cannot # hack the extra indirection OBJ = $(WSRC:.c=.o) $(SSRC:.c=.o) $(CSRC:.c=.o) $(GENSRC:.c=.o) @LIBOBJS@ WOBJ = $(WSRC:.c=.o) $(CSRC:.c=.o) $(GENSRC:.c=.o) @LIBOBJS@ SOBJ = $(SSRC:.c=.o) $(CSRC:.c=.o) $(GENSRC:.c=.o) @LIBOBJS@ HDR = arpwatch.h db.h dns.h ec.h file.h machdep.h report.h setsignal.h TAGHDR = \ /usr/include/net/if.h \ /usr/include/netinet/if_ether.h \ /usr/include/netinet/in.h \ /usr/include/sys/socket.h TAGFILES = $(SRC) $(HDR) $(TAGHDR) ALL = arpwatch arpsnmp CLEANFILES = $(ALL) $(OBJ) $(GENSRC) zap.o zap all: $(ALL) arpwatch: $(WOBJ) @V_PCAPDEP@ @rm -f $@ $(CC) $(CFLAGS) -o $@ $(WOBJ) $(LIBS) arpsnmp: $(SOBJ) @rm -f $@ $(CC) $(CFLAGS) -o $@ $(SOBJ) $(SLIBS) version.o: version.c version.c: $(srcdir)/VERSION @rm -f $@ sed -e 's/.*/char version[] = "&";/' $(srcdir)/VERSION > $@ zap: zap.o intoa.o $(CC) $(CFLAGS) -o $@ zap.o intoa.o -lutil install: force $(INSTALL) -m 555 -o bin -g bin arpwatch $(DESTDIR)$(BINDEST) $(INSTALL) -m 555 -o bin -g bin arpsnmp $(DESTDIR)$(BINDEST) install-man: force $(INSTALL) -m 444 -o bin -g bin $(srcdir)/arpwatch.8 \ $(DESTDIR)$(MANDEST)/man8 $(INSTALL) -m 444 -o bin -g bin $(srcdir)/arpsnmp.8 \ $(DESTDIR)$(MANDEST)/man8 lint: $(GENSRC) force lint -hbxn $(SRC) | \ grep -v 'struct/union .* never defined' | \ grep -v 'possible pointer alignment problem' clean: rm -f $(CLEANFILES) distclean: rm -f $(CLEANFILES) Makefile config.cache config.log config.status \ gnuc.h os-proto.h tags: $(TAGFILES) ctags -wtd $(TAGFILES) ethers.new: arp.dat ./arp2ethers > ethers.new tar: force @cwd=`pwd` ; name=$(PROG)-`cat VERSION` ; \ list="" ; tar="tar chf" ; temp="$$name.tar.gz" ; \ for i in `cat FILES` ; do list="$$list $$name/$$i" ; done; \ echo \ "rm -f $$name; ln -s . $$name" ; \ rm -f $$name; ln -s . $$name ; \ echo \ "$$tar - [lots of files] | gzip > $$temp" ; \ $$tar - $$list | gzip > $$temp ; \ echo \ "rm -f $$name" ; \ rm -f $$name force: /tmp depend: $(GENSRC) force ./mkdep -c $(CC) $(DEFS) $(INCLS) $(SRC) arpwatch-2.1a15/README0100444000177400000340000000354607415655543013612 0ustar leressunsrc@(#) $Id: README,v 1.24 2002/01/05 20:00:32 leres Exp $ (LBL) ARPWATCH 2.1 Lawrence Berkeley National Laboratory Network Research Group arpwatch@ee.lbl.gov ftp://ftp.ee.lbl.gov/arpwatch.tar.gz This directory contains source code for arpwatch and arpsnmp, tools that monitors ethernet or fddi activity and maintain a database of ethernet/ip address pairings. It also reports certain changes via email. Arpwatch uses libpcap, a system-independent interface for user-level packet capture. Before building arpwatch, you must first retrieve and build libpcap, also from LBL, in: ftp://ftp.ee.lbl.gov/libpcap.tar.gz Once libpcap is built (either install it or make sure arpwatch and libpcap share the same parent directory), you can build arpwatch using the procedure in the INSTALL file. Arpsnmp has the same database features of arpwatch but relies on an external agent to collect the arp data. This distribution contains a script, arpfetch, that uses snmpwalk from the CMU SNMP package. This package is available from: ftp://ftp.net.cmu.edu/pub/snmp-dist/cmu-snmp*.tar.gz It should be trivial to adapt the output of any snmp query program for use with arpsnmp. The ethernet vendor codes in ethercodes.dat is only current at the time the last arpwatch release was assembled. The data it contains come from the IEEE's website: http://standards.ieee.org/regauth/oui/oui.txt This is the IEEE's public Organizationally Unique Identifier (OUI) listing. If you run across an OUI that isn't in ethercodes.dat (or find any other deficiency) get a new copy from the IEEE website. Under FreeBSD you can do this using use fetch(1). Next convert the file to ethercodes.dat format using the massagevendor script. If you still have a problem with ethercodes.dat, contact the IEEE website (after all, they're the ones who assign OUIs...) Please send bugs and comments to arpwatch@ee.lbl.gov. arpwatch-2.1a15/VERSION0100444000177400000340000000000710462452050013747 0ustar leressunsrc2.1a15 arpwatch-2.1a15/aclocal.m40100444000177400000340000005217610412165774014566 0ustar leressunsrcdnl @(#) $Id: aclocal.m4,v 1.81 2006/03/27 23:55:40 leres Exp $ (LBL) dnl dnl Copyright (c) 1995, 1996, 1997, 1998, 1999, 2002, 2003, 2006 dnl The Regents of the University of California. All rights reserved. dnl dnl Redistribution and use in source and binary forms, with or without dnl modification, are permitted provided that: (1) source code distributions dnl retain the above copyright notice and this paragraph in its entirety, (2) dnl distributions including binary code include the above copyright notice and dnl this paragraph in its entirety in the documentation or other materials dnl provided with the distribution, and (3) all advertising materials mentioning dnl features or use of this software display the following acknowledgement: dnl ``This product includes software developed by the University of California, dnl Lawrence Berkeley Laboratory and its contributors.'' Neither the name of dnl the University nor the names of its contributors may be used to endorse dnl or promote products derived from this software without specific prior dnl written permission. dnl THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED dnl WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF dnl MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. dnl dnl LBL autoconf macros dnl dnl dnl Determine which compiler we're using (cc or gcc) dnl If using gcc, determine the version number dnl If using cc, require that it support ansi prototypes dnl If using gcc, use -O2 (otherwise use -O) dnl If using cc, explicitly specify /usr/local/include dnl dnl usage: dnl dnl AC_LBL_C_INIT(copt, incls) dnl dnl results: dnl dnl $1 (copt set) dnl $2 (incls set) dnl CC dnl LDFLAGS dnl LBL_CFLAGS dnl AC_DEFUN(AC_LBL_C_INIT, [AC_PREREQ(2.12) AC_BEFORE([$0], [AC_PROG_CC]) AC_BEFORE([$0], [AC_LBL_FIXINCLUDES]) AC_BEFORE([$0], [AC_LBL_DEVEL]) AC_ARG_WITH(gcc, [ --without-gcc don't use gcc]) $1="-O" $2="" if test "${srcdir}" != "." ; then $2="-I\$\(srcdir\)" fi if test "${CFLAGS+set}" = set; then LBL_CFLAGS="$CFLAGS" fi if test -z "$CC" ; then case "$target_os" in bsdi*) AC_CHECK_PROG(SHLICC2, shlicc2, yes, no) if test $SHLICC2 = yes ; then CC=shlicc2 export CC fi ;; esac fi if test -z "$CC" -a "$with_gcc" = no ; then CC=cc export CC fi AC_PROG_CC if test "$GCC" != yes ; then AC_MSG_CHECKING(that $CC handles ansi prototypes) AC_CACHE_VAL(ac_cv_lbl_cc_ansi_prototypes, AC_TRY_COMPILE( [#include ], [int frob(int, char *)], ac_cv_lbl_cc_ansi_prototypes=yes, ac_cv_lbl_cc_ansi_prototypes=no)) AC_MSG_RESULT($ac_cv_lbl_cc_ansi_prototypes) if test $ac_cv_lbl_cc_ansi_prototypes = no ; then case "$target_os" in hpux*) AC_MSG_CHECKING(for HP-UX ansi compiler ($CC -Aa -D_HPUX_SOURCE)) savedcflags="$CFLAGS" CFLAGS="-Aa -D_HPUX_SOURCE $CFLAGS" AC_CACHE_VAL(ac_cv_lbl_cc_hpux_cc_aa, AC_TRY_COMPILE( [#include ], [int frob(int, char *)], ac_cv_lbl_cc_hpux_cc_aa=yes, ac_cv_lbl_cc_hpux_cc_aa=no)) AC_MSG_RESULT($ac_cv_lbl_cc_hpux_cc_aa) if test $ac_cv_lbl_cc_hpux_cc_aa = no ; then AC_MSG_ERROR(see the INSTALL doc for more info) fi CFLAGS="$savedcflags" $1="-Aa $$1" AC_DEFINE(_HPUX_SOURCE,,[HP-UX ansi compiler]) ;; *) AC_MSG_ERROR(see the INSTALL doc for more info) ;; esac fi $2="$$2 -I/usr/local/include" LDFLAGS="$LDFLAGS -L/usr/local/lib" case "$target_os" in irix*) $1="$$1 -xansi -signed -g3" ;; osf*) $1="$$1 -std1 -g3" ;; ultrix*) AC_MSG_CHECKING(that Ultrix $CC hacks const in prototypes) AC_CACHE_VAL(ac_cv_lbl_cc_const_proto, AC_TRY_COMPILE( [#include ], [struct a { int b; }; void c(const struct a *)], ac_cv_lbl_cc_const_proto=yes, ac_cv_lbl_cc_const_proto=no)) AC_MSG_RESULT($ac_cv_lbl_cc_const_proto) if test $ac_cv_lbl_cc_const_proto = no ; then AC_DEFINE(const,,[ultrix can't hack const]) fi ;; esac fi ]) AC_LBL_ENABLE_CHECK(brov6 activemapping expire-dfa-states) dnl dnl This allows us to check for bogus configure enable/disable dnl command line options dnl dnl usage: dnl dnl AC_LBL_ENABLE_CHECK(opt ...) dnl AC_DEFUN(AC_LBL_ENABLE_CHECK, [set | sed -n -e 's/^enable_\([[^=]]*\)=[[^=]]*$/\1/p' | while read var; do ok=0 for o in $1; do if test "${o}" = "${var}" ; then ok=1 break fi done if test ${ok} -eq 0 ; then # It's hard to kill configure script from subshell! AC_MSG_ERROR(unknown enable option: ${var}) exit 1 fi done if test $? -ne 0 ; then exit 1 fi]) dnl dnl Use pfopen.c if available and pfopen() not in standard libraries dnl Require libpcap dnl Look for libpcap in .. dnl Use the installed libpcap if there is no local version dnl dnl usage: dnl dnl AC_LBL_LIBPCAP(pcapdep, incls) dnl dnl results: dnl dnl $1 (pcapdep set) dnl $2 (incls appended) dnl LIBS dnl LDFLAGS dnl LBL_LIBS dnl AC_DEFUN(AC_LBL_LIBPCAP, [AC_REQUIRE([AC_LBL_LIBRARY_NET]) dnl dnl save a copy before locating libpcap.a dnl LBL_LIBS="$LIBS" pfopen=/usr/examples/packetfilter/pfopen.c if test -f $pfopen ; then AC_CHECK_FUNCS(pfopen) if test $ac_cv_func_pfopen = "no" ; then AC_MSG_RESULT(Using $pfopen) LIBS="$LIBS $pfopen" fi fi AC_MSG_CHECKING(for local pcap library) libpcap=FAIL lastdir=FAIL places=`ls .. | sed -e 's,/$,,' -e 's,^,../,' | \ egrep '/libpcap-[[0-9]]*\.[[0-9]]*(\.[[0-9]]*)?([[ab]][[0-9]]*)?$'` for dir in $places ../libpcap libpcap ; do basedir=`echo $dir | sed -e 's/[[ab]][[0-9]]*$//'` if test $lastdir = $basedir ; then dnl skip alphas when an actual release is present continue; fi lastdir=$dir if test -r $dir/pcap.c ; then libpcap=$dir/libpcap.a d=$dir dnl continue and select the last one that exists fi done if test "x$libpcap" = xFAIL ; then AC_MSG_RESULT(not found) AC_CHECK_LIB(pcap, pcap_open_live, libpcap="-lpcap") unset ac_cv_lib_pcap_pcap_open_live if test "x$libpcap" = xFAIL ; then CFLAGS="$CFLAGS -I/usr/local/include" LIBS="$LIBS -L/usr/local/lib" AC_CHECK_LIB(pcap, pcap_open_live, libpcap="-lpcap") unset ac_cv_lib_pcap_pcap_open_live if test "x$libpcap" = xFAIL ; then AC_MSG_ERROR(see the INSTALL doc for more info) fi $2="$$2 -I/usr/local/include" fi LIBS="$LIBS -lpcap" else $1=$libpcap $2="-I$d $$2" AC_MSG_RESULT($libpcap) fi if test "x$libpcap" != "x-lpcap" ; then LIBS="$libpcap $LIBS" fi case "$target_os" in aix*) pseexe="/lib/pse.exp" AC_MSG_CHECKING(for $pseexe) if test -f $pseexe ; then AC_MSG_RESULT(yes) LIBS="$LIBS -I:$pseexe" fi ;; esac]) dnl dnl Define RETSIGTYPE and RETSIGVAL dnl dnl usage: dnl dnl AC_LBL_TYPE_SIGNAL dnl dnl results: dnl dnl RETSIGTYPE (defined) dnl RETSIGVAL (defined) dnl AC_DEFUN(AC_LBL_TYPE_SIGNAL, [AC_BEFORE([$0], [AC_LBL_LIBPCAP]) AC_TYPE_SIGNAL if test "$ac_cv_type_signal" = void ; then AC_DEFINE(RETSIGVAL,,[signal function return value]) else AC_DEFINE(RETSIGVAL,(0)) fi case "$target_os" in irix*) AC_DEFINE(_BSD_SIGNALS,,[irix's BSD style signals]) ;; *) dnl prefer sigset() to sigaction() AC_CHECK_FUNCS(sigset) if test $ac_cv_func_sigset = yes ; then AC_DEFINE(signal,sigset,[use sigset() instead of signal()]) else AC_CHECK_FUNCS(sigaction) fi ;; esac]) dnl dnl If using gcc, make sure we have ANSI ioctl definitions dnl dnl usage: dnl dnl AC_LBL_FIXINCLUDES dnl AC_DEFUN(AC_LBL_FIXINCLUDES, [if test "$GCC" = yes ; then AC_MSG_CHECKING(for ANSI ioctl definitions) AC_CACHE_VAL(ac_cv_lbl_gcc_fixincludes, AC_TRY_COMPILE( [/* * This generates a "duplicate case value" when fixincludes * has not be run. */ # include # include # include # ifdef HAVE_SYS_IOCCOM_H # include # endif], [switch (0) { case _IO('A', 1):; case _IO('B', 1):; }], ac_cv_lbl_gcc_fixincludes=yes, ac_cv_lbl_gcc_fixincludes=no)) AC_MSG_RESULT($ac_cv_lbl_gcc_fixincludes) if test $ac_cv_lbl_gcc_fixincludes = no ; then # Don't cache failure unset ac_cv_lbl_gcc_fixincludes AC_MSG_ERROR(see the INSTALL for more info) fi fi]) dnl dnl Check for flex, default to lex dnl Require flex 2.4 or higher dnl Check for bison, default to yacc dnl Default to lex/yacc if both flex and bison are not available dnl Define the yy prefix string if using flex and bison dnl dnl usage: dnl dnl AC_LBL_LEX_AND_YACC(lex, yacc, yyprefix) dnl dnl results: dnl dnl $1 (lex set) dnl $2 (yacc appended) dnl $3 (optional flex and bison -P prefix) dnl AC_DEFUN(AC_LBL_LEX_AND_YACC, [AC_ARG_WITH(flex, [ --without-flex don't use flex]) AC_ARG_WITH(bison, [ --without-bison don't use bison]) if test "$with_flex" = no ; then $1=lex else AC_CHECK_PROGS($1, flex, lex) fi if test "$$1" = flex ; then # The -V flag was added in 2.4 AC_MSG_CHECKING(for flex 2.4 or higher) AC_CACHE_VAL(ac_cv_lbl_flex_v24, if flex -V >/dev/null 2>&1; then ac_cv_lbl_flex_v24=yes else ac_cv_lbl_flex_v24=no fi) AC_MSG_RESULT($ac_cv_lbl_flex_v24) if test $ac_cv_lbl_flex_v24 = no ; then s="2.4 or higher required" AC_MSG_WARN(ignoring obsolete flex executable ($s)) $1=lex fi fi if test "$with_bison" = no ; then $2=yacc else AC_CHECK_PROGS($2, bison, yacc) fi if test "$$2" = bison ; then $2="$$2 -y" fi if test "$$1" != lex -a "$$2" = yacc -o "$$1" = lex -a "$$2" != yacc ; then AC_MSG_WARN(don't have both flex and bison; reverting to lex/yacc) $1=lex $2=yacc fi if test "$$1" = flex -a -n "$3" ; then $1="$$1 -P$3" $2="$$2 -p $3" fi]) dnl dnl Checks to see if union wait is used with WEXITSTATUS() dnl dnl usage: dnl dnl AC_LBL_UNION_WAIT dnl dnl results: dnl dnl DECLWAITSTATUS (defined) dnl AC_DEFUN(AC_LBL_UNION_WAIT, [AC_MSG_CHECKING(if union wait is used) AC_CACHE_VAL(ac_cv_lbl_union_wait, AC_TRY_COMPILE([ # include # include ], [int status; u_int i = WEXITSTATUS(status); u_int j = waitpid(0, &status, 0);], ac_cv_lbl_union_wait=no, ac_cv_lbl_union_wait=yes)) AC_MSG_RESULT($ac_cv_lbl_union_wait) if test $ac_cv_lbl_union_wait = yes ; then AC_DEFINE(DECLWAITSTATUS,union wait) else AC_DEFINE(DECLWAITSTATUS,int) fi]) dnl dnl Checks to see if the sockaddr struct has the 4.4 BSD sa_len member dnl dnl usage: dnl dnl AC_LBL_SOCKADDR_SA_LEN dnl dnl results: dnl dnl HAVE_SOCKADDR_SA_LEN (defined) dnl AC_DEFUN(AC_LBL_SOCKADDR_SA_LEN, [AC_CHECK_MEMBERS(struct sockaddr.sa_len,,,[ # include # include ])]) dnl dnl Makes sure socklen_t is defined dnl dnl usage: dnl dnl AC_LBL_SOCKLEN_T dnl dnl results: dnl dnl socklen_t (defined if missing) dnl AC_DEFUN(AC_LBL_SOCKLEN_T, [AC_MSG_CHECKING(for socklen_t in sys/socket.h using $CC) AC_CACHE_VAL(ac_cv_lbl_socklen_t, AC_TRY_COMPILE([ # include "confdefs.h" # include # include # if STDC_HEADERS # include # include # endif], [socklen_t i], ac_cv_lbl_socklen_t=yes, ac_cv_lbl_socklen_t=no)) AC_MSG_RESULT($ac_cv_lbl_socklen_t) if test $ac_cv_lbl_socklen_t = no ; then AC_DEFINE(socklen_t, int, [Define socklen_t if missing]) fi]) dnl dnl Checks to see if the IFF_LOOPBACK exists as a define or enum dnl dnl (stupidly some versions of linux use an enum...) dnl dnl usage: dnl dnl AC_LBL_IFF_LOOPBACK dnl dnl results: dnl dnl HAVE_IFF_LOOPBACK (defined) dnl AC_DEFUN(AC_LBL_IFF_LOOPBACK, [AC_MSG_CHECKING(for IFF_LOOPBACK define/enum) AC_CACHE_VAL(ac_cv_lbl_have_iff_loopback, AC_TRY_COMPILE([ # include # include # include # include # ifdef HAVE_SYS_SOCKIO_H # include # endif # include # include # include ], [int i = IFF_LOOPBACK], ac_cv_lbl_have_iff_loopback=yes, ac_cv_lbl_have_iff_loopback=no)) AC_MSG_RESULT($ac_cv_lbl_have_iff_loopback) if test $ac_cv_lbl_have_iff_loopback = yes ; then AC_DEFINE(HAVE_IFF_LOOPBACK,, [Have IFF_LOOPBACK define/enum]) fi]) dnl dnl Checks to see if -R is used dnl dnl usage: dnl dnl AC_LBL_HAVE_RUN_PATH dnl dnl results: dnl dnl ac_cv_lbl_have_run_path (yes or no) dnl AC_DEFUN(AC_LBL_HAVE_RUN_PATH, [AC_MSG_CHECKING(for ${CC-cc} -R) AC_CACHE_VAL(ac_cv_lbl_have_run_path, [echo 'main(){}' > conftest.c ${CC-cc} -o conftest conftest.c -R/a1/b2/c3 >conftest.out 2>&1 if test ! -s conftest.out ; then ac_cv_lbl_have_run_path=yes else ac_cv_lbl_have_run_path=no fi rm -f conftest*]) AC_MSG_RESULT($ac_cv_lbl_have_run_path) ]) dnl dnl Due to the stupid way it's implemented, AC_CHECK_TYPE is nearly useless. dnl dnl usage: dnl dnl AC_LBL_CHECK_TYPE dnl dnl results: dnl dnl int32_t (defined) dnl u_int32_t (defined) dnl AC_DEFUN(AC_LBL_CHECK_TYPE, [AC_MSG_CHECKING(for $1 using $CC) AC_CACHE_VAL(ac_cv_lbl_have_$1, AC_TRY_COMPILE([ # include "confdefs.h" # include # if STDC_HEADERS # include # include # endif], [$1 i], ac_cv_lbl_have_$1=yes, ac_cv_lbl_have_$1=no)) AC_MSG_RESULT($ac_cv_lbl_have_$1) if test $ac_cv_lbl_have_$1 = no ; then AC_DEFINE($1, $2, Define $1) fi]) dnl dnl Checks to see if unaligned memory accesses fail dnl dnl usage: dnl dnl AC_LBL_UNALIGNED_ACCESS dnl dnl results: dnl dnl LBL_ALIGN (DEFINED) dnl AC_DEFUN(AC_LBL_UNALIGNED_ACCESS, [AC_MSG_CHECKING(if unaligned accesses fail) AC_CACHE_VAL(ac_cv_lbl_unaligned_fail, [case "$target_cpu" in alpha|hp*|mips|sparc) ac_cv_lbl_unaligned_fail=yes ;; *) cat >conftest.c < # include # include unsigned char a[[5]] = { 1, 2, 3, 4, 5 }; main() { unsigned int i; pid_t pid; int status; /* avoid "core dumped" message */ pid = fork(); if (pid < 0) exit(2); if (pid > 0) { /* parent */ pid = waitpid(pid, &status, 0); if (pid < 0) exit(3); exit(!WIFEXITED(status)); } /* child */ i = *(unsigned int *)&a[[1]]; printf("%d\n", i); exit(0); } EOF ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS \ conftest.c $LIBS >/dev/null 2>&1 if test ! -x conftest ; then dnl failed to compile for some reason ac_cv_lbl_unaligned_fail=yes else ./conftest >conftest.out if test ! -s conftest.out ; then ac_cv_lbl_unaligned_fail=yes else ac_cv_lbl_unaligned_fail=no fi fi rm -f conftest* core core.conftest ;; esac]) AC_MSG_RESULT($ac_cv_lbl_unaligned_fail) if test $ac_cv_lbl_unaligned_fail = yes ; then AC_DEFINE(LBL_ALIGN) fi]) dnl dnl add all warning option to CFLAGS dnl dnl usage: dnl dnl AC_LBL_CHECK_WALL(copt) dnl dnl results: dnl dnl $1 (copt appended) dnl ac_cv_lbl_gcc_vers dnl AC_DEFUN(AC_LBL_CHECK_WALL, [ if test "$GCC" = yes ; then if test "$SHLICC2" = yes ; then ac_cv_lbl_gcc_vers=2 $1="`echo $$1 | sed -e 's/-O/-O2/'`" else AC_MSG_CHECKING(gcc version) AC_CACHE_VAL(ac_cv_lbl_gcc_vers, # Gag, the gcc folks keep changing the output... # try to grab N.N.N ac_cv_lbl_gcc_vers=`$CC --version 2>&1 | sed -e '1!d' -e 's/[[[^0-9]]]*\([[[0-9]]][[[0-9]]]*\)\.[[[0-9\]]][[[0-9]]]*\.[[[0-9]]][[[0-9]]]*.*/\1/'`) AC_MSG_RESULT($ac_cv_lbl_gcc_vers) if test "$ac_cv_lbl_gcc_vers" -gt 1 ; then $1="`echo $$1 | sed -e 's/-O/-O2/'`" fi fi if test "${LBL_CFLAGS+set}" != set; then if test "$ac_cv_prog_cc_g" = yes ; then $1="-g $$1" fi $1="$$1 -Wall" if test "$ac_cv_lbl_gcc_vers" -gt 1 ; then $1="$$1 -Wmissing-prototypes -Wstrict-prototypes" fi fi else case "$target_os" in irix6*) $1="$$1 -fullwarn -n32" ;; *) ;; esac fi]) dnl dnl If using gcc and the file .devel exists: dnl Compile with -g (if supported) and -Wall dnl If using gcc 2, do extra prototype checking dnl If an os prototype include exists, symlink os-proto.h to it dnl dnl usage: dnl dnl AC_LBL_DEVEL(copt) dnl dnl results: dnl dnl $1 (copt appended) dnl HAVE_OS_PROTO_H (defined) dnl os-proto.h (symlinked) dnl AC_DEFUN(AC_LBL_DEVEL, [rm -f os-proto.h if test "${LBL_CFLAGS+set}" = set; then $1="$$1 ${LBL_CFLAGS}" fi if test -f .devel ; then AC_LBL_CHECK_WALL($1) os=`echo $target_os | sed -e 's/\([[0-9]][[0-9]]*\)[[^0-9]].*$/\1/'` name="lbl/os-$os.h" if test -f $name ; then ln -s $name os-proto.h AC_DEFINE(HAVE_OS_PROTO_H,,[have os-proto.h]) else AC_MSG_WARN(can't find $name) fi fi]) dnl dnl Improved version of AC_CHECK_LIB dnl dnl Thanks to John Hawkinson (jhawk@mit.edu) dnl dnl usage: dnl dnl AC_LBL_CHECK_LIB(LIBRARY, FUNCTION [, ACTION-IF-FOUND [, dnl ACTION-IF-NOT-FOUND [, OTHER-LIBRARIES]]]) dnl dnl results: dnl dnl LIBS dnl define(AC_LBL_CHECK_LIB, [AC_MSG_CHECKING([for $2 in -l$1]) dnl Use a cache variable name containing both the library and function name, dnl because the test really is for library $1 defining function $2, not dnl just for library $1. Separate tests with the same $1 and different $2's dnl may have different results. ac_lib_var=`echo $1['_']$2['_']$5 | sed 'y%./+- %__p__%'` AC_CACHE_VAL(ac_cv_lbl_lib_$ac_lib_var, [ac_save_LIBS="$LIBS" LIBS="-l$1 $5 $LIBS" AC_TRY_LINK(dnl ifelse([$2], [main], , dnl Avoid conflicting decl of main. [/* Override any gcc2 internal prototype to avoid an error. */ ]ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus extern "C" #endif ])dnl [/* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $2(); ]), [$2()], eval "ac_cv_lbl_lib_$ac_lib_var=yes", eval "ac_cv_lbl_lib_$ac_lib_var=no") LIBS="$ac_save_LIBS" ])dnl if eval "test \"`echo '$ac_cv_lbl_lib_'$ac_lib_var`\" = yes"; then AC_MSG_RESULT(yes) ifelse([$3], , [changequote(, )dnl ac_tr_lib=HAVE_LIB`echo $1 | sed -e 's/[^a-zA-Z0-9_]/_/g' \ -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'` changequote([, ])dnl AC_DEFINE_UNQUOTED($ac_tr_lib) LIBS="-l$1 $LIBS" ], [$3]) else AC_MSG_RESULT(no) ifelse([$4], , , [$4 ])dnl fi ]) dnl dnl AC_LBL_LIBRARY_NET dnl dnl This test is for network applications that need socket() and dnl gethostbyname() -ish functions. Under Solaris, those applications dnl need to link with "-lsocket -lnsl". Under IRIX, they need to link dnl with "-lnsl" but should *not* link with "-lsocket" because dnl libsocket.a breaks a number of things (for instance: dnl gethostbyname() under IRIX 5.2, and snoop sockets under most dnl versions of IRIX). dnl dnl Unfortunately, many application developers are not aware of this, dnl and mistakenly write tests that cause -lsocket to be used under dnl IRIX. It is also easy to write tests that cause -lnsl to be used dnl under operating systems where neither are necessary (or useful), dnl such as SunOS 4.1.4, which uses -lnsl for TLI. dnl dnl This test exists so that every application developer does not test dnl this in a different, and subtly broken fashion. dnl It has been argued that this test should be broken up into two dnl seperate tests, one for the resolver libraries, and one for the dnl libraries necessary for using Sockets API. Unfortunately, the two dnl are carefully intertwined and allowing the autoconf user to use dnl them independantly potentially results in unfortunate ordering dnl dependancies -- as such, such component macros would have to dnl carefully use indirection and be aware if the other components were dnl executed. Since other autoconf macros do not go to this trouble, dnl and almost no applications use sockets without the resolver, this dnl complexity has not been implemented. dnl dnl The check for libresolv is in case you are attempting to link dnl statically and happen to have a libresolv.a lying around (and no dnl libnsl.a). dnl AC_DEFUN(AC_LBL_LIBRARY_NET, [ # Most operating systems have gethostbyname() in the default searched # libraries (i.e. libc): AC_CHECK_FUNC(gethostbyname, , # Some OSes (eg. Solaris) place it in libnsl: AC_CHECK_LIB(nsl, gethostbyname, , # Some strange OSes (SINIX) have it in libsocket: AC_CHECK_LIB(socket, gethostbyname, , # Unfortunately libsocket sometimes depends on libnsl. # AC_CHECK_LIB's API is essentially broken so the # following ugliness is necessary: AC_CHECK_LIB(socket, gethostbyname, LIBS="-lsocket -lnsl $LIBS", AC_CHECK_LIB(resolv, gethostbyname), -lnsl)))) AC_CHECK_FUNC(socket, , AC_CHECK_LIB(socket, socket, , AC_CHECK_LIB(socket, socket, LIBS="-lsocket -lnsl $LIBS", , -lnsl))) # DLPI needs putmsg under HPUX so test for -lstr while we're at it AC_CHECK_LIB(str, putmsg) ]) arpwatch-2.1a15/addresses.h.in0100444000177400000340000000007506155216715015451 0ustar leressunsrc#define WATCHER "root" #define WATCHEE "arpwatch (Arpwatch)" arpwatch-2.1a15/arp2ethers0100555000177400000340000000121707415653300014715 0ustar leressunsrc#!/bin/sh # @(#) $Id: arp2ethers,v 1.4 2002/01/05 19:40:47 leres Exp $ (LBL) # # Convert arp.dat to ethers format # # - sort on timestamp, newest first # - discard entries without simple hostnames # - discard all but first occurance of each ethernet address # - discard entires with raw ip addresses for simple names # - remove ip address and timestamp fields # - append "-ip" to hosts with decnet address too # - append "-old", "-old1", etc. as necessary # - sort # sort +2rn arp.dat | \ awk 'NF == 4 { print }' | \ awk -f p.awk | \ egrep -v '\.[0-9][0-9]*$' | \ sed -e 's/ .* / /' | \ awk -f d.awk | \ awk -f e.awk | \ sort arpwatch-2.1a15/arpfetch0100555000177400000340000000120310462451426014426 0ustar leressunsrc#!/bin/sh # @(#) $Id: arpfetch,v 1.6 2006/07/28 18:10:29 leres Exp $ (LBL) # # arpfetch - collect arp data from a cisco using net-snmp # export PATH="/usr/local/bin:${PATH}" prog=`basename $0` if [ $# -ne 2 ]; then echo "usage: ${prog} host cname" 2>&1 exit 1 fi host="$1" cname="$2" what="ip.ipNetToMediaTable.ipNetToMediaEntry.ipNetToMediaPhysAddress" # # Get the data and convert it # snmpwalk -Oq -Os -v 1 -c ${cname} ${host} ${what} | 2>&1 tr A-Z a-z | awk '{ ip = $1 n = split(ip, a, ".") if (n > 4) ip = a[n - 3] "." a[n - 2] "." a[n - 1] "." a[n] ea = $2 print ea "\t" ip }' rm -f ${t1} arpwatch-2.1a15/arpsnmp.80100444000177400000340000000526107161225350014462 0ustar leressunsrc.\" @(#) $Id: arpsnmp.8,v 1.5 2000/09/17 20:34:41 leres Exp $ (LBL) .\" .\" Copyright (c) 1996, 1997, 1999, 2000 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that: (1) source code distributions .\" retain the above copyright notice and this paragraph in its entirety, (2) .\" distributions including binary code include the above copyright notice and .\" this paragraph in its entirety in the documentation or other materials .\" provided with the distribution, and (3) all advertising materials mentioning .\" features or use of this software display the following acknowledgement: .\" ``This product includes software developed by the University of California, .\" Lawrence Berkeley Laboratory and its contributors.'' Neither the name of .\" the University nor the names of its contributors may be used to endorse .\" or promote products derived from this software without specific prior .\" written permission. .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. .\" .TH ARPSNMP 8 "17 September 2000" .UC 4 .SH NAME arpsnmp - keep track of ethernet/ip address pairings .SH SYNOPSIS .B arpsnmp [ .B -d ] [ .B -f .I datafile ] .I file [ .I ... ] .SH DESCRIPTION .B Arpsnmp keeps track for ethernet/ip address pairings. It syslogs activity and reports certain changes via email. .B Arpsnmp reads information from a file (usually generated by .BR snmpwalk (8)). .LP The .B -d flag is used enable debugging. This also inhibits mailing the reports. Instead, they are sent to .IR stderr . .LP The .B -f flag is used to set the ethernet/ip address database filename. The default is .IR arp.dat . .LP Note that an empty .I arp.dat file must be created before the first time you run .BR arpsnmp . .LP .SH "REPORT MESSAGES" (See the .BR arpwatch (1) man page for details on the report messages generated by .BR arpsnmp (1).) .SH FILES .na .nh .nf /usr/operator/arpwatch - default directory arp.dat - ethernet/ip address database ethercodes.dat - vendor ethernet block list .ad .hy .fi .SH "SEE ALSO" .na .nh .BR arpwatch (8), .BR snmpwalk (8), .BR arp (8) .ad .hy .SH AUTHORS Craig Leres of the Lawrence Berkeley National Laboratory Network Research Group, University of California, Berkeley, CA. .LP The current version is available via anonymous ftp: .LP .RS .I ftp://ftp.ee.lbl.gov/arpwatch.tar.gz .RE .SH BUGS Please send bug reports to arpwatch@ee.lbl.gov. .LP Attempts are made to suppress DECnet flip flops but they aren't always successful. arpwatch-2.1a15/arpsnmp.c0100444000177400000340000001043610004046715014531 0ustar leressunsrc/* * Copyright (c) 1996, 1997, 1999, 2004 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ #ifndef lint static const char copyright[] = "Copyright (c) 1996, 1997, 1999, 2004\n\ The Regents of the University of California. All rights reserved.\n"; static const char rcsid[] = "@(#) $Header: /usr/src/local/sbin/arpwatch/RCS/arpsnmp.c,v 1.9 2004/01/22 22:25:11 leres Exp $ (LBL)"; #endif /* * arpsnmp - keep track of ethernet/ip address pairings, report changes */ #include #include /* concession to AIX */ #include #include #ifdef HAVE_MEMORY_H #include #endif #ifdef HAVE_FCNTL_H #include #endif #include #include #include #include #include #include #include "gnuc.h" #ifdef HAVE_OS_PROTO_H #include "os-proto.h" #endif #include "arpwatch.h" #include "db.h" #include "ec.h" #include "file.h" #include "machdep.h" #include "util.h" /* Forwards */ int main(int, char **); int readsnmp(char *); int snmp_add(u_int32_t, u_char *, time_t, char *); __dead void usage(void) __attribute__((volatile)); char *prog; extern int optind; extern int opterr; extern char *optarg; int main(int argc, char **argv) { register char *cp; register int op, i; char errbuf[256]; if ((cp = strrchr(argv[0], '/')) != NULL) prog = cp + 1; else prog = argv[0]; if (abort_on_misalignment(errbuf) < 0) { (void)fprintf(stderr, "%s: %s\n", prog, errbuf); exit(1); } opterr = 0; while ((op = getopt(argc, argv, "df:")) != EOF) switch (op) { case 'd': ++debug; #ifndef DEBUG (void)fprintf(stderr, "%s: Warning: Not compiled with -DDEBUG\n", prog); #endif break; case 'f': arpfile = optarg; break; default: usage(); } if (optind == argc) usage(); openlog(prog, 0, LOG_DAEMON); /* Read in database */ initializing = 1; /* XXX todo: file locking */ if (!readdata()) exit(1); sorteinfo(); #ifdef DEBUG if (debug > 2) { debugdump(); exit(0); } #endif initializing = 0; /* Suck files in then exit */ for (i = optind; i < argc; ++i) (void)readsnmp(argv[i]); if (!dump()) exit(1); exit(0); } static time_t now; int snmp_add(register u_int32_t a, register u_char *e, time_t t, register char *h) { /* Watch for ethernet broadcast */ if (MEMCMP(e, zero, 6) == 0 || MEMCMP(e, allones, 6) == 0) { dosyslog(LOG_INFO, "ethernet broadcast", a, e, NULL); return (1); } /* Watch for some ip broadcast addresses */ if (a == 0 || a == 1) { dosyslog(LOG_INFO, "ip broadcast", a, e, NULL); return (1); } /* Use current time (although it would be nice to subtract idle time) */ return (ent_add(a, e, now, h)); } /* Process an snmp file */ int readsnmp(register char *file) { register FILE *f; if (debug > 2) (void)fprintf(stderr, "%s: reading %s\n", prog, file); if ((f = fopen(file, "r")) == NULL) { syslog(LOG_ERR, "fopen(%s): %m", file); return(0); } now = time(NULL); if (!file_loop(f, snmp_add, file)) { (void)fclose(f); return(0); } (void)fclose(f); return(1); } __dead void usage(void) { extern char version[]; (void)fprintf(stderr, "Version %s\n", version); (void)fprintf(stderr, "usage: %s [-d] [-f datafile] file [...]\n", prog); exit(1); } arpwatch-2.1a15/arpwatch.80100444000177400000340000001145207170154640014615 0ustar leressunsrc.\" @(#) $Id: arpwatch.8,v 1.13 2000/10/08 20:31:25 leres Exp $ (LBL) .\" .\" Copyright (c) 1992, 1994, 1996, 1997, 2000 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that: (1) source code distributions .\" retain the above copyright notice and this paragraph in its entirety, (2) .\" distributions including binary code include the above copyright notice and .\" this paragraph in its entirety in the documentation or other materials .\" provided with the distribution, and (3) all advertising materials mentioning .\" features or use of this software display the following acknowledgement: .\" ``This product includes software developed by the University of California, .\" Lawrence Berkeley Laboratory and its contributors.'' Neither the name of .\" the University nor the names of its contributors may be used to endorse .\" or promote products derived from this software without specific prior .\" written permission. .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. .\" .TH ARPWATCH 8 "8 October 2000" .UC 4 .SH NAME arpwatch - keep track of ethernet/ip address pairings .SH SYNOPSIS .na .B arpwatch [ .B -dN ] [ .B -f .I datafile ] [ .B -i .I interface ] .br .ti +8 [ .B -n .IR net [/ width ]] [ .B -r .I file ] .ad .SH DESCRIPTION .B Arpwatch keeps track for ethernet/ip address pairings. It syslogs activity and reports certain changes via email. .B Arpwatch uses .BR pcap (3) to listen for arp packets on a local ethernet interface. .LP The .B -d flag is used enable debugging. This also inhibits forking into the background and emailing the reports. Instead, they are sent to .IR stderr . .LP The .B -f flag is used to set the ethernet/ip address database filename. The default is .IR arp.dat . .LP The .B -i flag is used to override the default interface. .LP The .B -n flag specifies additional local networks. This can be useful to avoid "bogon" warnings when there is more than one network running on the same wire. If the optional .I width is not specified, the default netmask for the network's class is used. .LP The .B -N flag disables reporting any bogons. .LP The .B -r flag is used to specify a savefile (perhaps created by .BR tcpdump (1) or .BR pcapture (1)) to read from instead of reading from the network. In this case, .B arpwatch does not fork. .LP Note that an empty .I arp.dat file must be created before the first time you run .BR arpwatch . .LP .SH "REPORT MESSAGES" Here's a quick list of the report messages generated by .BR arpwatch (1) (and .BR arpsnmp (1)): .TP .B "new activity" This ethernet/ip address pair has been used for the first time six months or more. .TP .B "new station" The ethernet address has not been seen before. .TP .B "flip flop" The ethernet address has changed from the most recently seen address to the second most recently seen address. (If either the old or new ethernet address is a DECnet address and it is less than 24 hours, the email version of the report is suppressed.) .TP .B "changed ethernet address" The host switched to a new ethernet address. .SH "SYSLOG MESSAGES" Here are some of the syslog messages; note that messages that are reported are also sysloged. .TP .B "ethernet broadcast" The mac ethernet address of the host is a broadcast address. .TP .B "ip broadcast" The ip address of the host is a broadcast address. .TP .B "bogon" The source ip address is not local to the local subnet. .TP .B "ethernet broadcast" The source mac or arp ethernet address was all ones or all zeros. .TP .B "ethernet mismatch" The source mac ethernet address didn't match the address inside the arp packet. .TP .B "reused old ethernet address" The ethernet address has changed from the most recently seen address to the third (or greater) least recently seen address. (This is similar to a flip flop.) .TP .B "suppressed DECnet flip flop" A "flip flop" report was suppressed because one of the two addresses was a DECnet address. .SH FILES .na .nh .nf /usr/operator/arpwatch - default directory arp.dat - ethernet/ip address database ethercodes.dat - vendor ethernet block list .ad .hy .fi .SH "SEE ALSO" .na .nh .BR arpsnmp (8), .BR arp (8), .BR bpf (4), .BR tcpdump (1), .BR pcapture (1), .BR pcap (3) .ad .hy .SH AUTHORS Craig Leres of the Lawrence Berkeley National Laboratory Network Research Group, University of California, Berkeley, CA. .LP The current version is available via anonymous ftp: .LP .RS .I ftp://ftp.ee.lbl.gov/arpwatch.tar.gz .RE .SH BUGS Please send bug reports to arpwatch@ee.lbl.gov. .LP Attempts are made to suppress DECnet flip flops but they aren't always successful. .LP Most error messages are posted using syslog. arpwatch-2.1a15/arpwatch.c0100444000177400000340000004116510004046054014661 0ustar leressunsrc/* * Copyright (c) 1990, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ #ifndef lint static const char copyright[] = "Copyright (c) 1990, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000\n\ The Regents of the University of California. All rights reserved.\n"; static const char rcsid[] = "@(#) $Id: arpwatch.c,v 1.63 2000/10/14 02:07:28 leres Exp $ (LBL)"; #endif /* * arpwatch - keep track of ethernet/ip address pairings, report changes */ #include #include /* concession to AIX */ #include #include #include #include #if __STDC__ struct mbuf; struct rtentry; #endif #include #include #include #include #include #include #ifdef HAVE_MEMORY_H #include #endif #ifdef HAVE_FCNTL_H #include #endif #include #include #include #include #include #include #include #include "gnuc.h" #ifdef HAVE_OS_PROTO_H #include "os-proto.h" #endif #include "arpwatch.h" #include "db.h" #include "ec.h" #include "fddi.h" #include "file.h" #include "machdep.h" #include "setsignal.h" #include "util.h" /* Some systems don't define these */ #ifndef ETHERTYPE_REVARP #define ETHERTYPE_REVARP 0x8035 #endif #ifndef REVARP_REQUEST #define REVARP_REQUEST 3 #define REVARP_REPLY 4 #endif #ifndef ETHERTYPE_TRAIL #define ETHERTYPE_TRAIL 0x1000 #endif #ifndef ETHERTYPE_APOLLO #define ETHERTYPE_APOLLO 0x8019 #endif #ifndef IN_CLASSD_NET #define IN_CLASSD_NET 0xf0000000 #endif #ifndef max #define max(a,b) ((b)>(a)?(b):(a)) #endif char *prog; int can_checkpoint; int swapped; int nobogons; static u_int32_t net; static u_int32_t netmask; struct nets { u_int32_t net; u_int32_t netmask; }; static struct nets *nets; static int nets_ind; static int nets_size; extern int optind; extern int opterr; extern char *optarg; /* Forwards */ int addnet(const char *); RETSIGTYPE checkpoint(int); RETSIGTYPE die(int); int isbogon(u_int32_t); int main(int, char **); void process_ether(u_char *, const struct pcap_pkthdr *, const u_char *); void process_fddi(u_char *, const struct pcap_pkthdr *, const u_char *); int readsnmp(char *); int snmp_add(u_int32_t, u_char *, time_t, char *); int sanity_ether(struct ether_header *, struct ether_arp *, int); int sanity_fddi(struct fddi_header *, struct ether_arp *, int); __dead void usage(void) __attribute__((volatile)); int main(int argc, char **argv) { register char *cp; register int op, pid, snaplen, timeout, linktype, status; #ifdef TIOCNOTTY register int fd; #endif register pcap_t *pd; register char *interface, *rfilename; struct bpf_program code; char errbuf[PCAP_ERRBUF_SIZE]; if (argv[0] == NULL) prog = "arpwatch"; else if ((cp = strrchr(argv[0], '/')) != NULL) prog = cp + 1; else prog = argv[0]; if (abort_on_misalignment(errbuf) < 0) { (void)fprintf(stderr, "%s: %s\n", prog, errbuf); exit(1); } opterr = 0; interface = NULL; rfilename = NULL; pd = NULL; while ((op = getopt(argc, argv, "df:i:n:Nr:")) != EOF) switch (op) { case 'd': ++debug; #ifndef DEBUG (void)fprintf(stderr, "%s: Warning: Not compiled with -DDEBUG\n", prog); #endif break; case 'f': arpfile = optarg; break; case 'i': interface = optarg; break; case 'n': if (!addnet(optarg)) usage(); break; case 'N': ++nobogons; break; case 'r': rfilename = optarg; break; default: usage(); } if (optind != argc) usage(); if (rfilename != NULL) { net = 0; netmask = 0; } else { /* Determine interface if not specified */ if (interface == NULL && (interface = pcap_lookupdev(errbuf)) == NULL) { (void)fprintf(stderr, "%s: lookup_device: %s\n", prog, errbuf); exit(1); } /* Determine network and netmask */ if (pcap_lookupnet(interface, &net, &netmask, errbuf) < 0) { (void)fprintf(stderr, "%s: bad interface %s: %s\n", prog, interface, errbuf); exit(1); } /* Drop into the background if not debugging */ if (!debug) { pid = fork(); if (pid < 0) { syslog(LOG_ERR, "main fork(): %m"); exit(1); } else if (pid != 0) exit(0); (void)close(fileno(stdin)); (void)close(fileno(stdout)); (void)close(fileno(stderr)); #ifdef TIOCNOTTY fd = open("/dev/tty", O_RDWR); if (fd >= 0) { (void)ioctl(fd, TIOCNOTTY, 0); (void)close(fd); } #else (void) setsid(); #endif } } openlog(prog, 0, LOG_DAEMON); if (chdir(arpdir) < 0) { syslog(LOG_ERR, "chdir(%s): %m", arpdir); syslog(LOG_ERR, "(using current working directory)"); } if (rfilename != NULL) { pd = pcap_open_offline(rfilename, errbuf); if (pd == NULL) { syslog(LOG_ERR, "pcap open %s: %s", rfilename, errbuf); exit(1); } swapped = pcap_is_swapped(pd); } else { snaplen = max(sizeof(struct ether_header), sizeof(struct fddi_header)) + sizeof(struct ether_arp); timeout = 1000; pd = pcap_open_live(interface, snaplen, 1, timeout, errbuf); if (pd == NULL) { syslog(LOG_ERR, "pcap open %s: %s", interface, errbuf); exit(1); } #ifdef WORDS_BIGENDIAN swapped = 1; #endif } /* * Revert to non-privileged user after opening sockets * (not needed on most systems). */ setgid(getgid()); setuid(getuid()); /* Must be ethernet or fddi */ linktype = pcap_datalink(pd); if (linktype != DLT_EN10MB && linktype != DLT_FDDI) { syslog(LOG_ERR, "Link layer type %d not ethernet or fddi", linktype); exit(1); } /* Compile and install filter */ if (pcap_compile(pd, &code, "arp or rarp", 1, netmask) < 0) { syslog(LOG_ERR, "pcap_compile: %s", pcap_geterr(pd)); exit(1); } if (pcap_setfilter(pd, &code) < 0) { syslog(LOG_ERR, "pcap_setfilter: %s", pcap_geterr(pd)); exit(1); } if (rfilename == NULL) syslog(LOG_INFO, "listening on %s", interface); /* Read in database */ initializing = 1; if (!readdata()) exit(1); sorteinfo(); #ifdef DEBUG if (debug > 2) { debugdump(); exit(0); } #endif initializing = 0; (void)setsignal(SIGINT, die); (void)setsignal(SIGTERM, die); (void)setsignal(SIGHUP, die); if (rfilename == NULL) { (void)setsignal(SIGQUIT, checkpoint); (void)setsignal(SIGALRM, checkpoint); (void)alarm(CHECKPOINT); } switch (linktype) { case DLT_EN10MB: status = pcap_loop(pd, 0, process_ether, NULL); break; case DLT_FDDI: status = pcap_loop(pd, 0, process_fddi, NULL); break; default: syslog(LOG_ERR, "bad linktype %d (can't happen)", linktype); exit(1); } if (status < 0) { syslog(LOG_ERR, "pcap_loop: %s", pcap_geterr(pd)); exit(1); } pcap_close(pd); if (!dump()) exit(1); exit(0); } /* Process an ethernet arp/rarp packet */ void process_ether(register u_char *u, register const struct pcap_pkthdr *h, register const u_char *p) { register struct ether_header *eh; register struct ether_arp *ea; register u_char *sea, *sha; register time_t t; u_int32_t sia; eh = (struct ether_header *)p; ea = (struct ether_arp *)(eh + 1); if (!sanity_ether(eh, ea, h->caplen)) return; /* Source hardware ethernet address */ sea = (u_char *)ESRC(eh); /* Source ethernet address */ sha = (u_char *)SHA(ea); /* Source ip address */ BCOPY(SPA(ea), &sia, 4); /* Watch for bogons */ if (isbogon(sia)) { dosyslog(LOG_INFO, "bogon", sia, sea, sha); return; } /* Watch for ethernet broadcast */ if (MEMCMP(sea, zero, 6) == 0 || MEMCMP(sea, allones, 6) == 0 || MEMCMP(sha, zero, 6) == 0 || MEMCMP(sha, allones, 6) == 0) { dosyslog(LOG_INFO, "ethernet broadcast", sia, sea, sha); return; } /* Double check ethernet addresses */ if (MEMCMP(sea, sha, 6) != 0) { dosyslog(LOG_INFO, "ethernet mismatch", sia, sea, sha); return; } /* Got a live one */ t = h->ts.tv_sec; can_checkpoint = 0; if (!ent_add(sia, sea, t, NULL)) syslog(LOG_ERR, "ent_add(%s, %s, %ld) failed", intoa(sia), e2str(sea), t); can_checkpoint = 1; } /* Perform sanity checks on an ethernet arp/rarp packet, return true if ok */ int sanity_ether(register struct ether_header *eh, register struct ether_arp *ea, register int len) { /* XXX use bsd style ether_header to avoid messy ifdef's */ struct bsd_ether_header { u_char ether_dhost[6]; u_char ether_shost[6]; u_short ether_type; }; register u_char *shost = ((struct bsd_ether_header *)eh)->ether_shost; eh->ether_type = ntohs(eh->ether_type); ea->arp_hrd = ntohs(ea->arp_hrd); ea->arp_pro = ntohs(ea->arp_pro); ea->arp_op = ntohs(ea->arp_op); if (len < sizeof(*eh) + sizeof(*ea)) { syslog(LOG_ERR, "short (want %d)\n", sizeof(*eh) + sizeof(*ea)); return(0); } /* XXX sysv r4 seems to use hardware format 6 */ if (ea->arp_hrd != ARPHRD_ETHER && ea->arp_hrd != 6) { syslog(LOG_ERR, "%s sent bad hardware format 0x%x\n", e2str(shost), ea->arp_hrd); return(0); } /* XXX hds X terminals sometimes send trailer arp replies */ if (ea->arp_pro != ETHERTYPE_IP && ea->arp_pro != ETHERTYPE_TRAIL) { syslog(LOG_ERR, "%s sent packet not ETHERTYPE_IP (0x%x)\n", e2str(shost), ea->arp_pro); return(0); } if (ea->arp_hln != 6 || ea->arp_pln != 4) { syslog(LOG_ERR, "%s sent bad addr len (hard %d, prot %d)\n", e2str(shost), ea->arp_hln, ea->arp_pln); return(0); } /* * We're only interested in arp requests, arp replies * and reverse arp replies */ if (eh->ether_type == ETHERTYPE_ARP) { if (ea->arp_op != ARPOP_REQUEST && ea->arp_op != ARPOP_REPLY) { syslog(LOG_ERR, "%s sent wrong arp op %d\n", e2str(shost), ea->arp_op); return(0); } } else if (eh->ether_type == ETHERTYPE_REVARP) { if (ea->arp_op == REVARP_REQUEST) { /* no useful information here */ return(0); } else if (ea->arp_op != REVARP_REPLY) { if (debug) syslog(LOG_ERR, "%s sent wrong revarp op %d\n", e2str(shost), ea->arp_op); return(0); } } else { syslog(LOG_ERR, "%s sent bad type 0x%x\n", e2str(shost), eh->ether_type); return(0); } return(1); } static void bit_reverse(u_char *p, unsigned len) { unsigned i; u_char b; for (i = len; i; i--, p++) { b = (*p & 0x01 ? 0x80 : 0) | (*p & 0x02 ? 0x40 : 0) | (*p & 0x04 ? 0x20 : 0) | (*p & 0x08 ? 0x10 : 0) | (*p & 0x10 ? 0x08 : 0) | (*p & 0x20 ? 0x04 : 0) | (*p & 0x40 ? 0x02 : 0) | (*p & 0x80 ? 0x01 : 0); *p = b; } } void process_fddi(register u_char *u, register const struct pcap_pkthdr *h, register const u_char *p) { register struct fddi_header *fh; register struct ether_arp *ea; register u_char *sea, *sha; register time_t t; u_int32_t sia; fh = (struct fddi_header *)p; ea = (struct ether_arp *)(fh + 1); if (!swapped) { bit_reverse(fh->src, 6); bit_reverse(fh->dst, 6); } if (!sanity_fddi(fh, ea, h->caplen)) return; /* Source MAC hardware ethernet address */ sea = (u_char *)fh->src; /* Source ARP ethernet address */ sha = (u_char *)SHA(ea); /* Source ARP ip address */ BCOPY(SPA(ea), &sia, 4); /* Watch for bogons */ if (isbogon(sia)) { dosyslog(LOG_INFO, "bogon", sia, sea, sha); return; } /* Watch for ethernet broadcast */ if (MEMCMP(sea, zero, 6) == 0 || MEMCMP(sea, allones, 6) == 0 || MEMCMP(sha, zero, 6) == 0 || MEMCMP(sha, allones, 6) == 0) { dosyslog(LOG_INFO, "ethernet broadcast", sia, sea, sha); return; } /* Double check ethernet addresses */ if (MEMCMP(sea, sha, 6) != 0) { dosyslog(LOG_INFO, "ethernet mismatch", sia, sea, sha); return; } /* Got a live one */ t = h->ts.tv_sec; can_checkpoint = 0; if (!ent_add(sia, sea, t, NULL)) syslog(LOG_ERR, "ent_add(%s, %s, %ld) failed", intoa(sia), e2str(sea), t); can_checkpoint = 1; } /* Perform sanity checks on arp/rarp packet, return true if ok */ int sanity_fddi(register struct fddi_header *fh, register struct ether_arp *ea, register int len) { u_char *shost = fh->src; u_short type, hrd, pro, op; /* This rather clunky copy stuff is needed because the fddi header * has an odd (i.e. not even) length, causing memory alignment * errors when attempts are made to access the arp header fields * as shorts */ BCOPY(fh->snap.snap_type, &type, sizeof(u_short)); BCOPY(&(ea->arp_hrd), &hrd, sizeof(hrd)); BCOPY(&(ea->arp_pro), &pro, sizeof(pro)); BCOPY(&(ea->arp_op), &op, sizeof(op)); type = ntohs(type); hrd = ntohs(hrd); pro = ntohs(pro); op = ntohs(op); if (len < sizeof(*fh) + sizeof(*ea)) { syslog(LOG_ERR, "short (want %d)\n", sizeof(*fh) + sizeof(*ea)); return(0); } /* XXX sysv r4 seems to use hardware format 6 */ if (hrd != ARPHRD_ETHER && hrd != 6) { syslog(LOG_ERR, "%s sent bad hardware format 0x%x\n", e2str(shost), hrd); return(0); } /* XXX hds X terminals sometimes send trailer arp replies */ if (pro != ETHERTYPE_IP && pro != ETHERTYPE_TRAIL && pro != ETHERTYPE_APOLLO) { syslog(LOG_ERR, "%s sent packet not ETHERTYPE_IP (0x%x)\n", e2str(shost), pro); return(0); } if (ea->arp_hln != 6 || ea->arp_pln != 4) { syslog(LOG_ERR, "%s sent bad addr len (hard %d, prot %d)\n", e2str(shost), ea->arp_hln, ea->arp_pln); return(0); } /* * We're only interested in arp requests, arp replies * and reverse arp replies */ if (type == ETHERTYPE_ARP) { if (op != ARPOP_REQUEST && op != ARPOP_REPLY) { syslog(LOG_ERR, "%s sent wrong arp op %d\n", e2str(shost), op); return(0); } } else if (type == ETHERTYPE_REVARP) { if (op == REVARP_REQUEST) { /* no useful information here */ return(0); } else if (op != REVARP_REPLY) { if (debug) syslog(LOG_ERR, "%s sent wrong revarp op %d\n", e2str(shost), op); return(0); } } else { syslog(LOG_ERR, "%s sent bad type 0x%x\n", e2str(shost), type); return(0); } return(1); } int addnet(register const char *str) { register char *cp; register int width; register u_int32_t n, m; register struct nets *np; char *cp2; char tstr[64]; if (strlen(str) > sizeof(tstr) - 1) return(0); if (nets_size <= 0) { nets_size = 8; nets = malloc(nets_size * sizeof(*nets)); } else if (nets_size <= nets_ind) { /* XXX debugging */ nets_size <<= 1; nets = realloc(nets, nets_size * sizeof(*nets)); } if (nets == NULL) { (void)fprintf(stderr, "%s: addnet: malloc/realloc: %s\n", prog, strerror(errno)); exit(1); } np = nets + nets_ind; width = 0; strcpy(tstr, str); cp = strchr(tstr, '/'); if (cp != NULL) { *cp++ = '\0'; width = strtol(cp, &cp2, 10); /* Trailing garbage */ if (*cp2 != '\0') return (0); if (width > 32) return (0); } /* XXX hack */ n = ntohl(inet_addr(tstr)); while ((n & 0xff000000) == 0) { n <<= 8; if (n == 0) return (0); } n = htonl(n); if (width != 0) { m = ~0; m <<= 32 - width; } else if (IN_CLASSA(n)) m = IN_CLASSA_NET; else if (IN_CLASSB(n)) m = IN_CLASSB_NET; else if (IN_CLASSC(n)) m = IN_CLASSC_NET; else if (IN_CLASSD(n)) m = IN_CLASSD_NET; else return (0); m = htonl(m); np->net = n; np->netmask = m; ++nets_ind; return (1); } int isbogon(register u_int32_t sia) { register int i; register struct nets *np; if (nobogons) return (0); if ((sia & netmask) == net) return (0); for (i = 0, np = nets; i < nets_ind; ++i, ++np) if ((sia & np->netmask) == np->net) return (0); return (1); } RETSIGTYPE die(int signo) { syslog(LOG_DEBUG, "exiting"); checkpoint(0); exit(1); } RETSIGTYPE checkpoint(int signo) { if (!can_checkpoint) (void)alarm(1); else { (void)alarm(0); (void)dump(); (void)alarm(CHECKPOINT); } return RETSIGVAL; } __dead void usage(void) { extern char version[]; (void)fprintf(stderr, "Version %s\n", version); (void)fprintf(stderr, "usage: %s [-dN] [-f datafile] [-i interface]" " [-n net[/width]] [-r file]\n", prog); exit(1); } arpwatch-2.1a15/arpwatch.h0100444000177400000340000000214607165475007014704 0ustar leressunsrc/* @(#) $Id: arpwatch.h,v 1.29 2000/09/30 23:40:49 leres Exp $ (LBL) */ #define ARPFILE "arp.dat" #define ETHERCODES "ethercodes.dat" #define CHECKPOINT (15*60) /* Checkpoint time in seconds */ #define MEMCMP(a, b, n) memcmp((char *)a, (char *)b, n) #define BCOPY(a, b, n) memmove((char *)b, (char *)a, n) #define MEMSET(s, c, n) memset((char *)s, c, n) char *intoa(u_int32_t); #ifndef HAVE_BCOPY void bcopy(const void *, void *, size_t); #endif extern char *prog; #ifdef ETHER_HEADER_HAS_EA #define ESRC(ep) ((ep)->ether_shost.ether_addr_octet) #define EDST(ep) ((ep)->ether_dhost.ether_addr_octet) #else #define ESRC(ep) ((ep)->ether_shost) #define EDST(ep) ((ep)->ether_dhost) #endif #ifdef ETHER_ARP_HAS_X #define SHA(ap) ((ap)->arp_xsha) #define THA(ap) ((ap)->arp_xtha) #define SPA(ap) ((ap)->arp_xspa) #define TPA(ap) ((ap)->arp_xtpa) #else #ifdef ETHER_ARP_HAS_EA #define SHA(ap) ((ap)->arp_sha.ether_addr_octet) #define THA(ap) ((ap)->arp_tha.ether_addr_octet) #else #define SHA(ap) ((ap)->arp_sha) #define THA(ap) ((ap)->arp_tha) #endif #define SPA(ap) ((ap)->arp_spa) #define TPA(ap) ((ap)->arp_tpa) #endif arpwatch-2.1a15/bcopy.c0100444000177400000340000001022406467720230014171 0ustar leressunsrc/*- * Copyright (c) 1990, 1993 * The Regents of the University of California. All rights reserved. * * This code is derived from software contributed to Berkeley by * Chris Torek. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #if defined(LIBC_SCCS) && !defined(lint) static char sccsid[] = "@(#)bcopy.c 8.1 (Berkeley) 6/4/93"; #endif /* LIBC_SCCS and not lint */ #include #include #ifndef HAVE_BCOPY void bcopy(const void *, void *, size_t); #endif /* * sizeof(word) MUST BE A POWER OF TWO * SO THAT wmask BELOW IS ALL ONES */ typedef int word; /* "word" used for optimal copy speed */ #define wsize sizeof(word) #define wmask (wsize - 1) /* * Copy a block of memory, handling overlap. * This is the routine that actually implements * (the portable versions of) bcopy, memcpy, and memmove. */ #ifdef MEMCOPY void * memcpy(dst0, src0, length) #else #ifdef MEMMOVE void * memmove(dst0, src0, length) #else void bcopy(src0, dst0, length) #endif #endif void *dst0; const void *src0; register size_t length; { register char *dst = dst0; register const char *src = src0; register size_t t; if (length == 0 || dst == src) /* nothing to do */ goto done; /* * Macros: loop-t-times; and loop-t-times, t>0 */ #define TLOOP(s) if (t) TLOOP1(s) #define TLOOP1(s) do { s; } while (--t) if ((unsigned long)dst < (unsigned long)src) { /* * Copy forward. */ t = (int)src; /* only need low bits */ if ((t | (int)dst) & wmask) { /* * Try to align operands. This cannot be done * unless the low bits match. */ if ((t ^ (int)dst) & wmask || length < wsize) t = length; else t = wsize - (t & wmask); length -= t; TLOOP1(*dst++ = *src++); } /* * Copy whole words, then mop up any trailing bytes. */ t = length / wsize; TLOOP(*(word *)dst = *(word *)src; src += wsize; dst += wsize); t = length & wmask; TLOOP(*dst++ = *src++); } else { /* * Copy backwards. Otherwise essentially the same. * Alignment works as before, except that it takes * (t&wmask) bytes to align, not wsize-(t&wmask). */ src += length; dst += length; t = (int)src; if ((t | (int)dst) & wmask) { if ((t ^ (int)dst) & wmask || length <= wsize) t = length; else t &= wmask; length -= t; TLOOP1(*--dst = *--src); } t = length / wsize; TLOOP(src -= wsize; dst -= wsize; *(word *)dst = *(word *)src); t = length & wmask; TLOOP(*--dst = *--src); } done: #if defined(MEMCOPY) || defined(MEMMOVE) return (dst0); #else return; #endif } arpwatch-2.1a15/bihourly.sh0100555000177400000340000000223610462452501015102 0ustar leressunsrc#!/bin/sh # @(#) $Id: bihourly.sh,v 1.2 2006/07/28 18:19:32 leres Exp $ (LBL) # # bihourly arpwatch job # PATH=${PATH}:/usr/local/sbin export PATH # cd /usr/operator/arpwatch # list="`cat list`" cname="`cat cname`" temp1=/tmp/bihourly.1.$$ temp2=/tmp/bihourly.2.$$ d=/tmp/errs # imperfect hack l=/tmp/bihourly.lock if [ -f ${l} ]; then echo "skipping arpwatch bihourly job, lock file exists" exit fi trap 'rm -f ${l}; exit 1' 1 2 3 15 touch ${l} alist="" for r in ${list}; do \ ./arpfetch ${r} ${cname} > ${r} 2> ${temp1} if [ -s ${temp1} ]; then echo "arpfetch ${r} errors:" xr=${d}/${r}.$$ echo "(file ${r} saved in ${xr})" mkdir -p ${d} cp ${r} ${xr} sed -e 's/^/ /' ${temp1} continue fi alist="${alist} ${r}" done arpsnmp -d ${alist} > ${temp1} 2>&1 sed -e '/arpsnmp: suppressed DECnet flip flop/d' ${temp1} > ${temp2} if [ -s ${temp2} ]; then mail -s "`hostname` arpwatch report" \ arpwatch-reports@noname.lbl.gov < ${temp2} fi rm -f ${temp1} ${temp2} d=/www/NETINFO/arpwatch f=arp.dat cp ${f} ${d} f=ethercodes.dat diff ethercodes.dat ${d} >>/dev/null 2>&1 if [ $? -ne 0 ]; then echo Updating ${d}/${f} cp ${f} ${d} fi rm ${l} exit 0 arpwatch-2.1a15/config.guess0100555000177400000340000012214110400726204015220 0ustar leressunsrc#! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003 Free Software Foundation, Inc. timestamp='2003-10-03' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Originally written by Per Bothner . # Please send patches to . Submit a context # diff and a properly formatted ChangeLog entry. # # This script attempts to guess a canonical system name similar to # config.sub. If it succeeds, it prints the system name on stdout, and # exits with 0. Otherwise, it exits with 1. # # The plan is that this can be called by configure scripts if you # don't specify an explicit build system type. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] Output the configuration name of the system \`$me' is run on. Operation modes: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.guess ($timestamp) Originally written by Per Bothner. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try \`$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit 0 ;; --version | -v ) echo "$version" ; exit 0 ;; --help | --h* | -h ) echo "$usage"; exit 0 ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" >&2 exit 1 ;; * ) break ;; esac done if test $# != 0; then echo "$me: too many arguments$help" >&2 exit 1 fi trap 'exit 1' 1 2 15 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a # compiler to aid in system detection is discouraged as it requires # temporary files to be created and, as you can see below, it is a # headache to deal with in a portable fashion. # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still # use `HOST_CC' if defined, but it is deprecated. # Portable tmp directory creation inspired by the Autoconf team. set_cc_for_build=' trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; : ${TMPDIR=/tmp} ; { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; dummy=$tmp/dummy ; tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; case $CC_FOR_BUILD,$HOST_CC,$CC in ,,) echo "int x;" > $dummy.c ; for c in cc gcc c89 c99 ; do if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then CC_FOR_BUILD="$c"; break ; fi ; done ; if test x"$CC_FOR_BUILD" = x ; then CC_FOR_BUILD=no_compiler_found ; fi ;; ,,*) CC_FOR_BUILD=$CC ;; ,*,*) CC_FOR_BUILD=$HOST_CC ;; esac ;' # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 1994-08-24) if (test -f /.attbin/uname) >/dev/null 2>&1 ; then PATH=$PATH:/.attbin ; export PATH fi UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown # Note: order is significant - the case branches are not exclusive. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in *:NetBSD:*:*) # NetBSD (nbsd) targets should (where applicable) match one or # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently # switched to ELF, *-*-netbsd* would select the old # object file format. This provides both forward # compatibility and a consistent mechanism for selecting the # object file format. # # Note: NetBSD doesn't particularly care about the vendor # portion of the name. We always set it to "unknown". sysctl="sysctl -n hw.machine_arch" UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ /usr/sbin/$sysctl 2>/dev/null || echo unknown)` case "${UNAME_MACHINE_ARCH}" in armeb) machine=armeb-unknown ;; arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; *) machine=${UNAME_MACHINE_ARCH}-unknown ;; esac # The Operating System including object format, if it has switched # to ELF recently, or will in the future. case "${UNAME_MACHINE_ARCH}" in arm*|i386|m68k|ns32k|sh3*|sparc|vax) eval $set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep __ELF__ >/dev/null then # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). # Return netbsd for either. FIX? os=netbsd else os=netbsdelf fi ;; *) os=netbsd ;; esac # The OS release # Debian GNU/NetBSD machines have a different userland, and # thus, need a distinct triplet. However, they do not need # kernel version information, so it can be replaced with a # suitable tag, in the style of linux-gnu. case "${UNAME_VERSION}" in Debian*) release='-gnu' ;; *) release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` ;; esac # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. echo "${machine}-${os}${release}" exit 0 ;; amiga:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; arc:OpenBSD:*:*) echo mipsel-unknown-openbsd${UNAME_RELEASE} exit 0 ;; hp300:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; mac68k:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; macppc:OpenBSD:*:*) echo powerpc-unknown-openbsd${UNAME_RELEASE} exit 0 ;; mvme68k:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; mvme88k:OpenBSD:*:*) echo m88k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; mvmeppc:OpenBSD:*:*) echo powerpc-unknown-openbsd${UNAME_RELEASE} exit 0 ;; pmax:OpenBSD:*:*) echo mipsel-unknown-openbsd${UNAME_RELEASE} exit 0 ;; sgi:OpenBSD:*:*) echo mipseb-unknown-openbsd${UNAME_RELEASE} exit 0 ;; sun3:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; wgrisc:OpenBSD:*:*) echo mipsel-unknown-openbsd${UNAME_RELEASE} exit 0 ;; *:OpenBSD:*:*) echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE} exit 0 ;; alpha:OSF1:*:*) if test $UNAME_RELEASE = "V4.0"; then UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` fi # According to Compaq, /usr/sbin/psrinfo has been available on # OSF/1 and Tru64 systems produced since 1995. I hope that # covers most systems running today. This code pipes the CPU # types through head -n 1, so we only detect the type of CPU 0. ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` case "$ALPHA_CPU_TYPE" in "EV4 (21064)") UNAME_MACHINE="alpha" ;; "EV4.5 (21064)") UNAME_MACHINE="alpha" ;; "LCA4 (21066/21068)") UNAME_MACHINE="alpha" ;; "EV5 (21164)") UNAME_MACHINE="alphaev5" ;; "EV5.6 (21164A)") UNAME_MACHINE="alphaev56" ;; "EV5.6 (21164PC)") UNAME_MACHINE="alphapca56" ;; "EV5.7 (21164PC)") UNAME_MACHINE="alphapca57" ;; "EV6 (21264)") UNAME_MACHINE="alphaev6" ;; "EV6.7 (21264A)") UNAME_MACHINE="alphaev67" ;; "EV6.8CB (21264C)") UNAME_MACHINE="alphaev68" ;; "EV6.8AL (21264B)") UNAME_MACHINE="alphaev68" ;; "EV6.8CX (21264D)") UNAME_MACHINE="alphaev68" ;; "EV6.9A (21264/EV69A)") UNAME_MACHINE="alphaev69" ;; "EV7 (21364)") UNAME_MACHINE="alphaev7" ;; "EV7.9 (21364A)") UNAME_MACHINE="alphaev79" ;; esac # A Vn.n version is a released version. # A Tn.n version is a released field test version. # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` exit 0 ;; Alpha*:OpenVMS:*:*) echo alpha-hp-vms exit 0 ;; Alpha\ *:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # Should we change UNAME_MACHINE based on the output of uname instead # of the specific Alpha model? echo alpha-pc-interix exit 0 ;; 21064:Windows_NT:50:3) echo alpha-dec-winnt3.5 exit 0 ;; Amiga*:UNIX_System_V:4.0:*) echo m68k-unknown-sysv4 exit 0;; *:[Aa]miga[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-amigaos exit 0 ;; *:[Mm]orph[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-morphos exit 0 ;; *:OS/390:*:*) echo i370-ibm-openedition exit 0 ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} exit 0;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) echo hppa1.1-hitachi-hiuxmpp exit 0;; Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. if test "`(/bin/universe) 2>/dev/null`" = att ; then echo pyramid-pyramid-sysv3 else echo pyramid-pyramid-bsd fi exit 0 ;; NILE*:*:*:dcosx) echo pyramid-pyramid-svr4 exit 0 ;; DRS?6000:unix:4.0:6*) echo sparc-icl-nx6 exit 0 ;; DRS?6000:UNIX_SV:4.2*:7*) case `/usr/bin/uname -p` in sparc) echo sparc-icl-nx7 && exit 0 ;; esac ;; sun4H:SunOS:5.*:*) echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit 0 ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit 0 ;; i86pc:SunOS:5.*:*) echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit 0 ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize # SunOS6. Hard to guess exactly what SunOS6 will be like, but # it's likely to be more like Solaris than SunOS4. echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit 0 ;; sun4*:SunOS:*:*) case "`/usr/bin/arch -k`" in Series*|S4*) UNAME_RELEASE=`uname -v` ;; esac # Japanese Language versions have a version number like `4.1.3-JL'. echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` exit 0 ;; sun3*:SunOS:*:*) echo m68k-sun-sunos${UNAME_RELEASE} exit 0 ;; sun*:*:4.2BSD:*) UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 case "`/bin/arch`" in sun3) echo m68k-sun-sunos${UNAME_RELEASE} ;; sun4) echo sparc-sun-sunos${UNAME_RELEASE} ;; esac exit 0 ;; aushp:SunOS:*:*) echo sparc-auspex-sunos${UNAME_RELEASE} exit 0 ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not # "atarist" or "atariste" at least should have a processor # > m68000). The system name ranges from "MiNT" over "FreeMiNT" # to the lowercase version "mint" (or "freemint"). Finally # the system name "TOS" denotes a system which is actually not # MiNT. But MiNT is downward compatible to TOS, so this should # be no problem. atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit 0 ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit 0 ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit 0 ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) echo m68k-milan-mint${UNAME_RELEASE} exit 0 ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) echo m68k-hades-mint${UNAME_RELEASE} exit 0 ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) echo m68k-unknown-mint${UNAME_RELEASE} exit 0 ;; powerpc:machten:*:*) echo powerpc-apple-machten${UNAME_RELEASE} exit 0 ;; RISC*:Mach:*:*) echo mips-dec-mach_bsd4.3 exit 0 ;; RISC*:ULTRIX:*:*) echo mips-dec-ultrix${UNAME_RELEASE} exit 0 ;; VAX*:ULTRIX*:*:*) echo vax-dec-ultrix${UNAME_RELEASE} exit 0 ;; 2020:CLIX:*:* | 2430:CLIX:*:*) echo clipper-intergraph-clix${UNAME_RELEASE} exit 0 ;; mips:*:*:UMIPS | mips:*:*:RISCos) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #ifdef __cplusplus #include /* for printf() prototype */ int main (int argc, char *argv[]) { #else int main (argc, argv) int argc; char *argv[]; { #endif #if defined (host_mips) && defined (MIPSEB) #if defined (SYSTYPE_SYSV) printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_SVR4) printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); #endif #endif exit (-1); } EOF $CC_FOR_BUILD -o $dummy $dummy.c \ && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ && exit 0 echo mips-mips-riscos${UNAME_RELEASE} exit 0 ;; Motorola:PowerMAX_OS:*:*) echo powerpc-motorola-powermax exit 0 ;; Motorola:*:4.3:PL8-*) echo powerpc-harris-powermax exit 0 ;; Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) echo powerpc-harris-powermax exit 0 ;; Night_Hawk:Power_UNIX:*:*) echo powerpc-harris-powerunix exit 0 ;; m88k:CX/UX:7*:*) echo m88k-harris-cxux7 exit 0 ;; m88k:*:4*:R4*) echo m88k-motorola-sysv4 exit 0 ;; m88k:*:3*:R3*) echo m88k-motorola-sysv3 exit 0 ;; AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] then if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ [ ${TARGET_BINARY_INTERFACE}x = x ] then echo m88k-dg-dgux${UNAME_RELEASE} else echo m88k-dg-dguxbcs${UNAME_RELEASE} fi else echo i586-dg-dgux${UNAME_RELEASE} fi exit 0 ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) echo m88k-dolphin-sysv3 exit 0 ;; M88*:*:R3*:*) # Delta 88k system running SVR3 echo m88k-motorola-sysv3 exit 0 ;; XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) echo m88k-tektronix-sysv3 exit 0 ;; Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) echo m68k-tektronix-bsd exit 0 ;; *:IRIX*:*:*) echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` exit 0 ;; ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' i*86:AIX:*:*) echo i386-ibm-aix exit 0 ;; ia64:AIX:*:*) if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} exit 0 ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include main() { if (!__power_pc()) exit(1); puts("powerpc-ibm-aix3.2.5"); exit(0); } EOF $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 echo rs6000-ibm-aix3.2.5 elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then echo rs6000-ibm-aix3.2.4 else echo rs6000-ibm-aix3.2 fi exit 0 ;; *:AIX:*:[45]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 else IBM_ARCH=powerpc fi if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${IBM_ARCH}-ibm-aix${IBM_REV} exit 0 ;; *:AIX:*:*) echo rs6000-ibm-aix exit 0 ;; ibmrt:4.4BSD:*|romp-ibm:BSD:*) echo romp-ibm-bsd4.4 exit 0 ;; ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to exit 0 ;; # report: romp-ibm BSD 4.3 *:BOSX:*:*) echo rs6000-bull-bosx exit 0 ;; DPX/2?00:B.O.S.:*:*) echo m68k-bull-sysv3 exit 0 ;; 9000/[34]??:4.3bsd:1.*:*) echo m68k-hp-bsd exit 0 ;; hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) echo m68k-hp-bsd4.4 exit 0 ;; 9000/[34678]??:HP-UX:*:*) HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` case "${UNAME_MACHINE}" in 9000/31? ) HP_ARCH=m68000 ;; 9000/[34]?? ) HP_ARCH=m68k ;; 9000/[678][0-9][0-9]) if [ -x /usr/bin/getconf ]; then sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` case "${sc_cpu_version}" in 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 532) # CPU_PA_RISC2_0 case "${sc_kernel_bits}" in 32) HP_ARCH="hppa2.0n" ;; 64) HP_ARCH="hppa2.0w" ;; '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 esac ;; esac fi if [ "${HP_ARCH}" = "" ]; then eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #define _HPUX_SOURCE #include #include int main () { #if defined(_SC_KERNEL_BITS) long bits = sysconf(_SC_KERNEL_BITS); #endif long cpu = sysconf (_SC_CPU_VERSION); switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0"); break; case CPU_PA_RISC1_1: puts ("hppa1.1"); break; case CPU_PA_RISC2_0: #if defined(_SC_KERNEL_BITS) switch (bits) { case 64: puts ("hppa2.0w"); break; case 32: puts ("hppa2.0n"); break; default: puts ("hppa2.0"); break; } break; #else /* !defined(_SC_KERNEL_BITS) */ puts ("hppa2.0"); break; #endif default: puts ("hppa1.0"); break; } exit (0); } EOF (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` test -z "$HP_ARCH" && HP_ARCH=hppa fi ;; esac if [ ${HP_ARCH} = "hppa2.0w" ] then # avoid double evaluation of $set_cc_for_build test -n "$CC_FOR_BUILD" || eval $set_cc_for_build if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null then HP_ARCH="hppa2.0w" else HP_ARCH="hppa64" fi fi echo ${HP_ARCH}-hp-hpux${HPUX_REV} exit 0 ;; ia64:HP-UX:*:*) HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` echo ia64-hp-hpux${HPUX_REV} exit 0 ;; 3050*:HI-UX:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include int main () { long cpu = sysconf (_SC_CPU_VERSION); /* The order matters, because CPU_IS_HP_MC68K erroneously returns true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct results, however. */ if (CPU_IS_PA_RISC (cpu)) { switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; default: puts ("hppa-hitachi-hiuxwe2"); break; } } else if (CPU_IS_HP_MC68K (cpu)) puts ("m68k-hitachi-hiuxwe2"); else puts ("unknown-hitachi-hiuxwe2"); exit (0); } EOF $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0 echo unknown-hitachi-hiuxwe2 exit 0 ;; 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) echo hppa1.1-hp-bsd exit 0 ;; 9000/8??:4.3bsd:*:*) echo hppa1.0-hp-bsd exit 0 ;; *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) echo hppa1.0-hp-mpeix exit 0 ;; hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) echo hppa1.1-hp-osf exit 0 ;; hp8??:OSF1:*:*) echo hppa1.0-hp-osf exit 0 ;; i*86:OSF1:*:*) if [ -x /usr/sbin/sysversion ] ; then echo ${UNAME_MACHINE}-unknown-osf1mk else echo ${UNAME_MACHINE}-unknown-osf1 fi exit 0 ;; parisc*:Lites*:*:*) echo hppa1.1-hp-lites exit 0 ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) echo c1-convex-bsd exit 0 ;; C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit 0 ;; C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) echo c34-convex-bsd exit 0 ;; C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) echo c38-convex-bsd exit 0 ;; C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) echo c4-convex-bsd exit 0 ;; CRAY*Y-MP:*:*:*) echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY*[A-Z]90:*:*:*) echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY*TS:*:*:*) echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY*T3E:*:*:*) echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY*SV1:*:*:*) echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; *:UNICOS/mp:*:*) echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit 0 ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} exit 0 ;; sparc*:BSD/OS:*:*) echo sparc-unknown-bsdi${UNAME_RELEASE} exit 0 ;; *:BSD/OS:*:*) echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} exit 0 ;; *:FreeBSD:*:*|*:GNU/FreeBSD:*:*) # Determine whether the default compiler uses glibc. eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include #if __GLIBC__ >= 2 LIBC=gnu #else LIBC= #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` # GNU/FreeBSD systems have a "k" prefix to indicate we are using # FreeBSD's kernel, but not the complete OS. case ${LIBC} in gnu) kernel_only='k' ;; esac echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC} exit 0 ;; i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin exit 0 ;; i*:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit 0 ;; i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 exit 0 ;; x86:Interix*:[34]*) echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//' exit 0 ;; [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) echo i${UNAME_MACHINE}-pc-mks exit 0 ;; i*:Windows_NT*:* | Pentium*:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we # UNAME_MACHINE based on the output of uname instead of i386? echo i586-pc-interix exit 0 ;; i*:UWIN*:*) echo ${UNAME_MACHINE}-pc-uwin exit 0 ;; p*:CYGWIN*:*) echo powerpcle-unknown-cygwin exit 0 ;; prep*:SunOS:5.*:*) echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit 0 ;; *:GNU:*:*) echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` exit 0 ;; i*86:Minix:*:*) echo ${UNAME_MACHINE}-pc-minix exit 0 ;; arm*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; cris:Linux:*:*) echo cris-axis-linux-gnu exit 0 ;; ia64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; m68*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; mips:Linux:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #undef CPU #undef mips #undef mipsel #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) CPU=mipsel #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) CPU=mips #else CPU= #endif #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 ;; mips64:Linux:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #undef CPU #undef mips64 #undef mips64el #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) CPU=mips64el #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) CPU=mips64 #else CPU= #endif #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=` test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0 ;; ppc:Linux:*:*) echo powerpc-unknown-linux-gnu exit 0 ;; ppc64:Linux:*:*) echo powerpc64-unknown-linux-gnu exit 0 ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in EV5) UNAME_MACHINE=alphaev5 ;; EV56) UNAME_MACHINE=alphaev56 ;; PCA56) UNAME_MACHINE=alphapca56 ;; PCA57) UNAME_MACHINE=alphapca56 ;; EV6) UNAME_MACHINE=alphaev6 ;; EV67) UNAME_MACHINE=alphaev67 ;; EV68*) UNAME_MACHINE=alphaev68 ;; esac objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} exit 0 ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in PA7*) echo hppa1.1-unknown-linux-gnu ;; PA8*) echo hppa2.0-unknown-linux-gnu ;; *) echo hppa-unknown-linux-gnu ;; esac exit 0 ;; parisc64:Linux:*:* | hppa64:Linux:*:*) echo hppa64-unknown-linux-gnu exit 0 ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux exit 0 ;; sh64*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; sh*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; sparc:Linux:*:* | sparc64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit 0 ;; x86_64:Linux:*:*) echo x86_64-unknown-linux-gnu exit 0 ;; i*86:Linux:*:*) # The BFD linker knows what the default object file format is, so # first see if it will tell us. cd to the root directory to prevent # problems with other programs or directories called `ld' in the path. # Set LC_ALL=C to ensure ld outputs messages in English. ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ | sed -ne '/supported targets:/!d s/[ ][ ]*/ /g s/.*supported targets: *// s/ .*// p'` case "$ld_supported_targets" in elf32-i386) TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" ;; a.out-i386-linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" exit 0 ;; coff-i386) echo "${UNAME_MACHINE}-pc-linux-gnucoff" exit 0 ;; "") # Either a pre-BFD a.out linker (linux-gnuoldld) or # one that does not give us useful --help. echo "${UNAME_MACHINE}-pc-linux-gnuoldld" exit 0 ;; esac # Determine whether the default compiler is a.out or elf eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include #ifdef __ELF__ # ifdef __GLIBC__ # if __GLIBC__ >= 2 LIBC=gnu # else LIBC=gnulibc1 # endif # else LIBC=gnulibc1 # endif #else #ifdef __INTEL_COMPILER LIBC=gnu #else LIBC=gnuaout #endif #endif #ifdef __dietlibc__ LIBC=dietlibc #endif EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=` test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0 test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. # earlier versions are messed up and put the nodename in both # sysname and nodename. echo i386-sequent-sysv4 exit 0 ;; i*86:UNIX_SV:4.2MP:2.*) # Unixware is an offshoot of SVR4, but it has its own version # number series starting with 2... # I am not positive that other SVR4 systems won't match this, # I just have to hope. -- rms. # Use sysv4.2uw... so that sysv4* matches it. echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} exit 0 ;; i*86:OS/2:*:*) # If we were able to find `uname', then EMX Unix compatibility # is probably installed. echo ${UNAME_MACHINE}-pc-os2-emx exit 0 ;; i*86:XTS-300:*:STOP) echo ${UNAME_MACHINE}-unknown-stop exit 0 ;; i*86:atheos:*:*) echo ${UNAME_MACHINE}-unknown-atheos exit 0 ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) echo i386-unknown-lynxos${UNAME_RELEASE} exit 0 ;; i*86:*DOS:*:*) echo ${UNAME_MACHINE}-pc-msdosdjgpp exit 0 ;; i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} else echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} fi exit 0 ;; i*86:*:5:[78]*) case `/bin/uname -X | grep "^Machine"` in *486*) UNAME_MACHINE=i486 ;; *Pentium) UNAME_MACHINE=i586 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;; esac echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} exit 0 ;; i*86:*:3.2:*) if test -f /usr/options/cb.name; then UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ && UNAME_MACHINE=i586 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ && UNAME_MACHINE=i686 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ && UNAME_MACHINE=i686 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL else echo ${UNAME_MACHINE}-pc-sysv32 fi exit 0 ;; pc:*:*:*) # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about # the processor, so we play safe by assuming i386. echo i386-pc-msdosdjgpp exit 0 ;; Intel:Mach:3*:*) echo i386-pc-mach3 exit 0 ;; paragon:*:*:*) echo i860-intel-osf1 exit 0 ;; i860:*:4.*:*) # i860-SVR4 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 else # Add other i860-SVR4 vendors below as they are discovered. echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 fi exit 0 ;; mini*:CTIX:SYS*5:*) # "miniframe" echo m68010-convergent-sysv exit 0 ;; mc68k:UNIX:SYSTEM5:3.51m) echo m68k-convergent-sysv exit 0 ;; M680?0:D-NIX:5.3:*) echo m68k-diab-dnix exit 0 ;; M68*:*:R3V[567]*:*) test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0) OS_REL='' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && echo i486-ncr-sysv4.3${OS_REL} && exit 0 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && echo i486-ncr-sysv4 && exit 0 ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) echo m68k-unknown-lynxos${UNAME_RELEASE} exit 0 ;; mc68030:UNIX_System_V:4.*:*) echo m68k-atari-sysv4 exit 0 ;; TSUNAMI:LynxOS:2.*:*) echo sparc-unknown-lynxos${UNAME_RELEASE} exit 0 ;; rs6000:LynxOS:2.*:*) echo rs6000-unknown-lynxos${UNAME_RELEASE} exit 0 ;; PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) echo powerpc-unknown-lynxos${UNAME_RELEASE} exit 0 ;; SM[BE]S:UNIX_SV:*:*) echo mips-dde-sysv${UNAME_RELEASE} exit 0 ;; RM*:ReliantUNIX-*:*:*) echo mips-sni-sysv4 exit 0 ;; RM*:SINIX-*:*:*) echo mips-sni-sysv4 exit 0 ;; *:SINIX-*:*:*) if uname -p 2>/dev/null >/dev/null ; then UNAME_MACHINE=`(uname -p) 2>/dev/null` echo ${UNAME_MACHINE}-sni-sysv4 else echo ns32k-sni-sysv fi exit 0 ;; PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort # says echo i586-unisys-sysv4 exit 0 ;; *:UNIX_System_V:4*:FTX*) # From Gerald Hewes . # How about differentiating between stratus architectures? -djm echo hppa1.1-stratus-sysv4 exit 0 ;; *:*:*:FTX*) # From seanf@swdc.stratus.com. echo i860-stratus-sysv4 exit 0 ;; *:VOS:*:*) # From Paul.Green@stratus.com. echo hppa1.1-stratus-vos exit 0 ;; mc68*:A/UX:*:*) echo m68k-apple-aux${UNAME_RELEASE} exit 0 ;; news*:NEWS-OS:6*:*) echo mips-sony-newsos6 exit 0 ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if [ -d /usr/nec ]; then echo mips-nec-sysv${UNAME_RELEASE} else echo mips-unknown-sysv${UNAME_RELEASE} fi exit 0 ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. echo powerpc-be-beos exit 0 ;; BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. echo powerpc-apple-beos exit 0 ;; BePC:BeOS:*:*) # BeOS running on Intel PC compatible. echo i586-pc-beos exit 0 ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} exit 0 ;; SX-5:SUPER-UX:*:*) echo sx5-nec-superux${UNAME_RELEASE} exit 0 ;; SX-6:SUPER-UX:*:*) echo sx6-nec-superux${UNAME_RELEASE} exit 0 ;; Power*:Rhapsody:*:*) echo powerpc-apple-rhapsody${UNAME_RELEASE} exit 0 ;; *:Rhapsody:*:*) echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} exit 0 ;; *:Darwin:*:*) case `uname -p` in *86) UNAME_PROCESSOR=i686 ;; powerpc) UNAME_PROCESSOR=powerpc ;; esac echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} exit 0 ;; *:procnto*:*:* | *:QNX:[0123456789]*:*) UNAME_PROCESSOR=`uname -p` if test "$UNAME_PROCESSOR" = "x86"; then UNAME_PROCESSOR=i386 UNAME_MACHINE=pc fi echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} exit 0 ;; *:QNX:*:4*) echo i386-pc-qnx exit 0 ;; NSR-[DGKLNPTVWY]:NONSTOP_KERNEL:*:*) echo nsr-tandem-nsk${UNAME_RELEASE} exit 0 ;; *:NonStop-UX:*:*) echo mips-compaq-nonstopux exit 0 ;; BS2000:POSIX*:*:*) echo bs2000-siemens-sysv exit 0 ;; DS/*:UNIX_System_V:*:*) echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} exit 0 ;; *:Plan9:*:*) # "uname -m" is not consistent, so use $cputype instead. 386 # is converted to i386 for consistency with other x86 # operating systems. if test "$cputype" = "386"; then UNAME_MACHINE=i386 else UNAME_MACHINE="$cputype" fi echo ${UNAME_MACHINE}-unknown-plan9 exit 0 ;; *:TOPS-10:*:*) echo pdp10-unknown-tops10 exit 0 ;; *:TENEX:*:*) echo pdp10-unknown-tenex exit 0 ;; KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) echo pdp10-dec-tops20 exit 0 ;; XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) echo pdp10-xkl-tops20 exit 0 ;; *:TOPS-20:*:*) echo pdp10-unknown-tops20 exit 0 ;; *:ITS:*:*) echo pdp10-unknown-its exit 0 ;; SEI:*:*:SEIUX) echo mips-sei-seiux${UNAME_RELEASE} exit 0 ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 eval $set_cc_for_build cat >$dummy.c < # include #endif main () { #if defined (sony) #if defined (MIPSEB) /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, I don't know.... */ printf ("mips-sony-bsd\n"); exit (0); #else #include printf ("m68k-sony-newsos%s\n", #ifdef NEWSOS4 "4" #else "" #endif ); exit (0); #endif #endif #if defined (__arm) && defined (__acorn) && defined (__unix) printf ("arm-acorn-riscix"); exit (0); #endif #if defined (hp300) && !defined (hpux) printf ("m68k-hp-bsd\n"); exit (0); #endif #if defined (NeXT) #if !defined (__ARCHITECTURE__) #define __ARCHITECTURE__ "m68k" #endif int version; version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; if (version < 4) printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); else printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); exit (0); #endif #if defined (MULTIMAX) || defined (n16) #if defined (UMAXV) printf ("ns32k-encore-sysv\n"); exit (0); #else #if defined (CMU) printf ("ns32k-encore-mach\n"); exit (0); #else printf ("ns32k-encore-bsd\n"); exit (0); #endif #endif #endif #if defined (__386BSD__) printf ("i386-pc-bsd\n"); exit (0); #endif #if defined (sequent) #if defined (i386) printf ("i386-sequent-dynix\n"); exit (0); #endif #if defined (ns32000) printf ("ns32k-sequent-dynix\n"); exit (0); #endif #endif #if defined (_SEQUENT_) struct utsname un; uname(&un); if (strncmp(un.version, "V2", 2) == 0) { printf ("i386-sequent-ptx2\n"); exit (0); } if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ printf ("i386-sequent-ptx1\n"); exit (0); } printf ("i386-sequent-ptx\n"); exit (0); #endif #if defined (vax) # if !defined (ultrix) # include # if defined (BSD) # if BSD == 43 printf ("vax-dec-bsd4.3\n"); exit (0); # else # if BSD == 199006 printf ("vax-dec-bsd4.3reno\n"); exit (0); # else printf ("vax-dec-bsd\n"); exit (0); # endif # endif # else printf ("vax-dec-bsd\n"); exit (0); # endif # else printf ("vax-dec-ultrix\n"); exit (0); # endif #endif #if defined (alliant) && defined (i860) printf ("i860-alliant-bsd\n"); exit (0); #endif exit (1); } EOF $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0 # Apollos put the system type in the environment. test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } # Convex versions that predate uname can use getsysinfo(1) if [ -x /usr/convex/getsysinfo ] then case `getsysinfo -f cpu_type` in c1*) echo c1-convex-bsd exit 0 ;; c2*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit 0 ;; c34*) echo c34-convex-bsd exit 0 ;; c38*) echo c38-convex-bsd exit 0 ;; c4*) echo c4-convex-bsd exit 0 ;; esac fi cat >&2 < in order to provide the needed information to handle your system. config.guess timestamp = $timestamp uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` /bin/uname -X = `(/bin/uname -X) 2>/dev/null` hostinfo = `(hostinfo) 2>/dev/null` /bin/universe = `(/bin/universe) 2>/dev/null` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` /bin/arch = `(/bin/arch) 2>/dev/null` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` UNAME_MACHINE = ${UNAME_MACHINE} UNAME_RELEASE = ${UNAME_RELEASE} UNAME_SYSTEM = ${UNAME_SYSTEM} UNAME_VERSION = ${UNAME_VERSION} EOF exit 1 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: arpwatch-2.1a15/config.sub0100555000177400000340000007340610374026014014676 0ustar leressunsrc#! /bin/sh # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003 Free Software Foundation, Inc. timestamp='2003-08-18' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software # can handle that machine. It does not imply ALL GNU software can. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, # Boston, MA 02111-1307, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Please send patches to . Submit a context # diff and a properly formatted ChangeLog entry. # # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. # If it is invalid, we print an error message on stderr and exit with code 1. # Otherwise, we print the canonical config type on stdout and succeed. # This file is supposed to be the same for all GNU packages # and recognize all the CPU types, system types and aliases # that are meaningful with *any* GNU software. # Each package is responsible for reporting which valid configurations # it does not support. The user should be able to distinguish # a failure to support a valid configuration from a meaningless # configuration. # The goal of this file is to map all the various variations of a given # machine specification into a single specification in the form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM # or in some cases, the newer four-part form: # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # It is wrong to echo any other type of specification. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] CPU-MFR-OPSYS $0 [OPTION] ALIAS Canonicalize a configuration name. Operation modes: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.sub ($timestamp) Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try \`$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit 0 ;; --version | -v ) echo "$version" ; exit 0 ;; --help | --h* | -h ) echo "$usage"; exit 0 ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" exit 1 ;; *local*) # First pass through any local machine types. echo $1 exit 0;; * ) break ;; esac done case $# in 0) echo "$me: missing argument$help" >&2 exit 1;; 1) ;; *) echo "$me: too many arguments$help" >&2 exit 1;; esac # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in nto-qnx* | linux-gnu* | linux-dietlibc | kfreebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; *) basic_machine=`echo $1 | sed 's/-[^-]*$//'` if [ $basic_machine != $1 ] then os=`echo $1 | sed 's/.*-/-/'` else os=; fi ;; esac ### Let's recognize common machines as not being operating systems so ### that things like config.sub decstation-3100 work. We also ### recognize some manufacturers as not being operating systems, so we ### can provide default operating systems below. case $os in -sun*os*) # Prevent following clause from handling this invalid input. ;; -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ -apple | -axis) os= basic_machine=$1 ;; -sim | -cisco | -oki | -wec | -winbond) os= basic_machine=$1 ;; -scout) ;; -wrs) os=-vxworks basic_machine=$1 ;; -chorusos*) os=-chorusos basic_machine=$1 ;; -chorusrdb) os=-chorusrdb basic_machine=$1 ;; -hiux*) os=-hiuxwe2 ;; -sco5) os=-sco3.2v5 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco4) os=-sco3.2v4 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2.[4-9]*) os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2v[4-9]*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco*) os=-sco3.2v2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -udk*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -isc) os=-isc2.2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -clix*) basic_machine=clipper-intergraph ;; -isc*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -lynx*) os=-lynxos ;; -ptx*) basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` ;; -windowsnt*) os=`echo $os | sed -e 's/windowsnt/winnt/'` ;; -psos*) os=-psos ;; -mint | -mint[0-9]*) basic_machine=m68k-atari os=-mint ;; esac # Decode aliases for certain CPU-COMPANY combinations. case $basic_machine in # Recognize the basic CPU types without company name. # Some are omitted here because they have special meanings below. 1750a | 580 \ | a29k \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ | m32r | m68000 | m68k | m88k | mcore \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ | mips64vr | mips64vrel \ | mips64orion | mips64orionel \ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ | mipsisa32 | mipsisa32el \ | mipsisa32r2 | mipsisa32r2el \ | mipsisa64 | mipsisa64el \ | mipsisa64r2 | mipsisa64r2el \ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ | msp430 \ | ns16k | ns32k \ | openrisc | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \ | strongarm \ | tahoe | thumb | tic4x | tic80 | tron \ | v850 | v850e \ | we32k \ | x86 | xscale | xstormy16 | xtensa \ | z8k) basic_machine=$basic_machine-unknown ;; m6811 | m68hc11 | m6812 | m68hc12) # Motorola 68HC11/12. basic_machine=$basic_machine-unknown os=-none ;; m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) ;; # We use `pc' rather than `unknown' # because (1) that's what they normally are, and # (2) the word "unknown" tends to confuse beginning users. i*86 | x86_64) basic_machine=$basic_machine-pc ;; # Object if more than one company name word. *-*-*) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; # Recognize the basic CPU types with company name. 580-* \ | a29k-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* \ | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ | clipper-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ | m32r-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m88110-* | m88k-* | mcore-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ | mips64vr-* | mips64vrel-* \ | mips64orion-* | mips64orionel-* \ | mips64vr4100-* | mips64vr4100el-* \ | mips64vr4300-* | mips64vr4300el-* \ | mips64vr5000-* | mips64vr5000el-* \ | mipsisa32-* | mipsisa32el-* \ | mipsisa32r2-* | mipsisa32r2el-* \ | mipsisa64-* | mipsisa64el-* \ | mipsisa64r2-* | mipsisa64r2el-* \ | mipsisa64sb1-* | mipsisa64sb1el-* \ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ | mipstx39-* | mipstx39el-* \ | msp430-* \ | none-* | np1-* | nv1-* | ns16k-* | ns32k-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ | pyramid-* \ | romp-* | rs6000-* \ | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \ | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \ | tahoe-* | thumb-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ | tron-* \ | v850-* | v850e-* | vax-* \ | we32k-* \ | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \ | xtensa-* \ | ymp-* \ | z8k-*) ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. 386bsd) basic_machine=i386-unknown os=-bsd ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) basic_machine=m68000-att ;; 3b*) basic_machine=we32k-att ;; a29khif) basic_machine=a29k-amd os=-udi ;; adobe68k) basic_machine=m68010-adobe os=-scout ;; alliant | fx80) basic_machine=fx80-alliant ;; altos | altos3068) basic_machine=m68k-altos ;; am29k) basic_machine=a29k-none os=-bsd ;; amd64) basic_machine=x86_64-pc ;; amdahl) basic_machine=580-amdahl os=-sysv ;; amiga | amiga-*) basic_machine=m68k-unknown ;; amigaos | amigados) basic_machine=m68k-unknown os=-amigaos ;; amigaunix | amix) basic_machine=m68k-unknown os=-sysv4 ;; apollo68) basic_machine=m68k-apollo os=-sysv ;; apollo68bsd) basic_machine=m68k-apollo os=-bsd ;; aux) basic_machine=m68k-apple os=-aux ;; balance) basic_machine=ns32k-sequent os=-dynix ;; c90) basic_machine=c90-cray os=-unicos ;; convex-c1) basic_machine=c1-convex os=-bsd ;; convex-c2) basic_machine=c2-convex os=-bsd ;; convex-c32) basic_machine=c32-convex os=-bsd ;; convex-c34) basic_machine=c34-convex os=-bsd ;; convex-c38) basic_machine=c38-convex os=-bsd ;; cray | j90) basic_machine=j90-cray os=-unicos ;; crds | unos) basic_machine=m68k-crds ;; cris | cris-* | etrax*) basic_machine=cris-axis ;; da30 | da30-*) basic_machine=m68k-da30 ;; decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) basic_machine=mips-dec ;; decsystem10* | dec10*) basic_machine=pdp10-dec os=-tops10 ;; decsystem20* | dec20*) basic_machine=pdp10-dec os=-tops20 ;; delta | 3300 | motorola-3300 | motorola-delta \ | 3300-motorola | delta-motorola) basic_machine=m68k-motorola ;; delta88) basic_machine=m88k-motorola os=-sysv3 ;; dpx20 | dpx20-*) basic_machine=rs6000-bull os=-bosx ;; dpx2* | dpx2*-bull) basic_machine=m68k-bull os=-sysv3 ;; ebmon29k) basic_machine=a29k-amd os=-ebmon ;; elxsi) basic_machine=elxsi-elxsi os=-bsd ;; encore | umax | mmax) basic_machine=ns32k-encore ;; es1800 | OSE68k | ose68k | ose | OSE) basic_machine=m68k-ericsson os=-ose ;; fx2800) basic_machine=i860-alliant ;; genix) basic_machine=ns32k-ns ;; gmicro) basic_machine=tron-gmicro os=-sysv ;; go32) basic_machine=i386-pc os=-go32 ;; h3050r* | hiux*) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; h8300hms) basic_machine=h8300-hitachi os=-hms ;; h8300xray) basic_machine=h8300-hitachi os=-xray ;; h8500hms) basic_machine=h8500-hitachi os=-hms ;; harris) basic_machine=m88k-harris os=-sysv3 ;; hp300-*) basic_machine=m68k-hp ;; hp300bsd) basic_machine=m68k-hp os=-bsd ;; hp300hpux) basic_machine=m68k-hp os=-hpux ;; hp3k9[0-9][0-9] | hp9[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k2[0-9][0-9] | hp9k31[0-9]) basic_machine=m68000-hp ;; hp9k3[2-9][0-9]) basic_machine=m68k-hp ;; hp9k6[0-9][0-9] | hp6[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k7[0-79][0-9] | hp7[0-79][0-9]) basic_machine=hppa1.1-hp ;; hp9k78[0-9] | hp78[0-9]) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[0-9][13679] | hp8[0-9][13679]) basic_machine=hppa1.1-hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) basic_machine=hppa1.0-hp ;; hppa-next) os=-nextstep3 ;; hppaosf) basic_machine=hppa1.1-hp os=-osf ;; hppro) basic_machine=hppa1.1-hp os=-proelf ;; i370-ibm* | ibm*) basic_machine=i370-ibm ;; # I'm not sure what "Sysv32" means. Should this be sysv3.2? i*86v32) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv32 ;; i*86v4*) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv4 ;; i*86v) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv ;; i*86sol2) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-solaris2 ;; i386mach) basic_machine=i386-mach os=-mach ;; i386-vsta | vsta) basic_machine=i386-unknown os=-vsta ;; iris | iris4d) basic_machine=mips-sgi case $os in -irix*) ;; *) os=-irix4 ;; esac ;; isi68 | isi) basic_machine=m68k-isi os=-sysv ;; m88k-omron*) basic_machine=m88k-omron ;; magnum | m3230) basic_machine=mips-mips os=-sysv ;; merlin) basic_machine=ns32k-utek os=-sysv ;; mingw32) basic_machine=i386-pc os=-mingw32 ;; miniframe) basic_machine=m68000-convergent ;; *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) basic_machine=m68k-atari os=-mint ;; mips3*-*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` ;; mips3*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown ;; mmix*) basic_machine=mmix-knuth os=-mmixware ;; monitor) basic_machine=m68k-rom68k os=-coff ;; morphos) basic_machine=powerpc-unknown os=-morphos ;; msdos) basic_machine=i386-pc os=-msdos ;; mvs) basic_machine=i370-ibm os=-mvs ;; ncr3000) basic_machine=i486-ncr os=-sysv4 ;; netbsd386) basic_machine=i386-unknown os=-netbsd ;; netwinder) basic_machine=armv4l-rebel os=-linux ;; news | news700 | news800 | news900) basic_machine=m68k-sony os=-newsos ;; news1000) basic_machine=m68030-sony os=-newsos ;; news-3600 | risc-news) basic_machine=mips-sony os=-newsos ;; necv70) basic_machine=v70-nec os=-sysv ;; next | m*-next ) basic_machine=m68k-next case $os in -nextstep* ) ;; -ns2*) os=-nextstep2 ;; *) os=-nextstep3 ;; esac ;; nh3000) basic_machine=m68k-harris os=-cxux ;; nh[45]000) basic_machine=m88k-harris os=-cxux ;; nindy960) basic_machine=i960-intel os=-nindy ;; mon960) basic_machine=i960-intel os=-mon960 ;; nonstopux) basic_machine=mips-compaq os=-nonstopux ;; np1) basic_machine=np1-gould ;; nv1) basic_machine=nv1-cray os=-unicosmp ;; nsr-tandem) basic_machine=nsr-tandem ;; op50n-* | op60c-*) basic_machine=hppa1.1-oki os=-proelf ;; or32 | or32-*) basic_machine=or32-unknown os=-coff ;; OSE68000 | ose68000) basic_machine=m68000-ericsson os=-ose ;; os68k) basic_machine=m68k-none os=-os68k ;; pa-hitachi) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; paragon) basic_machine=i860-intel os=-osf ;; pbd) basic_machine=sparc-tti ;; pbb) basic_machine=m68k-tti ;; pc532 | pc532-*) basic_machine=ns32k-pc532 ;; pentium | p5 | k5 | k6 | nexgen | viac3) basic_machine=i586-pc ;; pentiumpro | p6 | 6x86 | athlon | athlon_*) basic_machine=i686-pc ;; pentiumii | pentium2 | pentiumiii | pentium3) basic_machine=i686-pc ;; pentium4) basic_machine=i786-pc ;; pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumpro-* | p6-* | 6x86-* | athlon-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentium4-*) basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pn) basic_machine=pn-gould ;; power) basic_machine=power-ibm ;; ppc) basic_machine=powerpc-unknown ;; ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppcle | powerpclittle | ppc-le | powerpc-little) basic_machine=powerpcle-unknown ;; ppcle-* | powerpclittle-*) basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64) basic_machine=powerpc64-unknown ;; ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64le | powerpc64little | ppc64-le | powerpc64-little) basic_machine=powerpc64le-unknown ;; ppc64le-* | powerpc64little-*) basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ps2) basic_machine=i386-ibm ;; pw32) basic_machine=i586-unknown os=-pw32 ;; rom68k) basic_machine=m68k-rom68k os=-coff ;; rm[46]00) basic_machine=mips-siemens ;; rtpc | rtpc-*) basic_machine=romp-ibm ;; s390 | s390-*) basic_machine=s390-ibm ;; s390x | s390x-*) basic_machine=s390x-ibm ;; sa29200) basic_machine=a29k-amd os=-udi ;; sb1) basic_machine=mipsisa64sb1-unknown ;; sb1el) basic_machine=mipsisa64sb1el-unknown ;; sei) basic_machine=mips-sei os=-seiux ;; sequent) basic_machine=i386-sequent ;; sh) basic_machine=sh-hitachi os=-hms ;; sh64) basic_machine=sh64-unknown ;; sparclite-wrs | simso-wrs) basic_machine=sparclite-wrs os=-vxworks ;; sps7) basic_machine=m68k-bull os=-sysv2 ;; spur) basic_machine=spur-unknown ;; st2000) basic_machine=m68k-tandem ;; stratus) basic_machine=i860-stratus os=-sysv4 ;; sun2) basic_machine=m68000-sun ;; sun2os3) basic_machine=m68000-sun os=-sunos3 ;; sun2os4) basic_machine=m68000-sun os=-sunos4 ;; sun3os3) basic_machine=m68k-sun os=-sunos3 ;; sun3os4) basic_machine=m68k-sun os=-sunos4 ;; sun4os3) basic_machine=sparc-sun os=-sunos3 ;; sun4os4) basic_machine=sparc-sun os=-sunos4 ;; sun4sol2) basic_machine=sparc-sun os=-solaris2 ;; sun3 | sun3-*) basic_machine=m68k-sun ;; sun4) basic_machine=sparc-sun ;; sun386 | sun386i | roadrunner) basic_machine=i386-sun ;; sv1) basic_machine=sv1-cray os=-unicos ;; symmetry) basic_machine=i386-sequent os=-dynix ;; t3e) basic_machine=alphaev5-cray os=-unicos ;; t90) basic_machine=t90-cray os=-unicos ;; tic54x | c54x*) basic_machine=tic54x-unknown os=-coff ;; tic55x | c55x*) basic_machine=tic55x-unknown os=-coff ;; tic6x | c6x*) basic_machine=tic6x-unknown os=-coff ;; tx39) basic_machine=mipstx39-unknown ;; tx39el) basic_machine=mipstx39el-unknown ;; toad1) basic_machine=pdp10-xkl os=-tops20 ;; tower | tower-32) basic_machine=m68k-ncr ;; udi29k) basic_machine=a29k-amd os=-udi ;; ultra3) basic_machine=a29k-nyu os=-sym1 ;; v810 | necv810) basic_machine=v810-nec os=-none ;; vaxv) basic_machine=vax-dec os=-sysv ;; vms) basic_machine=vax-dec os=-vms ;; vpp*|vx|vx-*) basic_machine=f301-fujitsu ;; vxworks960) basic_machine=i960-wrs os=-vxworks ;; vxworks68) basic_machine=m68k-wrs os=-vxworks ;; vxworks29k) basic_machine=a29k-wrs os=-vxworks ;; w65*) basic_machine=w65-wdc os=-none ;; w89k-*) basic_machine=hppa1.1-winbond os=-proelf ;; xps | xps100) basic_machine=xps100-honeywell ;; ymp) basic_machine=ymp-cray os=-unicos ;; z8k-*-coff) basic_machine=z8k-unknown os=-sim ;; none) basic_machine=none-none os=-none ;; # Here we handle the default manufacturer of certain CPU types. It is in # some cases the only manufacturer, in others, it is the most popular. w89k) basic_machine=hppa1.1-winbond ;; op50n) basic_machine=hppa1.1-oki ;; op60c) basic_machine=hppa1.1-oki ;; romp) basic_machine=romp-ibm ;; rs6000) basic_machine=rs6000-ibm ;; vax) basic_machine=vax-dec ;; pdp10) # there are many clones, so DEC is not a safe bet basic_machine=pdp10-unknown ;; pdp11) basic_machine=pdp11-dec ;; we32k) basic_machine=we32k-att ;; sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) basic_machine=sh-unknown ;; sh64) basic_machine=sh64-unknown ;; sparc | sparcv9 | sparcv9b) basic_machine=sparc-sun ;; cydra) basic_machine=cydra-cydrome ;; orion) basic_machine=orion-highlevel ;; orion105) basic_machine=clipper-highlevel ;; mac | mpw | mac-mpw) basic_machine=m68k-apple ;; pmac | pmac-mpw) basic_machine=powerpc-apple ;; *-unknown) # Make sure to match an already-canonicalized machine name. ;; *) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; esac # Here we canonicalize certain aliases for manufacturers. case $basic_machine in *-digital*) basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` ;; *-commodore*) basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` ;; *) ;; esac # Decode manufacturer-specific aliases for certain operating systems. if [ x"$os" != x"" ] then case $os in # First match some system type aliases # that might get confused with valid system types. # -solaris* is a basic system type, with this one exception. -solaris1 | -solaris1.*) os=`echo $os | sed -e 's|solaris1|sunos4|'` ;; -solaris) os=-solaris2 ;; -svr4*) os=-sysv4 ;; -unixware*) os=-sysv4.2uw ;; -gnu/linux*) os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` ;; # First accept the basic system types. # The portable systems comes first. # Each alternative MUST END IN A *, to match a version number. # -sysv* is not here because it comes later, after sysvr4. -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ | -aos* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -netbsd* | -openbsd* | -kfreebsd* | -freebsd* | -riscix* \ | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) case $basic_machine in x86-* | i*86-*) ;; *) os=-nto$os ;; esac ;; -nto-qnx*) ;; -nto*) os=`echo $os | sed -e 's|nto|nto-qnx|'` ;; -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) ;; -mac*) os=`echo $os | sed -e 's|mac|macos|'` ;; -linux-dietlibc) os=-linux-dietlibc ;; -linux*) os=`echo $os | sed -e 's|linux|linux-gnu|'` ;; -sunos5*) os=`echo $os | sed -e 's|sunos5|solaris2|'` ;; -sunos6*) os=`echo $os | sed -e 's|sunos6|solaris3|'` ;; -opened*) os=-openedition ;; -wince*) os=-wince ;; -osfrose*) os=-osfrose ;; -osf*) os=-osf ;; -utek*) os=-bsd ;; -dynix*) os=-bsd ;; -acis*) os=-aos ;; -atheos*) os=-atheos ;; -386bsd) os=-bsd ;; -ctix* | -uts*) os=-sysv ;; -nova*) os=-rtmk-nova ;; -ns2 ) os=-nextstep2 ;; -nsk*) os=-nsk ;; # Preserve the version number of sinix5. -sinix5.*) os=`echo $os | sed -e 's|sinix|sysv|'` ;; -sinix*) os=-sysv4 ;; -triton*) os=-sysv3 ;; -oss*) os=-sysv3 ;; -svr4) os=-sysv4 ;; -svr3) os=-sysv3 ;; -sysvr4) os=-sysv4 ;; # This must come after -sysvr4. -sysv*) ;; -ose*) os=-ose ;; -es1800*) os=-ose ;; -xenix) os=-xenix ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) os=-mint ;; -aros*) os=-aros ;; -kaos*) os=-kaos ;; -none) ;; *) # Get rid of the `-' at the beginning of $os. os=`echo $os | sed 's/[^-]*-//'` echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 exit 1 ;; esac else # Here we handle the default operating systems that come with various machines. # The value should be what the vendor currently ships out the door with their # machine or put another way, the most popular os provided with the machine. # Note that if you're going to try to match "-MANUFACTURER" here (say, # "-sun"), then you have to tell the case statement up towards the top # that MANUFACTURER isn't an operating system. Otherwise, code above # will signal an error saying that MANUFACTURER isn't an operating # system, and we'll never get to this point. case $basic_machine in *-acorn) os=-riscix1.2 ;; arm*-rebel) os=-linux ;; arm*-semi) os=-aout ;; c4x-* | tic4x-*) os=-coff ;; # This must come before the *-dec entry. pdp10-*) os=-tops20 ;; pdp11-*) os=-none ;; *-dec | vax-*) os=-ultrix4.2 ;; m68*-apollo) os=-domain ;; i386-sun) os=-sunos4.0.2 ;; m68000-sun) os=-sunos3 # This also exists in the configure program, but was not the # default. # os=-sunos4 ;; m68*-cisco) os=-aout ;; mips*-cisco) os=-elf ;; mips*-*) os=-elf ;; or32-*) os=-coff ;; *-tti) # must be before sparc entry or we get the wrong os. os=-sysv3 ;; sparc-* | *-sun) os=-sunos4.1.1 ;; *-be) os=-beos ;; *-ibm) os=-aix ;; *-wec) os=-proelf ;; *-winbond) os=-proelf ;; *-oki) os=-proelf ;; *-hp) os=-hpux ;; *-hitachi) os=-hiux ;; i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) os=-sysv ;; *-cbm) os=-amigaos ;; *-dg) os=-dgux ;; *-dolphin) os=-sysv3 ;; m68k-ccur) os=-rtu ;; m88k-omron*) os=-luna ;; *-next ) os=-nextstep ;; *-sequent) os=-ptx ;; *-crds) os=-unos ;; *-ns) os=-genix ;; i370-*) os=-mvs ;; *-next) os=-nextstep3 ;; *-gould) os=-sysv ;; *-highlevel) os=-bsd ;; *-encore) os=-bsd ;; *-sgi) os=-irix ;; *-siemens) os=-sysv4 ;; *-masscomp) os=-rtu ;; f30[01]-fujitsu | f700-fujitsu) os=-uxpv ;; *-rom68k) os=-coff ;; *-*bug) os=-coff ;; *-apple) os=-macos ;; *-atari*) os=-mint ;; *) os=-none ;; esac fi # Here we handle the case where we know the os, and the CPU type, but not the # manufacturer. We pick the logical manufacturer. vendor=unknown case $basic_machine in *-unknown) case $os in -riscix*) vendor=acorn ;; -sunos*) vendor=sun ;; -aix*) vendor=ibm ;; -beos*) vendor=be ;; -hpux*) vendor=hp ;; -mpeix*) vendor=hp ;; -hiux*) vendor=hitachi ;; -unos*) vendor=crds ;; -dgux*) vendor=dg ;; -luna*) vendor=omron ;; -genix*) vendor=ns ;; -mvs* | -opened*) vendor=ibm ;; -ptx*) vendor=sequent ;; -vxsim* | -vxworks* | -windiss*) vendor=wrs ;; -aux*) vendor=apple ;; -hms*) vendor=hitachi ;; -mpw* | -macos*) vendor=apple ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) vendor=atari ;; -vos*) vendor=stratus ;; esac basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` ;; esac echo $basic_machine$os exit 0 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: arpwatch-2.1a15/configure0100775000177400000340000056341110446326346014641 0ustar leressunsrc#! /bin/sh # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.59. # # Copyright (C) 2003 Free Software Foundation, Inc. # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## --------------------- ## ## M4sh Initialization. ## ## --------------------- ## # Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then set -o posix fi DUALCASE=1; export DUALCASE # for MKS sh # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false fi # Work around bugs in pre-3.0 UWIN ksh. $as_unset ENV MAIL MAILPATH PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. for as_var in \ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ LC_TELEPHONE LC_TIME do if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else $as_unset $as_var fi done # Required to use basename. if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi # Name of the executable. as_me=`$as_basename "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)$' \| \ . : '\(.\)' 2>/dev/null || echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } /^X\/\(\/\/\)$/{ s//\1/; q; } /^X\/\(\/\).*/{ s//\1/; q; } s/.*/./; q'` # PATH needs CR, and LINENO needs CR and PATH. # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" || { # Find who we are. Look in the path if we contain no path at all # relative or not. case $0 in *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 { (exit 1); exit 1; }; } fi case $CONFIG_SHELL in '') as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for as_base in sh bash ksh sh5; do case $as_dir in /*) if ("$as_dir/$as_base" -c ' as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } CONFIG_SHELL=$as_dir/$as_base export CONFIG_SHELL exec "$CONFIG_SHELL" "$0" ${1+"$@"} fi;; esac done done ;; esac # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a # line-number line before each line; the second 'sed' does the real # work. The second script uses 'N' to pair each line-number line # with the numbered line, and appends trailing '-' during # substitution so that $LINENO is not a special case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) sed '=' <$as_myself | sed ' N s,$,-, : loop s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, t loop s,-$,, s,^['$as_cr_digits']*\n,, ' >$as_me.lineno && chmod +x $as_me.lineno || { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 { (exit 1); exit 1; }; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensible to this). . ./$as_me.lineno # Exit status is that of the last command. exit } case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in *c*,-n*) ECHO_N= ECHO_C=' ' ECHO_T=' ' ;; *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; *) ECHO_N= ECHO_C='\c' ECHO_T= ;; esac if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi rm -f conf$$ conf$$.exe conf$$.file echo >conf$$.file if ln -s conf$$.file conf$$ 2>/dev/null; then # We could just check for DJGPP; but this test a) works b) is more generic # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). if test -f conf$$.exe; then # Don't use ln at all; we don't have any links as_ln_s='cp -p' else as_ln_s='ln -s' fi elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.file if mkdir -p . 2>/dev/null; then as_mkdir_p=: else test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_executable_p="test -f" # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" # IFS # We need space, tab and new line, in precisely that order. as_nl=' ' IFS=" $as_nl" # CDPATH. $as_unset CDPATH # Name of the host. # hostname on some systems (SVR3.2, Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` exec 6>&1 # # Initializations. # ac_default_prefix=/usr/local ac_config_libobj_dir=. cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= SHELL=${CONFIG_SHELL-/bin/sh} # Maximum number of lines to put in a shell here document. # This variable seems obsolete. It should probably be removed, and # only ac_max_sed_lines should be used. : ${ac_max_here_lines=38} # Identity of this package. PACKAGE_NAME= PACKAGE_TARNAME= PACKAGE_VERSION= PACKAGE_STRING= PACKAGE_BUGREPORT= ac_unique_file="arpwatch.c" # Factoring default headers for most tests. ac_includes_default="\ #include #if HAVE_SYS_TYPES_H # include #endif #if HAVE_SYS_STAT_H # include #endif #if STDC_HEADERS # include # include #else # if HAVE_STDLIB_H # include # endif #endif #if HAVE_STRING_H # if !STDC_HEADERS && HAVE_MEMORY_H # include # endif # include #endif #if HAVE_STRINGS_H # include #endif #if HAVE_INTTYPES_H # include #else # if HAVE_STDINT_H # include # endif #endif #if HAVE_UNISTD_H # include #endif" ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os SHLICC2 CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP LIBOBJS V_SENDMAIL V_CCOPT V_INCLS V_PCAPDEP LBL_LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. ac_init_help= ac_init_version=false # The variables have the same names as the options, with # dashes changed to underlines. cache_file=/dev/null exec_prefix=NONE no_create= no_recursion= prefix=NONE program_prefix=NONE program_suffix=NONE program_transform_name=s,x,x, silent= site= srcdir= verbose= x_includes=NONE x_libraries=NONE # Installation directory options. # These are left unexpanded so users can "make install exec_prefix=/foo" # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' datadir='${prefix}/share' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' libdir='${exec_prefix}/lib' includedir='${prefix}/include' oldincludedir='/usr/include' infodir='${prefix}/info' mandir='${prefix}/man' ac_prev= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then eval "$ac_prev=\$ac_option" ac_prev= continue fi ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` # Accept the important Cygnus configure options, so we can diagnose typos. case $ac_option in -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) bindir=$ac_optarg ;; -build | --build | --buil | --bui | --bu) ac_prev=build_alias ;; -build=* | --build=* | --buil=* | --bui=* | --bu=*) build_alias=$ac_optarg ;; -cache-file | --cache-file | --cache-fil | --cache-fi \ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ac_prev=cache_file ;; -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) cache_file=$ac_optarg ;; --config-cache | -C) cache_file=config.cache ;; -datadir | --datadir | --datadi | --datad | --data | --dat | --da) ac_prev=datadir ;; -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ | --da=*) datadir=$ac_optarg ;; -disable-* | --disable-*) ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/-/_/g'` eval "enable_$ac_feature=no" ;; -enable-* | --enable-*) ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/-/_/g'` case $ac_option in *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; *) ac_optarg=yes ;; esac eval "enable_$ac_feature='$ac_optarg'" ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | --exec | --exe | --ex) ac_prev=exec_prefix ;; -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | --exec=* | --exe=* | --ex=*) exec_prefix=$ac_optarg ;; -gas | --gas | --ga | --g) # Obsolete; use --with-gas. with_gas=yes ;; -help | --help | --hel | --he | -h) ac_init_help=long ;; -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) ac_init_help=recursive ;; -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) ac_init_help=short ;; -host | --host | --hos | --ho) ac_prev=host_alias ;; -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | --includ=* | --inclu=* | --incl=* | --inc=*) includedir=$ac_optarg ;; -infodir | --infodir | --infodi | --infod | --info | --inf) ac_prev=infodir ;; -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) infodir=$ac_optarg ;; -libdir | --libdir | --libdi | --libd) ac_prev=libdir ;; -libdir=* | --libdir=* | --libdi=* | --libd=*) libdir=$ac_optarg ;; -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | --libexe | --libex | --libe) ac_prev=libexecdir ;; -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; -localstatedir | --localstatedir | --localstatedi | --localstated \ | --localstate | --localstat | --localsta | --localst \ | --locals | --local | --loca | --loc | --lo) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | --localstate=* | --localstat=* | --localsta=* | --localst=* \ | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) ac_prev=mandir ;; -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) mandir=$ac_optarg ;; -nfp | --nfp | --nf) # Obsolete; use --without-fp. with_fp=no ;; -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | --no-cr | --no-c | -n) no_create=yes ;; -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) no_recursion=yes ;; -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | --oldin | --oldi | --old | --ol | --o) ac_prev=oldincludedir ;; -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) oldincludedir=$ac_optarg ;; -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) prefix=$ac_optarg ;; -program-prefix | --program-prefix | --program-prefi | --program-pref \ | --program-pre | --program-pr | --program-p) ac_prev=program_prefix ;; -program-prefix=* | --program-prefix=* | --program-prefi=* \ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) program_prefix=$ac_optarg ;; -program-suffix | --program-suffix | --program-suffi | --program-suff \ | --program-suf | --program-su | --program-s) ac_prev=program_suffix ;; -program-suffix=* | --program-suffix=* | --program-suffi=* \ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) program_suffix=$ac_optarg ;; -program-transform-name | --program-transform-name \ | --program-transform-nam | --program-transform-na \ | --program-transform-n | --program-transform- \ | --program-transform | --program-transfor \ | --program-transfo | --program-transf \ | --program-trans | --program-tran \ | --progr-tra | --program-tr | --program-t) ac_prev=program_transform_name ;; -program-transform-name=* | --program-transform-name=* \ | --program-transform-nam=* | --program-transform-na=* \ | --program-transform-n=* | --program-transform-=* \ | --program-transform=* | --program-transfor=* \ | --program-transfo=* | --program-transf=* \ | --program-trans=* | --program-tran=* \ | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | --sbi=* | --sb=*) sbindir=$ac_optarg ;; -sharedstatedir | --sharedstatedir | --sharedstatedi \ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | --sharedst | --shareds | --shared | --share | --shar \ | --sha | --sh) ac_prev=sharedstatedir ;; -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | --sha=* | --sh=*) sharedstatedir=$ac_optarg ;; -site | --site | --sit) ac_prev=site ;; -site=* | --site=* | --sit=*) site=$ac_optarg ;; -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ac_prev=srcdir ;; -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) srcdir=$ac_optarg ;; -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | --syscon | --sysco | --sysc | --sys | --sy) ac_prev=sysconfdir ;; -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) sysconfdir=$ac_optarg ;; -target | --target | --targe | --targ | --tar | --ta | --t) ac_prev=target_alias ;; -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) target_alias=$ac_optarg ;; -v | -verbose | --verbose | --verbos | --verbo | --verb) verbose=yes ;; -version | --version | --versio | --versi | --vers | -V) ac_init_version=: ;; -with-* | --with-*) ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package| sed 's/-/_/g'` case $ac_option in *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; *) ac_optarg=yes ;; esac eval "with_$ac_package='$ac_optarg'" ;; -without-* | --without-*) ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package | sed 's/-/_/g'` eval "with_$ac_package=no" ;; --x) # Obsolete; use --with-x. with_x=yes ;; -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | --x-incl | --x-inc | --x-in | --x-i) ac_prev=x_includes ;; -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) x_includes=$ac_optarg ;; -x-libraries | --x-libraries | --x-librarie | --x-librari \ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) ac_prev=x_libraries ;; -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; -*) { echo "$as_me: error: unrecognized option: $ac_option Try \`$0 --help' for more information." >&2 { (exit 1); exit 1; }; } ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 { (exit 1); exit 1; }; } ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` eval "$ac_envvar='$ac_optarg'" export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && echo "$as_me: WARNING: invalid host type: $ac_option" >&2 : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} ;; esac done if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` { echo "$as_me: error: missing argument to $ac_option" >&2 { (exit 1); exit 1; }; } fi # Be sure to have absolute paths. for ac_var in exec_prefix prefix do eval ac_val=$`echo $ac_var` case $ac_val in [\\/$]* | ?:[\\/]* | NONE | '' ) ;; *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 { (exit 1); exit 1; }; };; esac done # Be sure to have absolute paths. for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ localstatedir libdir includedir oldincludedir infodir mandir do eval ac_val=$`echo $ac_var` case $ac_val in [\\/$]* | ?:[\\/]* ) ;; *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 { (exit 1); exit 1; }; };; esac done # There might be people who depend on the old broken behavior: `$host' # used to hold the argument of --host etc. # FIXME: To remove some day. build=$build_alias host=$host_alias target=$target_alias # FIXME: To remove some day. if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used." >&2 elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi fi ac_tool_prefix= test -n "$host_alias" && ac_tool_prefix=$host_alias- test "$silent" = yes && exec 6>/dev/null # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then its parent. ac_confdir=`(dirname "$0") 2>/dev/null || $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$0" : 'X\(//\)[^/]' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$0" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` srcdir=$ac_confdir if test ! -r $srcdir/$ac_unique_file; then srcdir=.. fi else ac_srcdir_defaulted=no fi if test ! -r $srcdir/$ac_unique_file; then if test "$ac_srcdir_defaulted" = yes; then { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 { (exit 1); exit 1; }; } else { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 { (exit 1); exit 1; }; } fi fi (cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 { (exit 1); exit 1; }; } srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` ac_env_build_alias_set=${build_alias+set} ac_env_build_alias_value=$build_alias ac_cv_env_build_alias_set=${build_alias+set} ac_cv_env_build_alias_value=$build_alias ac_env_host_alias_set=${host_alias+set} ac_env_host_alias_value=$host_alias ac_cv_env_host_alias_set=${host_alias+set} ac_cv_env_host_alias_value=$host_alias ac_env_target_alias_set=${target_alias+set} ac_env_target_alias_value=$target_alias ac_cv_env_target_alias_set=${target_alias+set} ac_cv_env_target_alias_value=$target_alias ac_env_CC_set=${CC+set} ac_env_CC_value=$CC ac_cv_env_CC_set=${CC+set} ac_cv_env_CC_value=$CC ac_env_CFLAGS_set=${CFLAGS+set} ac_env_CFLAGS_value=$CFLAGS ac_cv_env_CFLAGS_set=${CFLAGS+set} ac_cv_env_CFLAGS_value=$CFLAGS ac_env_LDFLAGS_set=${LDFLAGS+set} ac_env_LDFLAGS_value=$LDFLAGS ac_cv_env_LDFLAGS_set=${LDFLAGS+set} ac_cv_env_LDFLAGS_value=$LDFLAGS ac_env_CPPFLAGS_set=${CPPFLAGS+set} ac_env_CPPFLAGS_value=$CPPFLAGS ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} ac_cv_env_CPPFLAGS_value=$CPPFLAGS ac_env_CPP_set=${CPP+set} ac_env_CPP_value=$CPP ac_cv_env_CPP_set=${CPP+set} ac_cv_env_CPP_value=$CPP # # Report the --help message. # if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF \`configure' configures this package to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print \`checking...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for \`--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] _ACEOF cat <<_ACEOF Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify an installation prefix other than \`$ac_default_prefix' using \`--prefix', for instance \`--prefix=\$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --datadir=DIR read-only architecture-independent data [PREFIX/share] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --infodir=DIR info documentation [PREFIX/info] --mandir=DIR man documentation [PREFIX/man] _ACEOF cat <<\_ACEOF System types: --build=BUILD configure for building on BUILD [guessed] --host=HOST cross-compile to build programs to run on HOST [BUILD] --target=TARGET configure for building compilers for TARGET [HOST] _ACEOF fi if test -n "$ac_init_help"; then cat <<\_ACEOF Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --without-gcc don't use gcc Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory CPP C preprocessor Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. _ACEOF fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. ac_popdir=`pwd` for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue test -d $ac_dir || continue ac_builddir=. if test "$ac_dir" != .; then ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` # A "../" for each directory in $ac_dir_suffix. ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` else ac_dir_suffix= ac_top_builddir= fi case $srcdir in .) # No --srcdir option. We are building in place. ac_srcdir=. if test -z "$ac_top_builddir"; then ac_top_srcdir=. else ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` fi ;; [\\/]* | ?:[\\/]* ) # Absolute path. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ;; *) # Relative path. ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_builddir$srcdir ;; esac # Do not use `cd foo && pwd` to compute absolute paths, because # the directories may not exist. case `pwd` in .) ac_abs_builddir="$ac_dir";; *) case "$ac_dir" in .) ac_abs_builddir=`pwd`;; [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; *) ac_abs_builddir=`pwd`/"$ac_dir";; esac;; esac case $ac_abs_builddir in .) ac_abs_top_builddir=${ac_top_builddir}.;; *) case ${ac_top_builddir}. in .) ac_abs_top_builddir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; esac;; esac case $ac_abs_builddir in .) ac_abs_srcdir=$ac_srcdir;; *) case $ac_srcdir in .) ac_abs_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; esac;; esac case $ac_abs_builddir in .) ac_abs_top_srcdir=$ac_top_srcdir;; *) case $ac_top_srcdir in .) ac_abs_top_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; esac;; esac cd $ac_dir # Check for guested configure; otherwise get Cygnus style configure. if test -f $ac_srcdir/configure.gnu; then echo $SHELL $ac_srcdir/configure.gnu --help=recursive elif test -f $ac_srcdir/configure; then echo $SHELL $ac_srcdir/configure --help=recursive elif test -f $ac_srcdir/configure.ac || test -f $ac_srcdir/configure.in; then echo $ac_configure --help else echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi cd $ac_popdir done fi test -n "$ac_init_help" && exit 0 if $ac_init_version; then cat <<\_ACEOF Copyright (C) 2003 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF exit 0 fi exec 5>config.log cat >&5 <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by $as_me, which was generated by GNU Autoconf 2.59. Invocation command line was $ $0 $@ _ACEOF { cat <<_ASUNAME ## --------- ## ## Platform. ## ## --------- ## hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` hostinfo = `(hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` _ASUNAME as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. echo "PATH: $as_dir" done } >&5 cat >&5 <<_ACEOF ## ----------- ## ## Core tests. ## ## ----------- ## _ACEOF # Keep a trace of the command line. # Strip out --no-create and --no-recursion so they do not pile up. # Strip out --silent because we don't want to record it for future runs. # Also quote any args containing shell meta-characters. # Make two passes to allow for proper duplicate-argument suppression. ac_configure_args= ac_configure_args0= ac_configure_args1= ac_sep= ac_must_keep_next=false for ac_pass in 1 2 do for ac_arg do case $ac_arg in -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; 2) ac_configure_args1="$ac_configure_args1 '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else case $ac_arg in *=* | --config-cache | -C | -disable-* | --disable-* \ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ | -with-* | --with-* | -without-* | --without-* | --x) case "$ac_configure_args0 " in "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; esac ;; -* ) ac_must_keep_next=true ;; esac fi ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" # Get rid of the leading space. ac_sep=" " ;; esac done done $as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } $as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. # WARNING: Be sure not to use single quotes in there, as some shells, # such as our DU 5.0 friend, will then `close' the trap. trap 'exit_status=$? # Save into config.log some information that might help in debugging. { echo cat <<\_ASBOX ## ---------------- ## ## Cache variables. ## ## ---------------- ## _ASBOX echo # The following way of writing the cache mishandles newlines in values, { (set) 2>&1 | case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in *ac_space=\ *) sed -n \ "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" ;; *) sed -n \ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" ;; esac; } echo cat <<\_ASBOX ## ----------------- ## ## Output variables. ## ## ----------------- ## _ASBOX echo for ac_var in $ac_subst_vars do eval ac_val=$`echo $ac_var` echo "$ac_var='"'"'$ac_val'"'"'" done | sort echo if test -n "$ac_subst_files"; then cat <<\_ASBOX ## ------------- ## ## Output files. ## ## ------------- ## _ASBOX echo for ac_var in $ac_subst_files do eval ac_val=$`echo $ac_var` echo "$ac_var='"'"'$ac_val'"'"'" done | sort echo fi if test -s confdefs.h; then cat <<\_ASBOX ## ----------- ## ## confdefs.h. ## ## ----------- ## _ASBOX echo sed "/^$/d" confdefs.h | sort echo fi test "$ac_signal" != 0 && echo "$as_me: caught signal $ac_signal" echo "$as_me: exit $exit_status" } >&5 rm -f core *.core && rm -rf conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 for ac_signal in 1 2 13 15; do trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -rf conftest* confdefs.h # AIX cpp loses on an empty file, so make sure it contains at least a newline. echo >confdefs.h # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF # Let the site file select an alternate cache file if it wants to. # Prefer explicitly selected file to automatically selected ones. if test -z "$CONFIG_SITE"; then if test "x$prefix" != xNONE; then CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" else CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" fi fi for ac_site_file in $CONFIG_SITE; do if test -r "$ac_site_file"; then { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" fi done if test -r "$cache_file"; then # Some versions of bash will fail to source /dev/null (special # files actually), so we avoid doing that. if test -f "$cache_file"; then { echo "$as_me:$LINENO: loading cache $cache_file" >&5 echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . $cache_file;; *) . ./$cache_file;; esac fi else { echo "$as_me:$LINENO: creating cache $cache_file" >&5 echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false for ac_var in `(set) 2>&1 | sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val="\$ac_cv_env_${ac_var}_value" eval ac_new_val="\$ac_env_${ac_var}_value" case $ac_old_set,$ac_new_set in set,) { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 echo "$as_me: former value: $ac_old_val" >&2;} { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 echo "$as_me: current value: $ac_new_val" >&2;} ac_cache_corrupted=: fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 echo "$as_me: error: changes in the environment can compromise the build" >&2;} { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} { (exit 1); exit 1; }; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_aux_dir= for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do if test -f $ac_dir/install-sh; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install-sh -c" break elif test -f $ac_dir/install.sh; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install.sh -c" break elif test -f $ac_dir/shtool; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/shtool install -c" break fi done if test -z "$ac_aux_dir"; then { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;} { (exit 1); exit 1; }; } fi ac_config_guess="$SHELL $ac_aux_dir/config.guess" ac_config_sub="$SHELL $ac_aux_dir/config.sub" ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. # Make sure we can run config.sub. $ac_config_sub sun4 >/dev/null 2>&1 || { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 echo "$as_me: error: cannot run $ac_config_sub" >&2;} { (exit 1); exit 1; }; } echo "$as_me:$LINENO: checking build system type" >&5 echo $ECHO_N "checking build system type... $ECHO_C" >&6 if test "${ac_cv_build+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_build_alias=$build_alias test -z "$ac_cv_build_alias" && ac_cv_build_alias=`$ac_config_guess` test -z "$ac_cv_build_alias" && { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 echo "$as_me: error: cannot guess build type; you must specify one" >&2;} { (exit 1); exit 1; }; } ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} { (exit 1); exit 1; }; } fi echo "$as_me:$LINENO: result: $ac_cv_build" >&5 echo "${ECHO_T}$ac_cv_build" >&6 build=$ac_cv_build build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` echo "$as_me:$LINENO: checking host system type" >&5 echo $ECHO_N "checking host system type... $ECHO_C" >&6 if test "${ac_cv_host+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_host_alias=$host_alias test -z "$ac_cv_host_alias" && ac_cv_host_alias=$ac_cv_build_alias ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} { (exit 1); exit 1; }; } fi echo "$as_me:$LINENO: result: $ac_cv_host" >&5 echo "${ECHO_T}$ac_cv_host" >&6 host=$ac_cv_host host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` echo "$as_me:$LINENO: checking target system type" >&5 echo $ECHO_N "checking target system type... $ECHO_C" >&6 if test "${ac_cv_target+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_target_alias=$target_alias test "x$ac_cv_target_alias" = "x" && ac_cv_target_alias=$ac_cv_host_alias ac_cv_target=`$ac_config_sub $ac_cv_target_alias` || { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_target_alias failed" >&5 echo "$as_me: error: $ac_config_sub $ac_cv_target_alias failed" >&2;} { (exit 1); exit 1; }; } fi echo "$as_me:$LINENO: result: $ac_cv_target" >&5 echo "${ECHO_T}$ac_cv_target" >&6 target=$ac_cv_target target_cpu=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` target_vendor=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` target_os=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` # The aliases save the names the user supplied, while $host etc. # will get canonicalized. test -n "$target_alias" && test "$program_prefix$program_suffix$program_transform_name" = \ NONENONEs,x,x, && program_prefix=${target_alias}- umask 002 if test -z "$PWD" ; then PWD=`pwd` fi # Check whether --with-gcc or --without-gcc was given. if test "${with_gcc+set}" = set; then withval="$with_gcc" fi; V_CCOPT="-O" V_INCLS="" if test "${srcdir}" != "." ; then V_INCLS="-I\$\(srcdir\)" fi if test "${CFLAGS+set}" = set; then LBL_CFLAGS="$CFLAGS" fi if test -z "$CC" ; then case "$target_os" in bsdi*) # Extract the first word of "shlicc2", so it can be a program name with args. set dummy shlicc2; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_SHLICC2+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$SHLICC2"; then ac_cv_prog_SHLICC2="$SHLICC2" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_SHLICC2="yes" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_prog_SHLICC2" && ac_cv_prog_SHLICC2="no" fi fi SHLICC2=$ac_cv_prog_SHLICC2 if test -n "$SHLICC2"; then echo "$as_me:$LINENO: result: $SHLICC2" >&5 echo "${ECHO_T}$SHLICC2" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi if test $SHLICC2 = yes ; then CC=shlicc2 export CC fi ;; esac fi if test -z "$CC" -a "$with_gcc" = no ; then CC=cc export CC fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi CC=$ac_ct_CC else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi CC=$ac_ct_CC else CC="$ac_cv_prog_CC" fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$ac_ct_CC" && break done CC=$ac_ct_CC fi fi test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&5 echo "$as_me: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } # Provide some information about the compiler. echo "$as_me:$LINENO:" \ "checking for C compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` { (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 (eval $ac_compiler --version &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 (eval $ac_compiler -v &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 (eval $ac_compiler -V &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files a.out a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 (eval $ac_link_default) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then # Find the output, starting from the most likely. This scheme is # not robust to junk in `.', hence go to wildcards (a.*) only as a last # resort. # Be careful to initialize this variable, since it used to be cached. # Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. ac_cv_exeext= # b.out is created by i960 compilers. for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; conftest.$ac_ext ) # This is the source file. ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` # FIXME: I believe we export ac_cv_exeext for Libtool, # but it would be cool to find out if it's true. Does anybody # maintain Libtool? --akim. export ac_cv_exeext break;; * ) break;; esac done else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { echo "$as_me:$LINENO: error: C compiler cannot create executables See \`config.log' for more details." >&5 echo "$as_me: error: C compiler cannot create executables See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } fi ac_exeext=$ac_cv_exeext echo "$as_me:$LINENO: result: $ac_file" >&5 echo "${ECHO_T}$ac_file" >&6 # Check the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. echo "$as_me:$LINENO: checking whether the C compiler works" >&5 echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 # FIXME: These cross compiler hacks should be removed for Autoconf 3.0 # If not cross compiling, check that we can run a simple program. if test "$cross_compiling" != yes; then if { ac_try='./$ac_file' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else { { echo "$as_me:$LINENO: error: cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." >&5 echo "$as_me: error: cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi fi fi echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 rm -f a.out a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save # Check the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 echo "$as_me:$LINENO: result: $cross_compiling" >&5 echo "${ECHO_T}$cross_compiling" >&6 echo "$as_me:$LINENO: checking for suffix of executables" >&5 echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with # `rm'. for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` export ac_cv_exeext break;; * ) break;; esac done else { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi rm -f conftest$ac_cv_exeext echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 echo "${ECHO_T}$ac_cv_exeext" >&6 rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT echo "$as_me:$LINENO: checking for suffix of object files" >&5 echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 if test "${ac_cv_objext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.o conftest.obj if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute suffix of object files: cannot compile See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 echo "${ECHO_T}$ac_cv_objext" >&6 OBJEXT=$ac_cv_objext ac_objext=$OBJEXT echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 if test "${ac_cv_c_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_compiler_gnu=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 GCC=`test $ac_compiler_gnu = yes && echo yes` ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS CFLAGS="-g" echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 if test "${ac_cv_prog_cc_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_prog_cc_g=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 if test "${ac_cv_prog_cc_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_prog_cc_stdc=no ac_save_CC=$CC cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std1 is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std1. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF # Don't try gcc -ansi; that turns off useful extensions and # breaks some systems' header files. # AIX -qlanglvl=ansi # Ultrix and OSF/1 -std1 # HP-UX 10.20 and later -Ae # HP-UX older versions -Aa -D_HPUX_SOURCE # SVR4 -Xc -D__EXTENSIONS__ for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_stdc=$ac_arg break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext done rm -f conftest.$ac_ext conftest.$ac_objext CC=$ac_save_CC fi case "x$ac_cv_prog_cc_stdc" in x|xno) echo "$as_me:$LINENO: result: none needed" >&5 echo "${ECHO_T}none needed" >&6 ;; *) echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 CC="$CC $ac_cv_prog_cc_stdc" ;; esac # Some people use a C++ compiler to compile C. Since we use `exit', # in C++ we need to declare it. In case someone uses the same compiler # for both compiling C and C++ we need to have the C++ compiler decide # the declaration of exit, since it's the most demanding environment. cat >conftest.$ac_ext <<_ACEOF #ifndef __cplusplus choke me #endif _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then for ac_declaration in \ '' \ 'extern "C" void std::exit (int) throw (); using std::exit;' \ 'extern "C" void std::exit (int); using std::exit;' \ 'extern "C" void exit (int) throw ();' \ 'extern "C" void exit (int);' \ 'void exit (int);' do cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration #include int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 continue fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext done rm -f conftest* if test -n "$ac_declaration"; then echo '#ifdef __cplusplus' >>confdefs.h echo $ac_declaration >>confdefs.h echo '#endif' >>confdefs.h fi else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test "$GCC" != yes ; then echo "$as_me:$LINENO: checking that $CC handles ansi prototypes" >&5 echo $ECHO_N "checking that $CC handles ansi prototypes... $ECHO_C" >&6 if test "${ac_cv_lbl_cc_ansi_prototypes+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { int frob(int, char *) ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lbl_cc_ansi_prototypes=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lbl_cc_ansi_prototypes=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_lbl_cc_ansi_prototypes" >&5 echo "${ECHO_T}$ac_cv_lbl_cc_ansi_prototypes" >&6 if test $ac_cv_lbl_cc_ansi_prototypes = no ; then case "$target_os" in hpux*) echo "$as_me:$LINENO: checking for HP-UX ansi compiler ($CC -Aa -D_HPUX_SOURCE)" >&5 echo $ECHO_N "checking for HP-UX ansi compiler ($CC -Aa -D_HPUX_SOURCE)... $ECHO_C" >&6 savedcflags="$CFLAGS" CFLAGS="-Aa -D_HPUX_SOURCE $CFLAGS" if test "${ac_cv_lbl_cc_hpux_cc_aa+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { int frob(int, char *) ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lbl_cc_hpux_cc_aa=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lbl_cc_hpux_cc_aa=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_lbl_cc_hpux_cc_aa" >&5 echo "${ECHO_T}$ac_cv_lbl_cc_hpux_cc_aa" >&6 if test $ac_cv_lbl_cc_hpux_cc_aa = no ; then { { echo "$as_me:$LINENO: error: see the INSTALL doc for more info" >&5 echo "$as_me: error: see the INSTALL doc for more info" >&2;} { (exit 1); exit 1; }; } fi CFLAGS="$savedcflags" V_CCOPT="-Aa $V_CCOPT" cat >>confdefs.h <<\_ACEOF #define _HPUX_SOURCE _ACEOF ;; *) { { echo "$as_me:$LINENO: error: see the INSTALL doc for more info" >&5 echo "$as_me: error: see the INSTALL doc for more info" >&2;} { (exit 1); exit 1; }; } ;; esac fi V_INCLS="$V_INCLS -I/usr/local/include" LDFLAGS="$LDFLAGS -L/usr/local/lib" case "$target_os" in irix*) V_CCOPT="$V_CCOPT -xansi -signed -g3" ;; osf*) V_CCOPT="$V_CCOPT -std1 -g3" ;; ultrix*) echo "$as_me:$LINENO: checking that Ultrix $CC hacks const in prototypes" >&5 echo $ECHO_N "checking that Ultrix $CC hacks const in prototypes... $ECHO_C" >&6 if test "${ac_cv_lbl_cc_const_proto+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { struct a { int b; }; void c(const struct a *) ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lbl_cc_const_proto=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lbl_cc_const_proto=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_lbl_cc_const_proto" >&5 echo "${ECHO_T}$ac_cv_lbl_cc_const_proto" >&6 if test $ac_cv_lbl_cc_const_proto = no ; then cat >>confdefs.h <<\_ACEOF #define const _ACEOF fi ;; esac fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then if test "${ac_cv_prog_CPP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" do ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then # Broken: success on invalid input. continue else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then break fi done ac_cv_prog_CPP=$CPP fi CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi echo "$as_me:$LINENO: result: $CPP" >&5 echo "${ECHO_T}$CPP" >&6 ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then # Broken: success on invalid input. continue else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details." >&5 echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu echo "$as_me:$LINENO: checking for egrep" >&5 echo $ECHO_N "checking for egrep... $ECHO_C" >&6 if test "${ac_cv_prog_egrep+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if echo a | (grep -E '(a|b)') >/dev/null 2>&1 then ac_cv_prog_egrep='grep -E' else ac_cv_prog_egrep='egrep' fi fi echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 echo "${ECHO_T}$ac_cv_prog_egrep" >&6 EGREP=$ac_cv_prog_egrep echo "$as_me:$LINENO: checking for ANSI C header files" >&5 echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 if test "${ac_cv_header_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_header_stdc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_header_stdc=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_header_stdc=no fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi fi echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 echo "${ECHO_T}$ac_cv_header_stdc" >&6 if test $ac_cv_header_stdc = yes; then cat >>confdefs.h <<\_ACEOF #define STDC_HEADERS 1 _ACEOF fi # On IRIX 5.3, sys/types and inttypes.h are conflicting. for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_Header=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_Header=no" fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done for ac_header in fcntl.h memory.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if eval "test \"\${$as_ac_Header+set}\" = set"; then echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking $ac_header usability" >&5 echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking $ac_header presence" >&5 echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------------------ ## ## Report this to the AC_PACKAGE_NAME lists. ## ## ------------------------------------------ ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 fi if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5 echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6 if test "${ac_cv_header_time+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include int main () { if ((struct tm *) 0) return 0; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_header_time=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_header_time=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5 echo "${ECHO_T}$ac_cv_header_time" >&6 if test $ac_cv_header_time = yes; then cat >>confdefs.h <<\_ACEOF #define TIME_WITH_SYS_TIME 1 _ACEOF fi for ac_func in bcopy strerror do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF else case $LIBOBJS in "$ac_func.$ac_objext" | \ *" $ac_func.$ac_objext" | \ "$ac_func.$ac_objext "* | \ *" $ac_func.$ac_objext "* ) ;; *) LIBOBJS="$LIBOBJS $ac_func.$ac_objext" ;; esac fi done echo "$as_me:$LINENO: checking whether byte ordering is bigendian" >&5 echo $ECHO_N "checking whether byte ordering is bigendian... $ECHO_C" >&6 if test "${ac_cv_c_bigendian+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else # See if sys/param.h defines the BYTE_ORDER macro. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include int main () { #if !BYTE_ORDER || !BIG_ENDIAN || !LITTLE_ENDIAN bogus endian macros #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then # It does; now see whether it defined to BIG_ENDIAN or not. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include int main () { #if BYTE_ORDER != BIG_ENDIAN not big endian #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_c_bigendian=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_c_bigendian=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # It does not; compile a test program. if test "$cross_compiling" = yes; then # try to guess the endianness by grepping values into an object file ac_cv_c_bigendian=unknown cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ short ascii_mm[] = { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; short ascii_ii[] = { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; void _ascii () { char *s = (char *) ascii_mm; s = (char *) ascii_ii; } short ebcdic_ii[] = { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; short ebcdic_mm[] = { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; void _ebcdic () { char *s = (char *) ebcdic_mm; s = (char *) ebcdic_ii; } int main () { _ascii (); _ebcdic (); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then if grep BIGenDianSyS conftest.$ac_objext >/dev/null ; then ac_cv_c_bigendian=yes fi if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then if test "$ac_cv_c_bigendian" = unknown; then ac_cv_c_bigendian=no else # finding both strings is unlikely to happen, but who knows? ac_cv_c_bigendian=unknown fi fi else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { /* Are we little or big endian? From Harbison&Steele. */ union { long l; char c[sizeof (long)]; } u; u.l = 1; exit (u.c[sizeof (long) - 1] == 1); } _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_c_bigendian=no else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_c_bigendian=yes fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_c_bigendian" >&5 echo "${ECHO_T}$ac_cv_c_bigendian" >&6 case $ac_cv_c_bigendian in yes) cat >>confdefs.h <<\_ACEOF #define WORDS_BIGENDIAN 1 _ACEOF ;; no) ;; *) { { echo "$as_me:$LINENO: error: unknown endianness presetting ac_cv_c_bigendian=no (or yes) will help" >&5 echo "$as_me: error: unknown endianness presetting ac_cv_c_bigendian=no (or yes) will help" >&2;} { (exit 1); exit 1; }; } ;; esac echo "$as_me:$LINENO: checking return type of signal handlers" >&5 echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6 if test "${ac_cv_type_signal+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #ifdef signal # undef signal #endif #ifdef __cplusplus extern "C" void (*signal (int, void (*)(int)))(int); #else void (*signal ()) (); #endif int main () { int i; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_type_signal=void else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_type_signal=int fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5 echo "${ECHO_T}$ac_cv_type_signal" >&6 cat >>confdefs.h <<_ACEOF #define RETSIGTYPE $ac_cv_type_signal _ACEOF if test "$ac_cv_type_signal" = void ; then cat >>confdefs.h <<\_ACEOF #define RETSIGVAL _ACEOF else cat >>confdefs.h <<\_ACEOF #define RETSIGVAL (0) _ACEOF fi case "$target_os" in irix*) cat >>confdefs.h <<\_ACEOF #define _BSD_SIGNALS _ACEOF ;; *) for ac_func in sigset do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done if test $ac_cv_func_sigset = yes ; then cat >>confdefs.h <<\_ACEOF #define signal sigset _ACEOF else for ac_func in sigaction do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done fi ;; esac echo "$as_me:$LINENO: checking if union wait is used" >&5 echo $ECHO_N "checking if union wait is used... $ECHO_C" >&6 if test "${ac_cv_lbl_union_wait+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ # include # include int main () { int status; u_int i = WEXITSTATUS(status); u_int j = waitpid(0, &status, 0); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lbl_union_wait=no else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lbl_union_wait=yes fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_lbl_union_wait" >&5 echo "${ECHO_T}$ac_cv_lbl_union_wait" >&6 if test $ac_cv_lbl_union_wait = yes ; then cat >>confdefs.h <<\_ACEOF #define DECLWAITSTATUS union wait _ACEOF else cat >>confdefs.h <<\_ACEOF #define DECLWAITSTATUS int _ACEOF fi echo "$as_me:$LINENO: checking for res_query in -lresolv" >&5 echo $ECHO_N "checking for res_query in -lresolv... $ECHO_C" >&6 if test "${ac_cv_lib_resolv_res_query+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lresolv $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char res_query (); int main () { res_query (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_resolv_res_query=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_resolv_res_query=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_resolv_res_query" >&5 echo "${ECHO_T}$ac_cv_lib_resolv_res_query" >&6 if test $ac_cv_lib_resolv_res_query = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBRESOLV 1 _ACEOF LIBS="-lresolv $LIBS" fi # Most operating systems have gethostbyname() in the default searched # libraries (i.e. libc): echo "$as_me:$LINENO: checking for gethostbyname" >&5 echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6 if test "${ac_cv_func_gethostbyname+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define gethostbyname to an innocuous variant, in case declares gethostbyname. For example, HP-UX 11i declares gettimeofday. */ #define gethostbyname innocuous_gethostbyname /* System header to define __stub macros and hopefully few prototypes, which can conflict with char gethostbyname (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef gethostbyname /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char gethostbyname (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_gethostbyname) || defined (__stub___gethostbyname) choke me #else char (*f) () = gethostbyname; #endif #ifdef __cplusplus } #endif int main () { return f != gethostbyname; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_gethostbyname=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_gethostbyname=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_gethostbyname" >&5 echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6 if test $ac_cv_func_gethostbyname = yes; then : else # Some OSes (eg. Solaris) place it in libnsl: echo "$as_me:$LINENO: checking for gethostbyname in -lnsl" >&5 echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6 if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lnsl $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char gethostbyname (); int main () { gethostbyname (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_nsl_gethostbyname=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_nsl_gethostbyname=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_gethostbyname" >&5 echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6 if test $ac_cv_lib_nsl_gethostbyname = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBNSL 1 _ACEOF LIBS="-lnsl $LIBS" else # Some strange OSes (SINIX) have it in libsocket: echo "$as_me:$LINENO: checking for gethostbyname in -lsocket" >&5 echo $ECHO_N "checking for gethostbyname in -lsocket... $ECHO_C" >&6 if test "${ac_cv_lib_socket_gethostbyname+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsocket $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char gethostbyname (); int main () { gethostbyname (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_socket_gethostbyname=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_socket_gethostbyname=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_socket_gethostbyname" >&5 echo "${ECHO_T}$ac_cv_lib_socket_gethostbyname" >&6 if test $ac_cv_lib_socket_gethostbyname = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBSOCKET 1 _ACEOF LIBS="-lsocket $LIBS" else # Unfortunately libsocket sometimes depends on libnsl. # AC_CHECK_LIB's API is essentially broken so the # following ugliness is necessary: echo "$as_me:$LINENO: checking for gethostbyname in -lsocket" >&5 echo $ECHO_N "checking for gethostbyname in -lsocket... $ECHO_C" >&6 if test "${ac_cv_lib_socket_gethostbyname+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsocket -lnsl $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char gethostbyname (); int main () { gethostbyname (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_socket_gethostbyname=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_socket_gethostbyname=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_socket_gethostbyname" >&5 echo "${ECHO_T}$ac_cv_lib_socket_gethostbyname" >&6 if test $ac_cv_lib_socket_gethostbyname = yes; then LIBS="-lsocket -lnsl $LIBS" else echo "$as_me:$LINENO: checking for gethostbyname in -lresolv" >&5 echo $ECHO_N "checking for gethostbyname in -lresolv... $ECHO_C" >&6 if test "${ac_cv_lib_resolv_gethostbyname+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lresolv $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char gethostbyname (); int main () { gethostbyname (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_resolv_gethostbyname=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_resolv_gethostbyname=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_resolv_gethostbyname" >&5 echo "${ECHO_T}$ac_cv_lib_resolv_gethostbyname" >&6 if test $ac_cv_lib_resolv_gethostbyname = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBRESOLV 1 _ACEOF LIBS="-lresolv $LIBS" fi fi fi fi fi echo "$as_me:$LINENO: checking for socket" >&5 echo $ECHO_N "checking for socket... $ECHO_C" >&6 if test "${ac_cv_func_socket+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define socket to an innocuous variant, in case declares socket. For example, HP-UX 11i declares gettimeofday. */ #define socket innocuous_socket /* System header to define __stub macros and hopefully few prototypes, which can conflict with char socket (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef socket /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char socket (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_socket) || defined (__stub___socket) choke me #else char (*f) () = socket; #endif #ifdef __cplusplus } #endif int main () { return f != socket; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_socket=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_socket=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_socket" >&5 echo "${ECHO_T}$ac_cv_func_socket" >&6 if test $ac_cv_func_socket = yes; then : else echo "$as_me:$LINENO: checking for socket in -lsocket" >&5 echo $ECHO_N "checking for socket in -lsocket... $ECHO_C" >&6 if test "${ac_cv_lib_socket_socket+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsocket $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char socket (); int main () { socket (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_socket_socket=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_socket_socket=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_socket_socket" >&5 echo "${ECHO_T}$ac_cv_lib_socket_socket" >&6 if test $ac_cv_lib_socket_socket = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBSOCKET 1 _ACEOF LIBS="-lsocket $LIBS" else echo "$as_me:$LINENO: checking for socket in -lsocket" >&5 echo $ECHO_N "checking for socket in -lsocket... $ECHO_C" >&6 if test "${ac_cv_lib_socket_socket+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsocket -lnsl $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char socket (); int main () { socket (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_socket_socket=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_socket_socket=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_socket_socket" >&5 echo "${ECHO_T}$ac_cv_lib_socket_socket" >&6 if test $ac_cv_lib_socket_socket = yes; then LIBS="-lsocket -lnsl $LIBS" fi fi fi # DLPI needs putmsg under HPUX so test for -lstr while we're at it echo "$as_me:$LINENO: checking for putmsg in -lstr" >&5 echo $ECHO_N "checking for putmsg in -lstr... $ECHO_C" >&6 if test "${ac_cv_lib_str_putmsg+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lstr $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char putmsg (); int main () { putmsg (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_str_putmsg=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_str_putmsg=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_str_putmsg" >&5 echo "${ECHO_T}$ac_cv_lib_str_putmsg" >&6 if test $ac_cv_lib_str_putmsg = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBSTR 1 _ACEOF LIBS="-lstr $LIBS" fi LBL_LIBS="$LIBS" pfopen=/usr/examples/packetfilter/pfopen.c if test -f $pfopen ; then for ac_func in pfopen do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done if test $ac_cv_func_pfopen = "no" ; then echo "$as_me:$LINENO: result: Using $pfopen" >&5 echo "${ECHO_T}Using $pfopen" >&6 LIBS="$LIBS $pfopen" fi fi echo "$as_me:$LINENO: checking for local pcap library" >&5 echo $ECHO_N "checking for local pcap library... $ECHO_C" >&6 libpcap=FAIL lastdir=FAIL places=`ls .. | sed -e 's,/$,,' -e 's,^,../,' | \ egrep '/libpcap-[0-9]*\.[0-9]*(\.[0-9]*)?([ab][0-9]*)?$'` for dir in $places ../libpcap libpcap ; do basedir=`echo $dir | sed -e 's/[ab][0-9]*$//'` if test $lastdir = $basedir ; then continue; fi lastdir=$dir if test -r $dir/pcap.c ; then libpcap=$dir/libpcap.a d=$dir fi done if test "x$libpcap" = xFAIL ; then echo "$as_me:$LINENO: result: not found" >&5 echo "${ECHO_T}not found" >&6 echo "$as_me:$LINENO: checking for pcap_open_live in -lpcap" >&5 echo $ECHO_N "checking for pcap_open_live in -lpcap... $ECHO_C" >&6 if test "${ac_cv_lib_pcap_pcap_open_live+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lpcap $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char pcap_open_live (); int main () { pcap_open_live (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_pcap_pcap_open_live=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_pcap_pcap_open_live=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_pcap_pcap_open_live" >&5 echo "${ECHO_T}$ac_cv_lib_pcap_pcap_open_live" >&6 if test $ac_cv_lib_pcap_pcap_open_live = yes; then libpcap="-lpcap" fi unset ac_cv_lib_pcap_pcap_open_live if test "x$libpcap" = xFAIL ; then CFLAGS="$CFLAGS -I/usr/local/include" LIBS="$LIBS -L/usr/local/lib" echo "$as_me:$LINENO: checking for pcap_open_live in -lpcap" >&5 echo $ECHO_N "checking for pcap_open_live in -lpcap... $ECHO_C" >&6 if test "${ac_cv_lib_pcap_pcap_open_live+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lpcap $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char pcap_open_live (); int main () { pcap_open_live (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_pcap_pcap_open_live=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_pcap_pcap_open_live=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_pcap_pcap_open_live" >&5 echo "${ECHO_T}$ac_cv_lib_pcap_pcap_open_live" >&6 if test $ac_cv_lib_pcap_pcap_open_live = yes; then libpcap="-lpcap" fi unset ac_cv_lib_pcap_pcap_open_live if test "x$libpcap" = xFAIL ; then { { echo "$as_me:$LINENO: error: see the INSTALL doc for more info" >&5 echo "$as_me: error: see the INSTALL doc for more info" >&2;} { (exit 1); exit 1; }; } fi V_INCLS="$V_INCLS -I/usr/local/include" fi LIBS="$LIBS -lpcap" else V_PCAPDEP=$libpcap V_INCLS="-I$d $V_INCLS" echo "$as_me:$LINENO: result: $libpcap" >&5 echo "${ECHO_T}$libpcap" >&6 fi if test "x$libpcap" != "x-lpcap" ; then LIBS="$libpcap $LIBS" fi case "$target_os" in aix*) pseexe="/lib/pse.exp" echo "$as_me:$LINENO: checking for $pseexe" >&5 echo $ECHO_N "checking for $pseexe... $ECHO_C" >&6 if test -f $pseexe ; then echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 LIBS="$LIBS -I:$pseexe" fi ;; esac # Extract the first word of "sendmail", so it can be a program name with args. set dummy sendmail; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_V_SENDMAIL+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $V_SENDMAIL in [\\/]* | ?:[\\/]*) ac_cv_path_V_SENDMAIL="$V_SENDMAIL" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR as_dummy="$PATH:/usr/sbin:/usr/lib:/usr/bin:/usr/ucblib:/usr/local/etc" for as_dir in $as_dummy do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_V_SENDMAIL="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_path_V_SENDMAIL" && ac_cv_path_V_SENDMAIL="/usr/lib/sendmail" ;; esac fi V_SENDMAIL=$ac_cv_path_V_SENDMAIL if test -n "$V_SENDMAIL"; then echo "$as_me:$LINENO: result: $V_SENDMAIL" >&5 echo "${ECHO_T}$V_SENDMAIL" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi case "$target_os" in linux*) V_INCLS="$V_INCLS -Ilinux-include" ;; osf3*) # workaround around ip_hl vs. ip_vhl problem in netinet/ip.h cat >>confdefs.h <<\_ACEOF #define __STDC__ 2 _ACEOF ;; esac echo "$as_me:$LINENO: checking for using $CC" >&5 echo $ECHO_N "checking for using $CC... $ECHO_C" >&6 if test "${ac_cv_lbl_have_+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ # include "confdefs.h" # include # if STDC_HEADERS # include # include # endif int main () { i ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lbl_have_=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lbl_have_=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_lbl_have_" >&5 echo "${ECHO_T}$ac_cv_lbl_have_" >&6 if test $ac_cv_lbl_have_ = no ; then cat >>confdefs.h <<\_ACEOF #define _ACEOF fi rm -f os-proto.h if test "${LBL_CFLAGS+set}" = set; then V_CCOPT="$V_CCOPT ${LBL_CFLAGS}" fi if test -f .devel ; then if test "$GCC" = yes ; then if test "$SHLICC2" = yes ; then ac_cv_lbl_gcc_vers=2 V_CCOPT="`echo $V_CCOPT | sed -e 's/-O/-O2/'`" else echo "$as_me:$LINENO: checking gcc version" >&5 echo $ECHO_N "checking gcc version... $ECHO_C" >&6 if test "${ac_cv_lbl_gcc_vers+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else # Gag, the gcc folks keep changing the output... # try to grab N.N.N ac_cv_lbl_gcc_vers=`$CC --version 2>&1 | sed -e '1!d' -e 's/[^0-9]*\([0-9][0-9]*\)\.[0-9\][0-9]*\.[0-9][0-9]*.*/\1/'` fi echo "$as_me:$LINENO: result: $ac_cv_lbl_gcc_vers" >&5 echo "${ECHO_T}$ac_cv_lbl_gcc_vers" >&6 if test "$ac_cv_lbl_gcc_vers" -gt 1 ; then V_CCOPT="`echo $V_CCOPT | sed -e 's/-O/-O2/'`" fi fi if test "${LBL_CFLAGS+set}" != set; then if test "$ac_cv_prog_cc_g" = yes ; then V_CCOPT="-g $V_CCOPT" fi V_CCOPT="$V_CCOPT -Wall" if test "$ac_cv_lbl_gcc_vers" -gt 1 ; then V_CCOPT="$V_CCOPT -Wmissing-prototypes -Wstrict-prototypes" fi fi else case "$target_os" in irix6*) V_CCOPT="$V_CCOPT -fullwarn -n32" ;; *) ;; esac fi os=`echo $target_os | sed -e 's/\([0-9][0-9]*\)[^0-9].*$/\1/'` name="lbl/os-$os.h" if test -f $name ; then ln -s $name os-proto.h cat >>confdefs.h <<\_ACEOF #define HAVE_OS_PROTO_H _ACEOF else { echo "$as_me:$LINENO: WARNING: can't find $name" >&5 echo "$as_me: WARNING: can't find $name" >&2;} fi fi echo "$as_me:$LINENO: checking if ether_header uses ether_addr structs" >&5 echo $ECHO_N "checking if ether_header uses ether_addr structs... $ECHO_C" >&6 if test "${ac_cv_ether_header_has_ea+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else LBL_SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $V_INCLS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ # include # if __STDC__ /* osf3 has REALLY good prototyes */ struct mbuf; struct rtentry; # endif # include # include # include # include int main () { u_int i = sizeof(((struct ether_header *)0)->ether_dhost.ether_addr_octet) ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_ether_header_has_ea=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_ether_header_has_ea=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext CFLAGS="$LBL_SAVE_CFLAGS" fi echo "$as_me:$LINENO: result: $ac_cv_ether_header_has_ea" >&5 echo "${ECHO_T}$ac_cv_ether_header_has_ea" >&6 if test $ac_cv_ether_header_has_ea = yes ; then cat >>confdefs.h <<\_ACEOF #define ETHER_HEADER_HAS_EA 1 _ACEOF fi echo "$as_me:$LINENO: checking if ether_arp uses ether_addr structs" >&5 echo $ECHO_N "checking if ether_arp uses ether_addr structs... $ECHO_C" >&6 if test "${ac_cv_ether_arp_has_ea+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else LBL_SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $V_INCLS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ # include # if __STDC__ /* osf3 has REALLY good prototyes */ struct mbuf; struct rtentry; # endif # include # include # include # include int main () { u_int i = sizeof(((struct ether_arp *)0)->arp_sha.ether_addr_octet) ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_ether_arp_has_ea=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_ether_arp_has_ea=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext CFLAGS="$LBL_SAVE_CFLAGS" fi echo "$as_me:$LINENO: result: $ac_cv_ether_arp_has_ea" >&5 echo "${ECHO_T}$ac_cv_ether_arp_has_ea" >&6 if test $ac_cv_ether_arp_has_ea = yes ; then cat >>confdefs.h <<\_ACEOF #define ETHER_ARP_HAS_EA 1 _ACEOF fi echo "$as_me:$LINENO: checking if ether_arp uses erp_xsha member" >&5 echo $ECHO_N "checking if ether_arp uses erp_xsha member... $ECHO_C" >&6 if test "${ac_cv_struct_ether_arp_x+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else LBL_SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $V_INCLS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ # include # include # if __STDC__ /* osf3 has REALLY good prototyes */ struct mbuf; struct rtentry; # endif # include # include # include int main () { u_int i = sizeof( ((struct ether_arp *)0)->arp_xsha) ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_struct_ether_arp_x=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_struct_ether_arp_x=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext CFLAGS="$LBL_SAVE_CFLAGS" fi echo "$as_me:$LINENO: result: $ac_cv_struct_ether_arp_x" >&5 echo "${ECHO_T}$ac_cv_struct_ether_arp_x" >&6 if test $ac_cv_struct_ether_arp_x = yes ; then cat >>confdefs.h <<\_ACEOF #define ETHER_ARP_HAS_X 1 _ACEOF fi echo "$as_me:$LINENO: checking for dn_skipname" >&5 echo $ECHO_N "checking for dn_skipname... $ECHO_C" >&6 if test "${ac_cv_have_dn_skipname+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ # include # include # include # include int main () { (void)dn_skipname(0, 0); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_have_dn_skipname=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_have_dn_skipname=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_have_dn_skipname" >&5 echo "${ECHO_T}$ac_cv_have_dn_skipname" >&6 if test $ac_cv_have_dn_skipname = yes ; then cat >>confdefs.h <<\_ACEOF #define HAVE_DN_SKIPNAME 1 _ACEOF fi if test -f .devel ; then cat >>confdefs.h <<\_ACEOF #define LBL 1 _ACEOF fi if test -r lbl/gnuc.h ; then rm -f gnuc.h ln -s lbl/gnuc.h gnuc.h fi if test ! -r addresses.h ; then cp addresses.h.in addresses.h fi # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: # SysV /etc/install, /usr/sbin/install # SunOS /usr/etc/install # IRIX /sbin/install # AIX /bin/install # AmigaOS /C/install, which installs bootblocks on floppy discs # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 if test -z "$INSTALL"; then if test "${ac_cv_path_install+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. # Account for people who put trailing slashes in PATH elements. case $as_dir/ in ./ | .// | /cC/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. # Don't use installbsd from OSF since it installs stuff as root # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. : elif test $ac_prog = install && grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # program-specific install script used by HP pwplus--don't use. : else ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" break 3 fi fi done done ;; esac done fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else # As a last resort, use the slow shell script. We don't cache a # path for INSTALL within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the path is relative. INSTALL=$ac_install_sh fi fi echo "$as_me:$LINENO: result: $INSTALL" >&5 echo "${ECHO_T}$INSTALL" >&6 # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' ac_config_files="$ac_config_files Makefile" cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure # scripts and configure runs, see configure's option --config-cache. # It is not useful on other systems. If it contains results you don't # want to keep, you may remove or edit it. # # config.status only pays attention to the cache file if you give it # the --recheck option to rerun configure. # # `ac_cv_env_foo' variables (set or unset) will be overridden when # loading this file, other *unset* `ac_cv_foo' will be assigned the # following values. _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. # So, don't put newlines in cache variables' values. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. { (set) 2>&1 | case `(ac_space=' '; set | grep ac_space) 2>&1` in *ac_space=\ *) # `set' does not quote correctly, so add quotes (double-quote # substitution turns \\\\ into \\, and sed turns \\ into \). sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" ;; *) # `set' quotes correctly as required by POSIX, so do not add quotes. sed -n \ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" ;; esac; } | sed ' t clear : clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ : end' >>confcache if diff $cache_file confcache >/dev/null 2>&1; then :; else if test -w $cache_file; then test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" cat confcache >$cache_file else echo "not updating unwritable cache $cache_file" fi fi rm -f confcache test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' # VPATH may cause trouble with some makes, so we remove $(srcdir), # ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and # trailing colons and then remove the whole line if VPATH becomes empty # (actually we leave an empty line to preserve line numbers). if test "x$srcdir" = x.; then ac_vpsub='/^[ ]*VPATH[ ]*=/{ s/:*\$(srcdir):*/:/; s/:*\${srcdir}:*/:/; s/:*@srcdir@:*/:/; s/^\([^=]*=[ ]*\):*/\1/; s/:*$//; s/^[^=]*=[ ]*$//; }' fi # Transform confdefs.h into DEFS. # Protect against shell expansion while executing Makefile rules. # Protect against Makefile macro expansion. # # If the first sed substitution is executed (which looks for macros that # take arguments), then we branch to the quote section. Otherwise, # look for a macro that doesn't take arguments. cat >confdef2opt.sed <<\_ACEOF t clear : clear s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g t quote s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g t quote d : quote s,[ `~#$^&*(){}\\|;'"<>?],\\&,g s,\[,\\&,g s,\],\\&,g s,\$,$$,g p _ACEOF # We use echo to avoid assuming a particular line-breaking character. # The extra dot is to prevent the shell from consuming trailing # line-breaks from the sub-command output. A line-break within # single-quotes doesn't work because, if this script is created in a # platform that uses two characters for line-breaks (e.g., DOS), tr # would break. ac_LF_and_DOT=`echo; echo .` DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'` rm -f confdef2opt.sed ac_libobjs= ac_ltlibobjs= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_i=`echo "$ac_i" | sed 's/\$U\././;s/\.o$//;s/\.obj$//'` # 2. Add them. ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs : ${CONFIG_STATUS=./config.status} ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" { echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 echo "$as_me: creating $CONFIG_STATUS" >&6;} cat >$CONFIG_STATUS <<_ACEOF #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. debug=false ac_cs_recheck=false ac_cs_silent=false SHELL=\${CONFIG_SHELL-$SHELL} _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF ## --------------------- ## ## M4sh Initialization. ## ## --------------------- ## # Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then set -o posix fi DUALCASE=1; export DUALCASE # for MKS sh # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false fi # Work around bugs in pre-3.0 UWIN ksh. $as_unset ENV MAIL MAILPATH PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. for as_var in \ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ LC_TELEPHONE LC_TIME do if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else $as_unset $as_var fi done # Required to use basename. if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi # Name of the executable. as_me=`$as_basename "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)$' \| \ . : '\(.\)' 2>/dev/null || echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } /^X\/\(\/\/\)$/{ s//\1/; q; } /^X\/\(\/\).*/{ s//\1/; q; } s/.*/./; q'` # PATH needs CR, and LINENO needs CR and PATH. # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" || { # Find who we are. Look in the path if we contain no path at all # relative or not. case $0 in *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} { (exit 1); exit 1; }; } fi case $CONFIG_SHELL in '') as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for as_base in sh bash ksh sh5; do case $as_dir in /*) if ("$as_dir/$as_base" -c ' as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } CONFIG_SHELL=$as_dir/$as_base export CONFIG_SHELL exec "$CONFIG_SHELL" "$0" ${1+"$@"} fi;; esac done done ;; esac # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a # line-number line before each line; the second 'sed' does the real # work. The second script uses 'N' to pair each line-number line # with the numbered line, and appends trailing '-' during # substitution so that $LINENO is not a special case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) sed '=' <$as_myself | sed ' N s,$,-, : loop s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, t loop s,-$,, s,^['$as_cr_digits']*\n,, ' >$as_me.lineno && chmod +x $as_me.lineno || { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} { (exit 1); exit 1; }; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensible to this). . ./$as_me.lineno # Exit status is that of the last command. exit } case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in *c*,-n*) ECHO_N= ECHO_C=' ' ECHO_T=' ' ;; *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; *) ECHO_N= ECHO_C='\c' ECHO_T= ;; esac if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi rm -f conf$$ conf$$.exe conf$$.file echo >conf$$.file if ln -s conf$$.file conf$$ 2>/dev/null; then # We could just check for DJGPP; but this test a) works b) is more generic # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). if test -f conf$$.exe; then # Don't use ln at all; we don't have any links as_ln_s='cp -p' else as_ln_s='ln -s' fi elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.file if mkdir -p . 2>/dev/null; then as_mkdir_p=: else test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_executable_p="test -f" # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" # IFS # We need space, tab and new line, in precisely that order. as_nl=' ' IFS=" $as_nl" # CDPATH. $as_unset CDPATH exec 6>&1 # Open the log real soon, to keep \$[0] and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. Logging --version etc. is OK. exec 5>>config.log { echo sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX } >&5 cat >&5 <<_CSEOF This file was extended by $as_me, which was generated by GNU Autoconf 2.59. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS CONFIG_LINKS = $CONFIG_LINKS CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ _CSEOF echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 echo >&5 _ACEOF # Files that config.status was made for. if test -n "$ac_config_files"; then echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS fi if test -n "$ac_config_headers"; then echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS fi if test -n "$ac_config_links"; then echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS fi if test -n "$ac_config_commands"; then echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS fi cat >>$CONFIG_STATUS <<\_ACEOF ac_cs_usage="\ \`$as_me' instantiates files from templates according to the current configuration. Usage: $0 [OPTIONS] [FILE]... -h, --help print this help, then exit -V, --version print version number, then exit -q, --quiet do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] instantiate the configuration file FILE Configuration files: $config_files Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ config.status configured by $0, generated by GNU Autoconf 2.59, with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" Copyright (C) 2003 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." srcdir=$srcdir INSTALL="$INSTALL" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # If no file are specified by the user, then we need to provide default # value. By we need to know if files were specified by the user. ac_need_defaults=: while test $# != 0 do case $1 in --*=*) ac_option=`expr "x$1" : 'x\([^=]*\)='` ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` ac_shift=: ;; -*) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; *) # This is not an option, so the user has probably given explicit # arguments. ac_option=$1 ac_need_defaults=false;; esac case $ac_option in # Handling of the options. _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; --version | --vers* | -V ) echo "$ac_cs_version"; exit 0 ;; --he | --h) # Conflict between --help and --header { { echo "$as_me:$LINENO: error: ambiguous option: $1 Try \`$0 --help' for more information." >&5 echo "$as_me: error: ambiguous option: $1 Try \`$0 --help' for more information." >&2;} { (exit 1); exit 1; }; };; --help | --hel | -h ) echo "$ac_cs_usage"; exit 0 ;; --debug | --d* | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift CONFIG_FILES="$CONFIG_FILES $ac_optarg" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" ac_need_defaults=false;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 Try \`$0 --help' for more information." >&5 echo "$as_me: error: unrecognized option: $1 Try \`$0 --help' for more information." >&2;} { (exit 1); exit 1; }; } ;; *) ac_config_targets="$ac_config_targets $1" ;; esac shift done ac_configure_extra_args= if $ac_cs_silent; then exec 6>/dev/null ac_configure_extra_args="$ac_configure_extra_args --silent" fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF if \$ac_cs_recheck; then echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion fi _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF for ac_config_target in $ac_config_targets do case "$ac_config_target" in # Handling of arguments. "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 echo "$as_me: error: invalid argument: $ac_config_target" >&2;} { (exit 1); exit 1; }; };; esac done # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files fi # Have a temporary directory for convenience. Make it in the build tree # simply because there is no reason to put it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. # Create a temporary directory, and hook for its removal unless debugging. $debug || { trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 trap '{ (exit 1); exit 1; }' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. { tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" } || { tmp=./confstat$$-$RANDOM (umask 077 && mkdir $tmp) } || { echo "$me: cannot create a temporary directory in ." >&2 { (exit 1); exit 1; } } _ACEOF cat >>$CONFIG_STATUS <<_ACEOF # # CONFIG_FILES section. # # No need to generate the scripts if there are no CONFIG_FILES. # This happens for instance when ./config.status config.h if test -n "\$CONFIG_FILES"; then # Protect against being on the right side of a sed subst in config.status. sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF s,@SHELL@,$SHELL,;t t s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t s,@exec_prefix@,$exec_prefix,;t t s,@prefix@,$prefix,;t t s,@program_transform_name@,$program_transform_name,;t t s,@bindir@,$bindir,;t t s,@sbindir@,$sbindir,;t t s,@libexecdir@,$libexecdir,;t t s,@datadir@,$datadir,;t t s,@sysconfdir@,$sysconfdir,;t t s,@sharedstatedir@,$sharedstatedir,;t t s,@localstatedir@,$localstatedir,;t t s,@libdir@,$libdir,;t t s,@includedir@,$includedir,;t t s,@oldincludedir@,$oldincludedir,;t t s,@infodir@,$infodir,;t t s,@mandir@,$mandir,;t t s,@build_alias@,$build_alias,;t t s,@host_alias@,$host_alias,;t t s,@target_alias@,$target_alias,;t t s,@DEFS@,$DEFS,;t t s,@ECHO_C@,$ECHO_C,;t t s,@ECHO_N@,$ECHO_N,;t t s,@ECHO_T@,$ECHO_T,;t t s,@LIBS@,$LIBS,;t t s,@build@,$build,;t t s,@build_cpu@,$build_cpu,;t t s,@build_vendor@,$build_vendor,;t t s,@build_os@,$build_os,;t t s,@host@,$host,;t t s,@host_cpu@,$host_cpu,;t t s,@host_vendor@,$host_vendor,;t t s,@host_os@,$host_os,;t t s,@target@,$target,;t t s,@target_cpu@,$target_cpu,;t t s,@target_vendor@,$target_vendor,;t t s,@target_os@,$target_os,;t t s,@SHLICC2@,$SHLICC2,;t t s,@CC@,$CC,;t t s,@CFLAGS@,$CFLAGS,;t t s,@LDFLAGS@,$LDFLAGS,;t t s,@CPPFLAGS@,$CPPFLAGS,;t t s,@ac_ct_CC@,$ac_ct_CC,;t t s,@EXEEXT@,$EXEEXT,;t t s,@OBJEXT@,$OBJEXT,;t t s,@CPP@,$CPP,;t t s,@EGREP@,$EGREP,;t t s,@LIBOBJS@,$LIBOBJS,;t t s,@V_SENDMAIL@,$V_SENDMAIL,;t t s,@V_CCOPT@,$V_CCOPT,;t t s,@V_INCLS@,$V_INCLS,;t t s,@V_PCAPDEP@,$V_PCAPDEP,;t t s,@LBL_LIBS@,$LBL_LIBS,;t t s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t s,@INSTALL_DATA@,$INSTALL_DATA,;t t s,@LTLIBOBJS@,$LTLIBOBJS,;t t CEOF _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # Split the substitutions into bite-sized pieces for seds with # small command number limits, like on Digital OSF/1 and HP-UX. ac_max_sed_lines=48 ac_sed_frag=1 # Number of current file. ac_beg=1 # First line for current file. ac_end=$ac_max_sed_lines # Line after last line for current file. ac_more_lines=: ac_sed_cmds= while $ac_more_lines; do if test $ac_beg -gt 1; then sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag else sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag fi if test ! -s $tmp/subs.frag; then ac_more_lines=false else # The purpose of the label and of the branching condition is to # speed up the sed processing (if there are no `@' at all, there # is no need to browse any of the substitutions). # These are the two extra sed commands mentioned above. (echo ':t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed if test -z "$ac_sed_cmds"; then ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" else ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" fi ac_sed_frag=`expr $ac_sed_frag + 1` ac_beg=$ac_end ac_end=`expr $ac_end + $ac_max_sed_lines` fi done if test -z "$ac_sed_cmds"; then ac_sed_cmds=cat fi fi # test -n "$CONFIG_FILES" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". case $ac_file in - | *:- | *:-:* ) # input from stdin cat >$tmp/stdin ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; * ) ac_file_in=$ac_file.in ;; esac # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. ac_dir=`(dirname "$ac_file") 2>/dev/null || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` { if $as_mkdir_p; then mkdir -p "$ac_dir" else as_dir="$ac_dir" as_dirs= while test ! -d "$as_dir"; do as_dirs="$as_dir $as_dirs" as_dir=`(dirname "$as_dir") 2>/dev/null || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` done test ! -n "$as_dirs" || mkdir $as_dirs fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} { (exit 1); exit 1; }; }; } ac_builddir=. if test "$ac_dir" != .; then ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` # A "../" for each directory in $ac_dir_suffix. ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` else ac_dir_suffix= ac_top_builddir= fi case $srcdir in .) # No --srcdir option. We are building in place. ac_srcdir=. if test -z "$ac_top_builddir"; then ac_top_srcdir=. else ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` fi ;; [\\/]* | ?:[\\/]* ) # Absolute path. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ;; *) # Relative path. ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_builddir$srcdir ;; esac # Do not use `cd foo && pwd` to compute absolute paths, because # the directories may not exist. case `pwd` in .) ac_abs_builddir="$ac_dir";; *) case "$ac_dir" in .) ac_abs_builddir=`pwd`;; [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; *) ac_abs_builddir=`pwd`/"$ac_dir";; esac;; esac case $ac_abs_builddir in .) ac_abs_top_builddir=${ac_top_builddir}.;; *) case ${ac_top_builddir}. in .) ac_abs_top_builddir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; esac;; esac case $ac_abs_builddir in .) ac_abs_srcdir=$ac_srcdir;; *) case $ac_srcdir in .) ac_abs_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; esac;; esac case $ac_abs_builddir in .) ac_abs_top_srcdir=$ac_top_srcdir;; *) case $ac_top_srcdir in .) ac_abs_top_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; esac;; esac case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; *) ac_INSTALL=$ac_top_builddir$INSTALL ;; esac if test x"$ac_file" != x-; then { echo "$as_me:$LINENO: creating $ac_file" >&5 echo "$as_me: creating $ac_file" >&6;} rm -f "$ac_file" fi # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ if test x"$ac_file" = x-; then configure_input= else configure_input="$ac_file. " fi configure_input=$configure_input"Generated from `echo $ac_file_in | sed 's,.*/,,'` by configure." # First look for the input files in the build tree, otherwise in the # src tree. ac_file_inputs=`IFS=: for f in $ac_file_in; do case $f in -) echo $tmp/stdin ;; [\\/$]*) # Absolute (can't be DOS-style, as IFS=:) test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } echo "$f";; *) # Relative if test -f "$f"; then # Build tree echo "$f" elif test -f "$srcdir/$f"; then # Source tree echo "$srcdir/$f" else # /dev/null tree { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } fi;; esac done` || { (exit 1); exit 1; } _ACEOF cat >>$CONFIG_STATUS <<_ACEOF sed "$ac_vpsub $extrasub _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b s,@configure_input@,$configure_input,;t t s,@srcdir@,$ac_srcdir,;t t s,@abs_srcdir@,$ac_abs_srcdir,;t t s,@top_srcdir@,$ac_top_srcdir,;t t s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t s,@builddir@,$ac_builddir,;t t s,@abs_builddir@,$ac_abs_builddir,;t t s,@top_builddir@,$ac_top_builddir,;t t s,@abs_top_builddir@,$ac_abs_top_builddir,;t t s,@INSTALL@,$ac_INSTALL,;t t " $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out rm -f $tmp/stdin if test x"$ac_file" != x-; then mv $tmp/out $ac_file else cat $tmp/out rm -f $tmp/out fi done _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF { (exit 0); exit 0; } _ACEOF chmod +x $CONFIG_STATUS ac_clean_files=$ac_clean_files_save # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. # Unfortunately, on DOS this fails, as config.log is still kept open # by configure, so config.status won't be able to write to it; its # output is simply discarded. So we exec the FD to /dev/null, # effectively closing config.log, so it can be properly (re)opened and # appended to by config.status. When coming back to configure, we # need to make the FD available again. if test "$no_create" != yes; then ac_cs_success=: ac_config_status_args= test "$silent" = yes && ac_config_status_args="$ac_config_status_args --quiet" exec 5>/dev/null $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. $ac_cs_success || { (exit 1); exit 1; } fi if test ! -f arp.dat ; then echo 'creating empty arp.dat file' touch arp.dat fi if test -f .devel ; then make depend fi exit 0 arpwatch-2.1a15/configure.in0100555000177400000340000000763210446326525015237 0ustar leressunsrcdnl @(#) $Header: /usr/src/local/sbin/arpwatch/RCS/configure.in,v 1.35 2006/06/21 20:34:27 leres Exp $ (LBL) dnl dnl Copyright (c) 1994, 1995, 1996, 1997, 1998, 2000, 2006 dnl The Regents of the University of California. All rights reserved. dnl dnl Process this file with autoconf to produce a configure script. dnl AC_INIT(arpwatch.c) AC_CANONICAL_SYSTEM umask 002 if test -z "$PWD" ; then PWD=`pwd` fi AC_LBL_C_INIT(V_CCOPT, V_INCLS) AC_CHECK_HEADERS(fcntl.h memory.h) AC_HEADER_TIME AC_REPLACE_FUNCS(bcopy strerror) dnl The following generates a warning from autoconf... AC_C_BIGENDIAN AC_LBL_TYPE_SIGNAL AC_LBL_UNION_WAIT AC_CHECK_LIB(resolv, res_query) AC_LBL_LIBPCAP(V_PCAPDEP, V_INCLS) AC_PATH_PROG(V_SENDMAIL, sendmail, /usr/lib/sendmail, $PATH:/usr/sbin:/usr/lib:/usr/bin:/usr/ucblib:/usr/local/etc) case "$target_os" in linux*) V_INCLS="$V_INCLS -Ilinux-include" ;; osf3*) # workaround around ip_hl vs. ip_vhl problem in netinet/ip.h AC_DEFINE(__STDC__,2) ;; esac AC_LBL_CHECK_TYPE AC_LBL_DEVEL(V_CCOPT) AC_MSG_CHECKING(if ether_header uses ether_addr structs) AC_CACHE_VAL(ac_cv_ether_header_has_ea, LBL_SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $V_INCLS" AC_TRY_COMPILE([ # include # if __STDC__ /* osf3 has REALLY good prototyes */ struct mbuf; struct rtentry; # endif # include # include # include # include ], [u_int i = sizeof(((struct ether_header *)0)->ether_dhost.ether_addr_octet)], ac_cv_ether_header_has_ea=yes, ac_cv_ether_header_has_ea=no) CFLAGS="$LBL_SAVE_CFLAGS") AC_MSG_RESULT($ac_cv_ether_header_has_ea) if test $ac_cv_ether_header_has_ea = yes ; then AC_DEFINE(ETHER_HEADER_HAS_EA) fi AC_MSG_CHECKING(if ether_arp uses ether_addr structs) AC_CACHE_VAL(ac_cv_ether_arp_has_ea, LBL_SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $V_INCLS" AC_TRY_COMPILE([ # include # if __STDC__ /* osf3 has REALLY good prototyes */ struct mbuf; struct rtentry; # endif # include # include # include # include ], [u_int i = sizeof(((struct ether_arp *)0)->arp_sha.ether_addr_octet)], ac_cv_ether_arp_has_ea=yes, ac_cv_ether_arp_has_ea=no) CFLAGS="$LBL_SAVE_CFLAGS") AC_MSG_RESULT($ac_cv_ether_arp_has_ea) if test $ac_cv_ether_arp_has_ea = yes ; then AC_DEFINE(ETHER_ARP_HAS_EA) fi AC_MSG_CHECKING(if ether_arp uses erp_xsha member) AC_CACHE_VAL(ac_cv_struct_ether_arp_x, LBL_SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $V_INCLS" AC_TRY_COMPILE([ # include # include # if __STDC__ /* osf3 has REALLY good prototyes */ struct mbuf; struct rtentry; # endif # include # include # include ], [u_int i = sizeof( ((struct ether_arp *)0)->arp_xsha)], ac_cv_struct_ether_arp_x=yes, ac_cv_struct_ether_arp_x=no) CFLAGS="$LBL_SAVE_CFLAGS") AC_MSG_RESULT($ac_cv_struct_ether_arp_x) if test $ac_cv_struct_ether_arp_x = yes ; then AC_DEFINE(ETHER_ARP_HAS_X) fi dnl dnl bind 8 does some routine name renaming so we must test specially dnl AC_MSG_CHECKING(for dn_skipname) AC_CACHE_VAL(ac_cv_have_dn_skipname, AC_TRY_LINK([ # include # include # include # include ], [(void)dn_skipname(0, 0);], ac_cv_have_dn_skipname=yes, ac_cv_have_dn_skipname=no)) AC_MSG_RESULT($ac_cv_have_dn_skipname) if test $ac_cv_have_dn_skipname = yes ; then AC_DEFINE(HAVE_DN_SKIPNAME) fi if test -f .devel ; then AC_DEFINE(LBL) fi if test -r lbl/gnuc.h ; then rm -f gnuc.h ln -s lbl/gnuc.h gnuc.h fi if test ! -r addresses.h ; then cp addresses.h.in addresses.h fi AC_SUBST(V_CCOPT) AC_SUBST(V_INCLS) AC_SUBST(V_PCAPDEP) AC_SUBST(V_SENDMAIL) AC_SUBST(LBL_LIBS) AC_PROG_INSTALL AC_OUTPUT(Makefile) if test ! -f arp.dat ; then echo 'creating empty arp.dat file' touch arp.dat fi if test -f .devel ; then make depend fi exit 0 arpwatch-2.1a15/d.awk0100444000177400000340000000047310462533724013645 0ustar leressunsrc# DECnet hacking BEGIN { n = 0 sdecnet = "aa:0:4:" ldecnet = length(sdecnet) } { ++n e[n] = $1 h[n] = $2 if (sdecnet == substr($1, 1, ldecnet)) decnet[$2] = 1 } END { for (i = 1; i <= n; ++i) { if (decnet[h[i]] && sdecnet != substr(e[i], 1, ldecnet)) h[i] = h[i] "-ip" print e[i] "\t" h[i] } } arpwatch-2.1a15/db.c0100444000177400000340000002157007165474716013463 0ustar leressunsrc/* * Copyright (c) 1990, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ #ifndef lint static const char rcsid[] = "@(#) $Id: db.c,v 1.34 2000/09/30 23:39:57 leres Exp $ (LBL)"; #endif /* * db - arpwatch database routines */ #include #include #include #ifdef HAVE_MEMORY_H #include #endif #include #include #include #include #include #include #include "gnuc.h" #ifdef HAVE_OS_PROTO_H #include "os-proto.h" #endif #include "arpwatch.h" #include "db.h" #include "dns.h" #include "ec.h" #include "report.h" #include "util.h" #define HASHSIZE (2 << 15) #define NEWACTIVITY_DELTA (6*30*24*60*60) /* 6 months in seconds */ #define FLIPFLIP_DELTA (24*60*60) /* 24 hours in seconds */ /* Ethernet info */ struct einfo { u_char e[6]; /* ether address */ char h[34]; /* simple hostname */ time_t t; /* timestamp */ }; /* Address info */ struct ainfo { u_int32_t a; /* ip address */ struct einfo **elist; /* array of pointers */ int ecount; /* elements in use of elist */ int esize; /* size of elist */ struct ainfo *next; }; /* Address hash table */ static struct ainfo ainfo_table[HASHSIZE]; static void alist_alloc(struct ainfo *); int cmpeinfo(const void *, const void *); static struct einfo *elist_alloc(u_int32_t, u_char *, time_t, char *); static struct ainfo *ainfo_find(u_int32_t); static void check_hname(struct ainfo *); struct ainfo *newainfo(void); int ent_add(register u_int32_t a, register u_char *e, time_t t, register char *h) { register struct ainfo *ap; register struct einfo *ep; register int i; register u_int len; u_char *e2; time_t t2; /* Lookup ip address */ ap = ainfo_find(a); /* Check for the usual case first */ if (ap->ecount > 0) { ep = ap->elist[0]; if (MEMCMP(e, ep->e, 6) == 0) { if (t - ep->t > NEWACTIVITY_DELTA) { report("new activity", a, e, NULL, &t, &ep->t); check_hname(ap); } ep->t = t; return (1); } } /* Check for a virgin ainfo record */ if (ap->ecount == 0) { ap->ecount = 1; ap->elist[0] = elist_alloc(a, e, t, h); report("new station", a, e, NULL, &t, NULL); return (1); } /* Check for a flip-flop */ if (ap->ecount > 1) { ep = ap->elist[1]; if (MEMCMP(e, ep->e, 6) == 0) { /* * Suppress report when less than * FLIPFLOP_DELTA and one of the two ethernet * addresses is a DECnet logical. */ t2 = ap->elist[0]->t; e2 = ap->elist[0]->e; if (t - t2 < FLIPFLIP_DELTA && (isdecnet(e) || isdecnet(e2))) dosyslog(LOG_INFO, "suppressed DECnet flip flop", a, e, e2); else report("flip flop", a, e, e2, &t, &t2); ap->elist[1] = ap->elist[0]; ap->elist[0] = ep; ep->t = t; check_hname(ap); return (1); } } for (i = 2; i < ap->ecount; ++i) { ep = ap->elist[i]; if (MEMCMP(e, ep->e, 6) == 0) { /* An old entry comes to life */ e2 = ap->elist[0]->e; t2 = ap->elist[0]->t; dosyslog(LOG_NOTICE, "reused old ethernet address", a, e, e2); /* Shift entries down */ len = i * sizeof(ap->elist[0]); BCOPY(&ap->elist[0], &ap->elist[1], len); ap->elist[0] = ep; ep->t = t; check_hname(ap); return (1); } } /* New ether address */ e2 = ap->elist[0]->e; t2 = ap->elist[0]->t; report("changed ethernet address", a, e, e2, &t, &t2); /* Make room at head of list */ alist_alloc(ap); len = ap->ecount * sizeof(ap->elist[0]); BCOPY(&ap->elist[0], &ap->elist[1], len); ap->elist[0] = elist_alloc(a, e, t, h); ++ap->ecount; return (1); } static struct ainfo * ainfo_find(register u_int32_t a) { register u_int size; register struct ainfo *ap; ap = &ainfo_table[a & (HASHSIZE - 1)]; for (;;) { if (ap->esize == 0) { /* Emtpy cell; use it */ ap->a = a; break; } if (a == ap->a) break; if (ap->next != NULL) { /* Try linked cell */ ap = ap->next; continue; } /* We collided, allocate new struct */ ap->next = newainfo(); ap = ap->next; ap->a = a; break; } if (ap->esize == 0) { ap->esize = 2; size = sizeof(ap->elist[0]) * ap->esize; ap->elist = (struct einfo **)malloc(size); if (ap->elist == NULL) { syslog(LOG_ERR, "ainfo_find(): malloc: %m"); exit(1); } MEMSET(ap->elist, 0, size); } return (ap); } int ent_loop(ent_process fn) { register int i, j, n; register struct ainfo *ap; register struct einfo *ep; n = 0; for (i = 0; i < HASHSIZE; ++i) for (ap = &ainfo_table[i]; ap != NULL; ap = ap->next) for (j = 0; j < ap->ecount; ++j) { ep = ap->elist[j]; (*fn)(ap->a, ep->e, ep->t, ep->h); ++n; } return (n); } /* Insure enough room for at least one more einfo pointer */ static void alist_alloc(register struct ainfo *ap) { register u_int size; if (ap->esize == 0) { syslog(LOG_ERR, "alist_alloc(): esize 0, can't happen"); exit(1); } if (ap->ecount < ap->esize) return; ap->esize += 2; size = ap->esize * sizeof(ap->elist[0]); ap->elist = (struct einfo **)realloc(ap->elist, size); if (ap->elist == NULL) { syslog(LOG_ERR, "alist_alloc(): realloc(): %m"); exit(1); } size = (ap->esize - ap->ecount) * sizeof(ap->elist[0]); MEMSET(&ap->elist[ap->ecount], 0, size); } /* Allocate and initialize a elist struct */ static struct einfo * elist_alloc(register u_int32_t a, register u_char *e, register time_t t, register char *h) { register struct einfo *ep; register u_int size; static struct einfo *elist = NULL; static int eleft = 0; if (eleft <= 0) { /* Allocate some more */ eleft = 16; size = eleft * sizeof(struct einfo); elist = (struct einfo *)malloc(size); if (elist == NULL) { syslog(LOG_ERR, "elist_alloc(): malloc: %m"); exit(1); } MEMSET(elist, 0, size); } ep = elist++; --eleft; BCOPY(e, ep->e, 6); if (h == NULL && !initializing) h = getsname(a); if (h != NULL && !isdigit((int)*h)) strcpy(ep->h, h); ep->t = t; return (ep); } /* Check to see if the simple hostname needs updating; syslog if so */ static void check_hname(register struct ainfo *ap) { register struct einfo *ep; register char *h; /* Don't waste time if we're loading the initial arp.dat */ if (initializing) return; ep = ap->elist[0]; h = getsname(ap->a); if (!isdigit((int)*h) && strcmp(h, ep->h) != 0) { syslog(LOG_INFO, "hostname changed %s %s %s -> %s", intoa(ap->a), e2str(ep->e), ep->h, h); strcpy(ep->h, h); } } int cmpeinfo(register const void *p1, register const void *p2) { register time_t t1, t2; t1 = (*(struct einfo **)p1)->t; t2 = (*(struct einfo **)p2)->t; if (t1 > t2) return (-1); if (t1 < t2) return (1); return (0); } void sorteinfo(void) { register int i; register struct ainfo *ap; for (i = 0; i < HASHSIZE; ++i) for (ap = &ainfo_table[i]; ap != NULL; ap = ap->next) if (ap->ecount > 0) qsort(ap->elist, ap->ecount, sizeof(ap->elist[0]), cmpeinfo); } struct ainfo * newainfo(void) { register struct ainfo *ap; register u_int size; static struct ainfo *ainfoptr = NULL; static u_int ainfosize = 0; if (ainfosize == 0) { ainfosize = 512; size = ainfosize * sizeof(*ap); ap = (struct ainfo *)malloc(size); if (ap == NULL) { syslog(LOG_ERR, "newainfo(): malloc: %m"); exit(1); } memset((char *)ap, 0, size); ainfoptr = ap; } ap = ainfoptr++; --ainfosize; return (ap); } #ifdef DEBUG void debugdump(void) { register int i, j; register time_t t; register struct ainfo *ap; register struct einfo *ep; for (i = 0; i < HASHSIZE; ++i) for (ap = &ainfo_table[i]; ap != NULL; ap = ap->next) { if (ap->esize == 0) continue; if (ap->ecount == 0) { printf("%s\n", intoa(ap->a)); continue; } t = 0; for (j = 0; j < ap->ecount; ++j) { ep = ap->elist[j]; if (t != 0 && t < ep->t) printf("*"); printf("%s\t%s\t%u\t%s\n", intoa(ap->a), e2str(ep->e), (u_int)ep->t, ep->h); t = ep->t; } } } #endif arpwatch-2.1a15/db.h0100444000177400000340000000042406155216622013447 0ustar leressunsrc/* @(#) $Header: db.h,v 1.8 96/06/04 22:39:29 leres Exp $ (LBL) */ typedef void (*ent_process)(u_int32_t, u_char *, time_t, char *); #ifdef DEBUG void debugdump(void); #endif int ent_add(u_int32_t, u_char *, time_t, char *); int ent_loop(ent_process); void sorteinfo(void); arpwatch-2.1a15/dns.c0100444000177400000340000000766707171735774013676 0ustar leressunsrc/* * Copyright (c) 1992, 1993, 1994, 1995, 1996, 1998, 2000 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ #ifndef lint static const char rcsid[] = "@(#) $Id: dns.c,v 1.15 2000/09/30 23:40:40 leres Exp $ (LBL)"; #endif /* * dns - domain name system routines */ #include #include #include #include #include #include #ifdef HAVE_MEMORY_H #include #endif #include #include #include #include #include "gnuc.h" #ifdef HAVE_OS_PROTO_H #include "os-proto.h" #endif #include "arpwatch.h" #include "dns.h" #ifdef HAVE_DN_SKIPNAME #ifndef BUFSIZ #define BUFSIZ 1024 #endif static char hostbuf[BUFSIZ+1]; #if PACKETSZ > 1024 #define MAXPACKET PACKETSZ #else #define MAXPACKET 1024 #endif typedef union { HEADER hdr; u_char buf[MAXPACKET]; } querybuf; #endif int gethinfo(register char *hostname, register char *cpu, register int cpulen, register char *os, register int oslen) { #ifdef HAVE_DN_SKIPNAME register querybuf *qb; register u_char *cp, *eom; register char *bp; register int n; register HEADER *hp; register int type, class, buflen, ancount, qdcount; querybuf qbuf; qb = &qbuf; n = res_query(hostname, C_IN, T_HINFO, qb->buf, sizeof(qb->buf)); if (n < 0) return (0); eom = qb->buf + n; /* * find first satisfactory answer */ hp = &qb->hdr; ancount = ntohs(hp->ancount); qdcount = ntohs(hp->qdcount); bp = hostbuf; buflen = sizeof(hostbuf); cp = qb->buf + sizeof(HEADER); if (qdcount) { cp += dn_skipname(cp, eom) + QFIXEDSZ; while (--qdcount > 0) cp += dn_skipname(cp, eom) + QFIXEDSZ; } while (--ancount >= 0 && cp < eom) { if ((n = dn_expand((u_char *)qb->buf, (u_char *)eom, (u_char *)cp, (u_char *)bp, buflen)) < 0) break; cp += n; type = _getshort(cp); cp += sizeof(u_short); class = _getshort(cp); cp += sizeof(u_short) + sizeof(u_int32_t); n = _getshort(cp); cp += sizeof(u_short); if (type == T_HINFO) { /* Unpack */ n = *cp++; if (n > cpulen - 1) return (0); BCOPY(cp, cpu, n); cp += n; cpu[n] = '\0'; n = *cp++; if (n > oslen - 1) return (0); BCOPY(cp, os, n); os[n] = '\0'; return (1); } /* Skip unexpected junk */ cp += n; } #endif return (0); } /* Return the cannonical name of the host */ char * gethname(u_int32_t a) { register int32_t options; register struct hostent *hp; options = _res.options; _res.options |= RES_AAONLY; _res.options &= ~(RES_DEFNAMES | RES_DNSRCH); hp = gethostbyaddr((char *)&a, sizeof(a), AF_INET); _res.options = options; if (hp == NULL) return (intoa(a)); return (hp->h_name); } /* Return the simple name of the host */ char * getsname(register u_int32_t a) { register char *s, *cp; s = gethname(a); if (!isdigit((int)*s)) { cp = strchr(s, '.'); if (cp != NULL) *cp = '\0'; } return (s); } arpwatch-2.1a15/dns.h0100444000177400000340000000025306155216727013654 0ustar leressunsrc/* @(#) $Header: dns.h,v 1.4 96/06/04 22:40:38 leres Exp $ (LBL) */ int gethinfo(char *, char *, int, char *, int); char *gethname(u_int32_t); char *getsname(u_int32_t); arpwatch-2.1a15/duplicates.awk0100644000177400000340000000051507161234362015554 0ustar leressunsrc# combine company info for duplciate vendor codes BEGIN { str = "" lastv = "" } { v = $1 if (v == lastv) { i = index($0, " ") # XXX probably can't happen if (i <= 0) i = 0 str = str " *also* " substr($0, i + 1) } else { if (str != "") print str str = $0 } lastv = v } END { if (str != "") print str } arpwatch-2.1a15/e.awk0100444000177400000340000000033305456461171013644 0ustar leressunsrc# Add -old suffix to ethers file, as required. Assumed sorted input { if (!seen[$2]) { seen[$2] = 1 print next } h = $2 "-old" s = h for (n = 1; seen[h]; ++n) h = s n seen[h] = 1 print $1 "\t" h next } arpwatch-2.1a15/ec.c0100444000177400000340000001144207171710554013450 0ustar leressunsrc/* * Copyright (c) 1990, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ #ifndef lint static const char rcsid[] = "@(#) $Id: ec.c,v 1.28 2000/10/13 22:49:15 leres Exp $ (LBL)"; #endif /* * ec - manufactures ethernet code routines */ #include #include #include #if __STDC__ struct mbuf; struct rtentry; #endif #include #include #include #include #ifdef HAVE_MEMORY_H #include #endif #include #include #include #include #include "gnuc.h" #ifdef HAVE_OS_PROTO_H #include "os-proto.h" #endif #include "arpwatch.h" #include "ec.h" #include "util.h" /* Basic data structure */ struct ecent { u_int32_t o; /* first 3 octets */ char *text; /* associated text */ }; static struct ecent *list; static u_int ec_last = 0; static u_int ec_len = 0; /* Forwards */ static int ec_a2o(char *, u_int32_t *); /* Convert an 3 octets from an ethernet address to a u_int32_t */ static int ec_a2o(register char *cp, register u_int32_t *op) { char xbuf[128]; u_char e[6]; (void)sprintf(xbuf, "%.32s:0:0:0", cp); if (!str2e(xbuf, e)) return (0); *op = 0; BCOPY(e, op, 3); return (1); } /* Add a ethernet code to the database */ int ec_add(register u_int32_t o, register char *text) { if (ec_last >= ec_len) { if (list == NULL) { ec_len = 512; list = malloc(ec_len * sizeof(*list)); } else { ec_len *= 2; list = realloc(list, ec_len * sizeof(*list)); } if (list == NULL) { syslog(LOG_ERR, "ec_add(): malloc: %m"); exit(1); } } list[ec_last].o = o; list[ec_last].text = savestr(text); ++ec_last; return (1); } /* Find the manufacture for a given ethernet address */ char * ec_find(register u_char *e) { u_int32_t o; register int i; o = 0; BCOPY(e, &o, 3); for (i = 0; i < ec_last; ++i) if (list[i].o == o) return (list[i].text); return (NULL); } /* Loop through the ethernet code database */ int ec_loop(register FILE *f, ec_process fn, register const char *nm) { register int n; register char *cp, *cp2, *text; register int sawblank; u_int32_t o; char line[1024]; n = 0; while (fgets(line, sizeof(line), f)) { ++n; cp = line; cp2 = cp + strlen(cp) - 1; if (cp2 >= cp && *cp2 == '\n') *cp2++ = '\0'; if (*cp == '#') continue; if ((cp2 = strchr(cp, '\t')) == 0) { syslog(LOG_ERR, "ec_loop(): %s:%d missing tab", nm, n); continue; } /* 3 octets come first */ *cp2++ = '\0'; text = cp2; if (!ec_a2o(cp, &o)) { syslog(LOG_ERR, "ec_loop(): %s:%d bad octets", nm, n); continue; } /* Compress blanks */ cp = cp2 = text; sawblank = 0; while (*cp != '\0') { if (sawblank) { *cp2++ = ' '; sawblank = 0; } *cp2++ = *cp++; while (isspace((int)*cp)) { ++cp; sawblank = 1; } } *cp2 = '\0'; if (!(*fn)(o, text)) return (0); } return (1); } /* DECnet local logical address prefix */ static u_char decnet[3] = { 0xaa, 0x0, 0x4 }; /* Returns true if an ethernet address is decnet, else false */ int isdecnet(register u_char *e) { return (MEMCMP(e, decnet, sizeof(decnet)) == 0); } /* Convert an ascii ethernet string to ethernet address */ int str2e(register char *str, register u_char *e) { register int i; u_int n[6]; MEMSET(n, 0, sizeof(n)); if (sscanf(str, "%x:%x:%x:%x:%x:%x", &n[0], &n[1], &n[2], &n[3], &n[4], &n[5]) != 6) return (0); for (i = 0; i < 6; ++i) { if (n[i] > 0xff) return (0); e[i] = n[i]; } return (1); } /* Convert an ethernet address to an ascii ethernet string */ char * e2str(register u_char *e) { static char str[32]; (void)sprintf(str, "%x:%x:%x:%x:%x:%x", e[0], e[1], e[2], e[3], e[4], e[5]); return (str); } arpwatch-2.1a15/ec.h0100444000177400000340000000044407171710546013456 0ustar leressunsrc/* @(#) $Id: ec.h,v 1.9 2000/10/13 22:49:07 leres Exp $ (LBL) */ typedef int (*ec_process)(u_int32_t, char *); char *e2str(u_char *); int ec_add(u_int32_t, char *); char *ec_find(u_char *); int ec_loop(FILE *, ec_process, const char *); int isdecnet(u_char *); int str2e(char *, u_char *); arpwatch-2.1a15/ethercodes.dat0100444000177400000340000101711610460466055015540 0ustar leressunsrc0:0:0 XEROX CORPORATION 0:0:1 XEROX CORPORATION 0:0:10 SYTEK INC. 0:0:11 NORMEREL SYSTEMES 0:0:12 INFORMATION TECHNOLOGY LIMITED 0:0:13 CAMEX 0:0:14 NETRONIX 0:0:15 DATAPOINT CORPORATION 0:0:16 DU PONT PIXEL SYSTEMS . 0:0:17 TEKELEC 0:0:18 WEBSTER COMPUTER CORPORATION 0:0:19 APPLIED DYNAMICS INTERNATIONAL 0:0:1a ADVANCED MICRO DEVICES 0:0:1b NOVELL INC. 0:0:1c BELL TECHNOLOGIES 0:0:1d CABLETRON SYSTEMS, INC. 0:0:1e TELSIST INDUSTRIA ELECTRONICA 0:0:1f Telco Systems, Inc. 0:0:2 XEROX CORPORATION 0:0:20 DATAINDUSTRIER DIAB AB 0:0:21 SUREMAN COMP. & COMMUN. CORP. 0:0:22 VISUAL TECHNOLOGY INC. 0:0:23 ABB INDUSTRIAL SYSTEMS AB 0:0:24 CONNECT AS 0:0:25 RAMTEK CORP. 0:0:26 SHA-KEN CO., LTD. 0:0:27 JAPAN RADIO COMPANY 0:0:28 PRODIGY SYSTEMS CORPORATION 0:0:29 IMC NETWORKS CORP. 0:0:2a TRW - SEDD/INP 0:0:2b CRISP AUTOMATION, INC 0:0:2c AUTOTOTE LIMITED 0:0:2d CHROMATICS INC 0:0:2e SOCIETE EVIRA 0:0:2f TIMEPLEX INC. 0:0:3 XEROX CORPORATION 0:0:30 VG LABORATORY SYSTEMS LTD 0:0:31 QPSX COMMUNICATIONS PTY LTD 0:0:32 Marconi plc 0:0:33 EGAN MACHINERY COMPANY 0:0:34 NETWORK RESOURCES CORPORATION 0:0:35 SPECTRAGRAPHICS CORPORATION 0:0:36 ATARI CORPORATION 0:0:37 OXFORD METRICS LIMITED 0:0:38 CSS LABS 0:0:39 TOSHIBA CORPORATION 0:0:3a CHYRON CORPORATION 0:0:3b i Controls, Inc. 0:0:3c AUSPEX SYSTEMS INC. 0:0:3d UNISYS 0:0:3e SIMPACT 0:0:3f SYNTREX, INC. 0:0:4 XEROX CORPORATION 0:0:40 APPLICON, INC. 0:0:41 ICE CORPORATION 0:0:42 METIER MANAGEMENT SYSTEMS LTD. 0:0:43 MICRO TECHNOLOGY 0:0:44 CASTELLE CORPORATION 0:0:45 FORD AEROSPACE & COMM. CORP. 0:0:46 OLIVETTI NORTH AMERICA 0:0:47 NICOLET INSTRUMENTS CORP. 0:0:48 SEIKO EPSON CORPORATION 0:0:49 APRICOT COMPUTERS, LTD 0:0:4a ADC CODENOLL TECHNOLOGY CORP. 0:0:4b ICL DATA OY 0:0:4c NEC CORPORATION 0:0:4d DCI CORPORATION 0:0:4e AMPEX CORPORATION 0:0:4f LOGICRAFT, INC. 0:0:5 XEROX CORPORATION 0:0:50 RADISYS CORPORATION 0:0:51 HOB ELECTRONIC GMBH & CO. KG 0:0:52 Intrusion.com, Inc. 0:0:53 COMPUCORP 0:0:54 MODICON, INC. 0:0:55 COMMISSARIAT A L`ENERGIE ATOM. 0:0:56 DR. B. STRUCK 0:0:57 SCITEX CORPORATION LTD. 0:0:58 RACORE COMPUTER PRODUCTS INC. 0:0:59 HELLIGE GMBH 0:0:5a SysKonnect GmbH 0:0:5b ELTEC ELEKTRONIK AG 0:0:5c TELEMATICS INTERNATIONAL INC. 0:0:5d CS TELECOM 0:0:5e USC INFORMATION SCIENCES INST 0:0:5f SUMITOMO ELECTRIC IND., LTD. 0:0:6 XEROX CORPORATION 0:0:60 KONTRON ELEKTRONIK GMBH 0:0:61 GATEWAY COMMUNICATIONS 0:0:62 BULL HN INFORMATION SYSTEMS 0:0:63 BARCO CONTROL ROOMS GMBH 0:0:64 YOKOGAWA DIGITAL COMPUTER CORP 0:0:65 Network General Corporation 0:0:66 TALARIS SYSTEMS, INC. 0:0:67 SOFT * RITE, INC. 0:0:68 ROSEMOUNT CONTROLS 0:0:69 CONCORD COMMUNICATIONS INC 0:0:6a COMPUTER CONSOLES INC. 0:0:6b SILICON GRAPHICS INC./MIPS 0:0:6c PRIVATE 0:0:6d CRAY COMMUNICATIONS, LTD. 0:0:6e ARTISOFT, INC. 0:0:6f Madge Ltd. 0:0:7 XEROX CORPORATION 0:0:70 HCL LIMITED 0:0:71 ADRA SYSTEMS INC. 0:0:72 MINIWARE TECHNOLOGY 0:0:73 SIECOR CORPORATION 0:0:74 RICOH COMPANY LTD. 0:0:75 Nortel Networks 0:0:76 ABEKAS VIDEO SYSTEM 0:0:77 INTERPHASE CORPORATION 0:0:78 LABTAM LIMITED 0:0:79 NETWORTH INCORPORATED 0:0:7a DANA COMPUTER INC. 0:0:7b RESEARCH MACHINES 0:0:7c AMPERE INCORPORATED 0:0:7d SUN MICROSYSTEMS, INC. 0:0:7e CLUSTRIX CORPORATION 0:0:7f LINOTYPE-HELL AG 0:0:8 XEROX CORPORATION 0:0:80 CRAY COMMUNICATIONS A/S 0:0:81 BAY NETWORKS 0:0:82 LECTRA SYSTEMES SA 0:0:83 TADPOLE TECHNOLOGY PLC 0:0:84 SUPERNET 0:0:85 CANON INC. 0:0:86 MEGAHERTZ CORPORATION 0:0:87 HITACHI, LTD. 0:0:88 COMPUTER NETWORK TECH. CORP. 0:0:89 CAYMAN SYSTEMS INC. 0:0:8a DATAHOUSE INFORMATION SYSTEMS 0:0:8b INFOTRON 0:0:8c Alloy Computer Products (Australia) Pty Ltd 0:0:8d VERDIX CORPORATION 0:0:8e SOLBOURNE COMPUTER, INC. 0:0:8f RAYTHEON COMPANY 0:0:9 XEROX CORPORATION 0:0:90 MICROCOM 0:0:91 ANRITSU CORPORATION 0:0:92 COGENT DATA TECHNOLOGIES 0:0:93 PROTEON INC. 0:0:94 ASANTE TECHNOLOGIES 0:0:95 SONY TEKTRONIX CORP. 0:0:96 MARCONI ELECTRONICS LTD. 0:0:97 EPOCH SYSTEMS 0:0:98 CROSSCOMM CORPORATION 0:0:99 MTX, INC. 0:0:9a RC COMPUTER A/S 0:0:9b INFORMATION INTERNATIONAL, INC 0:0:9c ROLM MIL-SPEC COMPUTERS 0:0:9d LOCUS COMPUTING CORPORATION 0:0:9e MARLI S.A. 0:0:9f AMERISTAR TECHNOLOGIES INC. 0:0:a OMRON TATEISI ELECTRONICS CO. 0:0:a0 SANYO Electric Co., Ltd. 0:0:a1 MARQUETTE ELECTRIC CO. 0:0:a2 BAY NETWORKS 0:0:a3 NETWORK APPLICATION TECHNOLOGY 0:0:a4 ACORN COMPUTERS LIMITED 0:0:a5 COMPATIBLE SYSTEMS CORP. 0:0:a6 NETWORK GENERAL CORPORATION 0:0:a7 NETWORK COMPUTING DEVICES INC. 0:0:a8 STRATUS COMPUTER INC. 0:0:a9 NETWORK SYSTEMS CORP. 0:0:aa XEROX CORPORATION 0:0:ab LOGIC MODELING CORPORATION 0:0:ac CONWARE COMPUTER CONSULTING 0:0:ad BRUKER INSTRUMENTS INC. 0:0:ae DASSAULT ELECTRONIQUE 0:0:af NUCLEAR DATA INSTRUMENTATION 0:0:b MATRIX CORPORATION 0:0:b0 RND-RAD NETWORK DEVICES 0:0:b1 ALPHA MICROSYSTEMS INC. 0:0:b2 TELEVIDEO SYSTEMS, INC. 0:0:b3 CIMLINC INCORPORATED 0:0:b4 EDIMAX COMPUTER COMPANY 0:0:b5 DATABILITY SOFTWARE SYS. INC. 0:0:b6 MICRO-MATIC RESEARCH 0:0:b7 DOVE COMPUTER CORPORATION 0:0:b8 SEIKOSHA CO., LTD. 0:0:b9 MCDONNELL DOUGLAS COMPUTER SYS 0:0:ba SIIG, INC. 0:0:bb TRI-DATA 0:0:bc ALLEN-BRADLEY CO. INC. 0:0:bd MITSUBISHI CABLE COMPANY 0:0:be THE NTI GROUP 0:0:bf SYMMETRIC COMPUTER SYSTEMS 0:0:c CISCO SYSTEMS, INC. 0:0:c0 WESTERN DIGITAL CORPORATION 0:0:c1 Madge Ltd. 0:0:c2 INFORMATION PRESENTATION TECH. 0:0:c3 HARRIS CORP COMPUTER SYS DIV 0:0:c4 WATERS DIV. OF MILLIPORE 0:0:c5 FARALLON COMPUTING/NETOPIA 0:0:c6 EON SYSTEMS 0:0:c7 ARIX CORPORATION 0:0:c8 ALTOS COMPUTER SYSTEMS 0:0:c9 EMULEX CORPORATION 0:0:ca ARRIS International 0:0:cb COMPU-SHACK ELECTRONIC GMBH 0:0:cc DENSAN CO., LTD. 0:0:cd Allied Telesyn Research Ltd. 0:0:ce MEGADATA CORP. 0:0:cf HAYES MICROCOMPUTER PRODUCTS 0:0:d FIBRONICS LTD. 0:0:d0 DEVELCON ELECTRONICS LTD. 0:0:d1 ADAPTEC INCORPORATED 0:0:d2 SBE, INC. 0:0:d3 WANG LABORATORIES INC. 0:0:d4 PURE DATA LTD. 0:0:d5 MICROGNOSIS INTERNATIONAL 0:0:d6 PUNCH LINE HOLDING 0:0:d7 DARTMOUTH COLLEGE 0:0:d8 NOVELL, INC. 0:0:d9 NIPPON TELEGRAPH & TELEPHONE 0:0:da ATEX 0:0:db BRITISH TELECOMMUNICATIONS PLC 0:0:dc HAYES MICROCOMPUTER PRODUCTS 0:0:dd TCL INCORPORATED 0:0:de CETIA 0:0:df BELL & HOWELL PUB SYS DIV 0:0:e FUJITSU LIMITED 0:0:e0 QUADRAM CORP. 0:0:e1 GRID SYSTEMS 0:0:e2 ACER TECHNOLOGIES CORP. 0:0:e3 INTEGRATED MICRO PRODUCTS LTD 0:0:e4 IN2 GROUPE INTERTECHNIQUE 0:0:e5 SIGMEX LTD. 0:0:e6 APTOR PRODUITS DE COMM INDUST 0:0:e7 STAR GATE TECHNOLOGIES 0:0:e8 ACCTON TECHNOLOGY CORP. 0:0:e9 ISICAD, INC. 0:0:ea UPNOD AB 0:0:eb MATSUSHITA COMM. IND. CO. LTD. 0:0:ec MICROPROCESS 0:0:ed APRIL 0:0:ee NETWORK DESIGNERS, LTD. 0:0:ef KTI 0:0:f NEXT, INC. 0:0:f0 SAMSUNG ELECTRONICS CO., LTD. 0:0:f1 MAGNA COMPUTER CORPORATION 0:0:f2 SPIDER COMMUNICATIONS 0:0:f3 GANDALF DATA LIMITED 0:0:f4 ALLIED TELESYN INTERNATIONAL 0:0:f5 DIAMOND SALES LIMITED 0:0:f6 APPLIED MICROSYSTEMS CORP. 0:0:f7 YOUTH KEEP ENTERPRISE CO LTD 0:0:f8 DIGITAL EQUIPMENT CORPORATION 0:0:f9 QUOTRON SYSTEMS INC. 0:0:fa MICROSAGE COMPUTER SYSTEMS INC 0:0:fb RECHNER ZUR KOMMUNIKATION 0:0:fc MEIKO 0:0:fd HIGH LEVEL HARDWARE 0:0:fe ANNAPOLIS MICRO SYSTEMS 0:0:ff CAMTEC ELECTRONICS LTD. 0:10:0 CABLE TELEVISION LABORATORIES, INC. 0:10:1 MCK COMMUNICATIONS 0:10:10 INITIO CORPORATION 0:10:11 CISCO SYSTEMS, INC. 0:10:12 PROCESSOR SYSTEMS (I) PVT LTD 0:10:13 Kontron 0:10:14 CISCO SYSTEMS, INC. 0:10:15 OOmon Inc. 0:10:16 T.SQWARE 0:10:17 MICOS GmbH 0:10:18 BROADCOM CORPORATION 0:10:19 SIRONA DENTAL SYSTEMS GmbH & Co. KG 0:10:1a PictureTel Corp. 0:10:1b CORNET TECHNOLOGY, INC. 0:10:1c OHM TECHNOLOGIES INTL, LLC 0:10:1d WINBOND ELECTRONICS CORP. 0:10:1e MATSUSHITA ELECTRONIC INSTRUMENTS CORP. 0:10:1f CISCO SYSTEMS, INC. 0:10:2 ACTIA 0:10:20 WELCH ALLYN, DATA COLLECTION 0:10:21 ENCANTO NETWORKS, INC. 0:10:22 SatCom Media Corporation 0:10:23 FLOWWISE NETWORKS, INC. 0:10:24 NAGOYA ELECTRIC WORKS CO., LTD 0:10:25 GRAYHILL INC. 0:10:26 ACCELERATED NETWORKS, INC. 0:10:27 L-3 COMMUNICATIONS EAST 0:10:28 COMPUTER TECHNICA, INC. 0:10:29 CISCO SYSTEMS, INC. 0:10:2a ZF MICROSYSTEMS, INC. 0:10:2b UMAX DATA SYSTEMS, INC. 0:10:2c Lasat Networks A/S 0:10:2d HITACHI SOFTWARE ENGINEERING 0:10:2e NETWORK SYSTEMS & TECHNOLOGIES PVT. LTD. 0:10:2f CISCO SYSTEMS, INC. 0:10:3 IMATRON, INC. 0:10:30 EION Inc. 0:10:31 OBJECTIVE COMMUNICATIONS, INC. 0:10:32 ALTA TECHNOLOGY 0:10:33 ACCESSLAN COMMUNICATIONS, INC. 0:10:34 GNP Computers 0:10:35 ELITEGROUP COMPUTER SYSTEMS CO., LTD 0:10:36 INTER-TEL INTEGRATED SYSTEMS 0:10:37 CYQ've Technology Co., Ltd. 0:10:38 MICRO RESEARCH INSTITUTE, INC. 0:10:39 Vectron Systems AG 0:10:3a DIAMOND NETWORK TECH 0:10:3b HIPPI NETWORKING FORUM 0:10:3c IC ENSEMBLE, INC. 0:10:3d PHASECOM, LTD. 0:10:3e NETSCHOOLS CORPORATION 0:10:3f TOLLGRADE COMMUNICATIONS, INC. 0:10:4 THE BRANTLEY COILE COMPANY,INC 0:10:40 INTERMEC CORPORATION 0:10:41 BRISTOL BABCOCK, INC. 0:10:42 AlacriTech 0:10:43 A2 CORPORATION 0:10:44 InnoLabs Corporation 0:10:45 Nortel Networks 0:10:46 ALCORN MCBRIDE INC. 0:10:47 ECHO ELETRIC CO. LTD. 0:10:48 HTRC AUTOMATION, INC. 0:10:49 SHORELINE TELEWORKS, INC. 0:10:4a THE PARVUC CORPORATION 0:10:4b 3COM CORPORATION 0:10:4c COMPUTER ACCESS TECHNOLOGY 0:10:4d SURTEC INDUSTRIES, INC. 0:10:4e CEOLOGIC 0:10:4f STORAGE TECHNOLOGY CORPORATION 0:10:5 UEC COMMERCIAL 0:10:50 RION CO., LTD. 0:10:51 CMICRO CORPORATION 0:10:52 METTLER-TOLEDO (ALBSTADT) GMBH 0:10:53 COMPUTER TECHNOLOGY CORP. 0:10:54 CISCO SYSTEMS, INC. 0:10:55 FUJITSU MICROELECTRONICS, INC. 0:10:56 SODICK CO., LTD. 0:10:57 Rebel.com, Inc. 0:10:58 ArrowPoint Communications 0:10:59 DIABLO RESEARCH CO. LLC 0:10:5a 3COM CORPORATION 0:10:5b NET INSIGHT AB 0:10:5c QUANTUM DESIGNS (H.K.) LTD. 0:10:5d Draeger Medical 0:10:5e HEKIMIAN LABORATORIES, INC. 0:10:5f IN-SNEC 0:10:6 Thales Contact Solutions Ltd. 0:10:60 BILLIONTON SYSTEMS, INC. 0:10:61 HOSTLINK CORP. 0:10:62 NX SERVER, ILNC. 0:10:63 STARGUIDE DIGITAL NETWORKS 0:10:64 DNPG, LLC 0:10:65 RADYNE CORPORATION 0:10:66 ADVANCED CONTROL SYSTEMS, INC. 0:10:67 REDBACK NETWORKS, INC. 0:10:68 COMOS TELECOM 0:10:69 HELIOSS COMMUNICATIONS, INC. 0:10:6a DIGITAL MICROWAVE CORPORATION 0:10:6b SONUS NETWORKS, INC. 0:10:6c INFRATEC PLUS GmbH 0:10:6d INTEGRITY COMMUNICATIONS, INC. 0:10:6e TADIRAN COM. LTD. 0:10:6f TRENTON TECHNOLOGY INC. 0:10:7 CISCO SYSTEMS, INC. 0:10:70 CARADON TREND LTD. 0:10:71 ADVANET INC. 0:10:72 GVN TECHNOLOGIES, INC. 0:10:73 TECHNOBOX, INC. 0:10:74 ATEN INTERNATIONAL CO., LTD. 0:10:75 Maxtor Corporation 0:10:76 EUREM GmbH 0:10:77 SAF DRIVE SYSTEMS, LTD. 0:10:78 NUERA COMMUNICATIONS, INC. 0:10:79 CISCO SYSTEMS, INC. 0:10:7a AmbiCom, Inc. 0:10:7b CISCO SYSTEMS, INC. 0:10:7c P-COM, INC. 0:10:7d AURORA COMMUNICATIONS, LTD. 0:10:7e BACHMANN ELECTRONIC GmbH 0:10:7f CRESTRON ELECTRONICS, INC. 0:10:8 VIENNA SYSTEMS CORPORATION 0:10:80 METAWAVE COMMUNICATIONS 0:10:81 DPS, INC. 0:10:82 JNA TELECOMMUNICATIONS LIMITED 0:10:83 HEWLETT-PACKARD COMPANY 0:10:84 K-BOT COMMUNICATIONS 0:10:85 POLARIS COMMUNICATIONS, INC. 0:10:86 ATTO TECHNOLOGY, INC. 0:10:87 Xstreamis PLC 0:10:88 AMERICAN NETWORKS INC. 0:10:89 WebSonic 0:10:8a TeraLogic, Inc. 0:10:8b LASERANIMATION SOLLINGER GmbH 0:10:8c FUJITSU TELECOMMUNICATIONS EUROPE, LTD. 0:10:8d JOHNSON CONTROLS, INC. 0:10:8e HUGH SYMONS CONCEPT Technologies Ltd. 0:10:8f RAPTOR SYSTEMS 0:10:9 HORO QUARTZ 0:10:90 CIMETRICS, INC. 0:10:91 NO WIRES NEEDED BV 0:10:92 NETCORE INC. 0:10:93 CMS COMPUTERS, LTD. 0:10:94 Performance Analysis Broadband, Spirent plc 0:10:95 Thomson Inc. 0:10:96 TRACEWELL SYSTEMS, INC. 0:10:97 WinNet Metropolitan Communications Systems, Inc. 0:10:98 STARNET TECHNOLOGIES, INC. 0:10:99 InnoMedia, Inc. 0:10:9a NETLINE 0:10:9b Emulex Corporation 0:10:9c M-SYSTEM CO., LTD. 0:10:9d CLARINET SYSTEMS, INC. 0:10:9e AWARE, INC. 0:10:9f PAVO, INC. 0:10:a WILLIAMS COMMUNICATIONS GROUP 0:10:a0 INNOVEX TECHNOLOGIES, INC. 0:10:a1 KENDIN SEMICONDUCTOR, INC. 0:10:a2 TNS 0:10:a3 OMNITRONIX, INC. 0:10:a4 XIRCOM 0:10:a5 OXFORD INSTRUMENTS 0:10:a6 CISCO SYSTEMS, INC. 0:10:a7 UNEX TECHNOLOGY CORPORATION 0:10:a8 RELIANCE COMPUTER CORP. 0:10:a9 ADHOC TECHNOLOGIES 0:10:aa MEDIA4, INC. 0:10:ab KOITO INDUSTRIES, LTD. 0:10:ac IMCI TECHNOLOGIES 0:10:ad SOFTRONICS USB, INC. 0:10:ae SHINKO ELECTRIC INDUSTRIES CO. 0:10:af TAC SYSTEMS, INC. 0:10:b CISCO SYSTEMS, INC. 0:10:b0 MERIDIAN TECHNOLOGY CORP. 0:10:b1 FOR-A CO., LTD. 0:10:b2 COACTIVE AESTHETICS 0:10:b3 NOKIA MULTIMEDIA TERMINALS 0:10:b4 ATMOSPHERE NETWORKS 0:10:b5 ACCTON TECHNOLOGY CORPORATION 0:10:b6 ENTRATA COMMUNICATIONS CORP. 0:10:b7 COYOTE TECHNOLOGIES, LLC 0:10:b8 ISHIGAKI COMPUTER SYSTEM CO. 0:10:b9 MAXTOR CORP. 0:10:ba MARTINHO-DAVIS SYSTEMS, INC. 0:10:bb DATA & INFORMATION TECHNOLOGY 0:10:bc Aastra Telecom 0:10:bd THE TELECOMMUNICATION TECHNOLOGY COMMITTEE 0:10:be TELEXIS CORP. 0:10:bf InterAir Wireless 0:10:c ITO CO., LTD. 0:10:c0 ARMA, INC. 0:10:c1 OI ELECTRIC CO., LTD. 0:10:c2 WILLNET, INC. 0:10:c3 CSI-CONTROL SYSTEMS 0:10:c4 MEDIA LINKS CO., LTD. 0:10:c5 PROTOCOL TECHNOLOGIES, INC. 0:10:c6 USI 0:10:c7 DATA TRANSMISSION NETWORK 0:10:c8 COMMUNICATIONS ELECTRONICS SECURITY GROUP 0:10:c9 MITSUBISHI ELECTRONICS LOGISTIC SUPPORT CO. 0:10:ca INTEGRAL ACCESS 0:10:cb FACIT K.K. 0:10:cc CLP COMPUTER LOGISTIK PLANUNG GmbH 0:10:cd INTERFACE CONCEPT 0:10:ce VOLAMP, LTD. 0:10:cf FIBERLANE COMMUNICATIONS 0:10:d CISCO SYSTEMS, INC. 0:10:d0 WITCOM, LTD. 0:10:d1 Top Layer Networks, Inc. 0:10:d2 NITTO TSUSHINKI CO., LTD 0:10:d3 GRIPS ELECTRONIC GMBH 0:10:d4 STORAGE COMPUTER CORPORATION 0:10:d5 IMASDE CANARIAS, S.A. 0:10:d6 ITT - A/CD 0:10:d7 ARGOSY RESEARCH INC. 0:10:d8 CALISTA 0:10:d9 IBM JAPAN, FUJISAWA MT+D 0:10:da MOTION ENGINEERING, INC. 0:10:db Juniper Networks, Inc. 0:10:dc MICRO-STAR INTERNATIONAL CO., LTD. 0:10:dd ENABLE SEMICONDUCTOR, INC. 0:10:de INTERNATIONAL DATACASTING CORPORATION 0:10:df RISE COMPUTER INC. 0:10:e MICRO LINEAR COPORATION 0:10:e0 COBALT MICROSERVER, INC. 0:10:e1 S.I. TECH, INC. 0:10:e2 ArrayComm, Inc. 0:10:e3 COMPAQ COMPUTER CORPORATION 0:10:e4 NSI CORPORATION 0:10:e5 SOLECTRON TEXAS 0:10:e6 APPLIED INTELLIGENT SYSTEMS, INC. 0:10:e7 BreezeCom 0:10:e8 TELOCITY, INCORPORATED 0:10:e9 RAIDTEC LTD. 0:10:ea ADEPT TECHNOLOGY 0:10:eb SELSIUS SYSTEMS, INC. 0:10:ec RPCG, LLC 0:10:ed SUNDANCE TECHNOLOGY, INC. 0:10:ee CTI PRODUCTS, INC. 0:10:ef DBTEL INCORPORATED 0:10:f INDUSTRIAL CPU SYSTEMS 0:10:f1 I-O CORPORATION 0:10:f2 ANTEC 0:10:f3 Nexcom International Co., Ltd. 0:10:f4 VERTICAL NETWORKS, INC. 0:10:f5 AMHERST SYSTEMS, INC. 0:10:f6 CISCO SYSTEMS, INC. 0:10:f7 IRIICHI TECHNOLOGIES Inc. 0:10:f8 KENWOOD TMI CORPORATION 0:10:f9 UNIQUE SYSTEMS, INC. 0:10:fa ZAYANTE, INC. 0:10:fb ZIDA TECHNOLOGIES LIMITED 0:10:fc BROADBAND NETWORKS, INC. 0:10:fd COCOM A/S 0:10:fe DIGITAL EQUIPMENT CORPORATION 0:10:ff CISCO SYSTEMS, INC. 0:11:0 RAM Industries, LLC 0:11:1 CET Technologies Pte Ltd 0:11:10 Maxanna Technology Co., Ltd. 0:11:11 Intel Corporation 0:11:12 Honeywell CMSS 0:11:13 Fraunhofer FOKUS 0:11:14 EverFocus Electronics Corp. 0:11:15 EPIN Technologies, Inc. 0:11:16 COTEAU VERT CO., LTD. 0:11:17 CESNET 0:11:18 BLX IC Design Corp., Ltd. 0:11:19 Solteras, Inc. 0:11:1a Motorola BCS 0:11:1b Targa Systems Div L-3 Communications Canada 0:11:1c Pleora Technologies Inc. 0:11:1d Hectrix Limited 0:11:1e EPSG (Ethernet Powerlink Standardization Group) 0:11:1f Doremi Labs, Inc. 0:11:2 Aurora Multimedia Corp. 0:11:20 Cisco Systems 0:11:21 Cisco Systems 0:11:22 CIMSYS Inc 0:11:23 Appointech, Inc. 0:11:24 Apple Computer 0:11:25 IBM Corporation 0:11:26 Venstar Inc. 0:11:27 TASI, Inc 0:11:28 Streamit 0:11:29 Paradise Datacom Ltd. 0:11:2a Niko NV 0:11:2b NetModule 0:11:2c IZT GmbH 0:11:2d Guys Without Ties 0:11:2e CEICOM 0:11:2f ASUSTek Computer Inc. 0:11:3 kawamura electric inc. 0:11:30 Allied Telesis (Hong Kong) Ltd. 0:11:31 UNATECH. CO.,LTD 0:11:32 Synology Incorporated 0:11:33 Siemens Austria SIMEA 0:11:34 MediaCell, Inc. 0:11:35 Grandeye Ltd 0:11:36 Goodrich Sensor Systems 0:11:37 AICHI ELECTRIC CO., LTD. 0:11:38 TAISHIN CO., LTD. 0:11:39 STOEBER ANTRIEBSTECHNIK GmbH + Co. KG. 0:11:3a SHINBORAM 0:11:3b Micronet Communications Inc. 0:11:3c Micronas GmbH 0:11:3d KN SOLTEC CO.,LTD. 0:11:3e JL Corporation 0:11:3f Alcatel DI 0:11:4 TELEXY 0:11:40 Nanometrics Inc. 0:11:41 GoodMan Corporation 0:11:42 e-SMARTCOM INC. 0:11:43 DELL INC. 0:11:44 Assurance Technology Corp 0:11:45 ValuePoint Networks 0:11:46 Telecard-Pribor Ltd 0:11:47 Secom-Industry co.LTD. 0:11:48 Prolon Control Systems 0:11:49 Proliphix LLC 0:11:4a KAYABA INDUSTRY Co,.Ltd. 0:11:4b Francotyp-Postalia AG & Co. KG 0:11:4c caffeina applied research ltd. 0:11:4d Atsumi Electric Co.,LTD. 0:11:4e 690885 Ontario Inc. 0:11:4f US Digital Television, Inc 0:11:5 Sunplus Technology Co., Ltd. 0:11:50 Belkin Corporation 0:11:51 Mykotronx 0:11:52 Eidsvoll Electronics AS 0:11:53 Trident Tek, Inc. 0:11:54 Webpro Technologies Inc. 0:11:55 Sevis Systems 0:11:56 Pharos Systems NZ 0:11:57 OF Networks Co., Ltd. 0:11:58 Nortel Networks 0:11:59 MATISSE NETWORKS INC 0:11:5a Ivoclar Vivadent AG 0:11:5b Elitegroup Computer System Co. (ECS) 0:11:5c Cisco 0:11:5d Cisco 0:11:5e ProMinent Dosiertechnik GmbH 0:11:5f Intellix Co., Ltd. 0:11:6 Siemens NV (Belgium) 0:11:60 ARTDIO Company Co., LTD 0:11:61 NetStreams, LLC 0:11:62 STAR MICRONICS CO.,LTD. 0:11:63 SYSTEM SPA DEPT. ELECTRONICS 0:11:64 ACARD Technology Corp. 0:11:65 Znyx Networks 0:11:66 Taelim Electronics Co., Ltd. 0:11:67 Integrated System Solution Corp. 0:11:68 HomeLogic LLC 0:11:69 EMS Satcom 0:11:6a Domo Ltd 0:11:6b Digital Data Communications Asia Co.,Ltd 0:11:6c Nanwang Multimedia Inc.,Ltd 0:11:6d American Time and Signal 0:11:6e PePLink Ltd. 0:11:6f Netforyou Co., LTD. 0:11:7 RGB Networks Inc. 0:11:70 GSC SRL 0:11:71 DEXTER Communications, Inc. 0:11:72 COTRON CORPORATION 0:11:73 Adtron Corporation 0:11:74 Wibhu Technologies, Inc. 0:11:75 PathScale, Inc. 0:11:76 Intellambda Systems, Inc. 0:11:77 COAXIAL NETWORKS, INC. 0:11:78 Chiron Technology Ltd 0:11:79 Singular Technology Co. Ltd. 0:11:7a Singim International Corp. 0:11:7b Büchi Labortechnik AG 0:11:7c e-zy.net 0:11:7d ZMD America, Inc. 0:11:7e Progeny Inc. 0:11:7f Neotune Information Technology Corporation,.LTD 0:11:8 Orbital Data Corporation 0:11:80 Motorola BCS 0:11:81 InterEnergy Co.Ltd, 0:11:82 IMI Norgren Ltd 0:11:83 PSC Scanning, Inc 0:11:84 Humo Laboratory,Ltd. 0:11:85 Hewlett Packard 0:11:86 Prime Systems, Inc. 0:11:87 Category Solutions, Inc 0:11:88 Enterasys 0:11:89 Aerotech Inc 0:11:8a Viewtran Technology Limited 0:11:8b NetDevices Inc. 0:11:8c Missouri Department of Transportation 0:11:8d Hanchang System Corp. 0:11:8e Halytech Mace 0:11:8f EUTECH INSTRUMENTS PTE. LTD. 0:11:9 Micro-Star International 0:11:90 Digital Design Corporation 0:11:91 CTS-Clima Temperatur Systeme GmbH 0:11:92 Cisco Systems 0:11:93 Cisco Systems 0:11:94 Chi Mei Communication Systems, Inc. 0:11:95 D-Link Corporation 0:11:96 Actuality Systems, Inc. 0:11:97 Monitoring Technologies Limited 0:11:98 Prism Media Products Limited 0:11:99 2wcom GmbH 0:11:9a Alkeria srl 0:11:9b Telesynergy Research Inc. 0:11:9c EP&T Energy 0:11:9d Diginfo Technology Corporation 0:11:9e Solectron Brazil 0:11:9f Nokia Danmark A/S 0:11:a Hewlett Packard 0:11:a0 Vtech Engineering Canada Ltd 0:11:a1 VISION NETWARE CO.,LTD 0:11:a2 Manufacturing Technology Inc 0:11:a3 LanReady Technologies Inc. 0:11:a4 JStream Technologies Inc. 0:11:a5 Fortuna Electronic Corp. 0:11:a6 Sypixx Networks 0:11:a7 Infilco Degremont Inc. 0:11:a8 Quest Technologies 0:11:a9 MOIMSTONE Co., LTD 0:11:aa Uniclass Technology, Co., LTD 0:11:ab TRUSTABLE TECHNOLOGY CO.,LTD. 0:11:ac Simtec Electronics 0:11:ad Shanghai Ruijie Technology 0:11:ae Motorola BCS 0:11:af Medialink-i,Inc 0:11:b Franklin Technology Systems 0:11:b0 Fortelink Inc. 0:11:b1 BlueExpert Technology Corp. 0:11:b2 2001 Technology Inc. 0:11:b3 YOSHIMIYA CO.,LTD. 0:11:b4 Westermo Teleindustri AB 0:11:b5 Shenzhen Powercom Co.,Ltd 0:11:b6 Open Systems International 0:11:b7 Melexis Nederland B.V. 0:11:b8 Liebherr - Elektronik GmbH 0:11:b9 Inner Range Pty. Ltd. 0:11:ba Elexol Pty Ltd 0:11:bb Cisco Systems 0:11:bc Cisco Systems 0:11:bd Bombardier Transportation 0:11:be AGP Telecom Co. Ltd 0:11:bf AESYS S.p.A. 0:11:c Atmark Techno, Inc. 0:11:c0 Aday Technology Inc 0:11:c1 4P MOBILE DATA PROCESSING 0:11:c2 United Fiber Optic Communication 0:11:c3 Transceiving System Technology Corporation 0:11:c4 Terminales de Telecomunicacion Terrestre, S.L. 0:11:c5 TEN Technology 0:11:c6 Seagate Technology LLC 0:11:c7 RAYMARINE Group Ltd. 0:11:c8 Powercom Co., Ltd. 0:11:c9 MTT Corporation 0:11:ca Long Range Systems, Inc. 0:11:cb Jacobsons RKH AB 0:11:cc Guangzhou Jinpeng Group Co.,Ltd. 0:11:cd Axsun Technologies 0:11:ce Ubisense Limited 0:11:cf Thrane & Thrane A/S 0:11:d SANBlaze Technology, Inc. 0:11:d0 Tandberg Data ASA 0:11:d1 Soft Imaging System GmbH 0:11:d2 Perception Digital Ltd 0:11:d3 NextGenTel Holding ASA 0:11:d4 NetEnrich, Inc 0:11:d5 Hangzhou Sunyard System Engineering Co.,Ltd. 0:11:d6 HandEra, Inc. 0:11:d7 eWerks Inc 0:11:d8 ASUSTek Computer Inc. 0:11:d9 TiVo 0:11:da Vivaas Technology Inc. 0:11:db Land-Cellular Corporation 0:11:dc Glunz & Jensen 0:11:dd FROMUS TEC. Co., Ltd. 0:11:de EURILOGIC 0:11:df Arecont Systems 0:11:e Tsurusaki Sealand Transportation Co. Ltd. 0:11:e0 U-MEDIA Communications, Inc. 0:11:e1 BEKO Electronics Co. 0:11:e2 Hua Jung Components Co., Ltd. 0:11:e3 Thomson, Inc. 0:11:e4 Danelec Electronics A/S 0:11:e5 KCodes Corporation 0:11:e6 Scientific Atlanta 0:11:e7 WORLDSAT - Texas de France 0:11:e8 Tixi.Com 0:11:e9 STARNEX CO., LTD. 0:11:ea IWICS Inc. 0:11:eb Innovative Integration 0:11:ec AVIX INC. 0:11:ed 802 Global 0:11:ee Estari, Inc. 0:11:ef Conitec Datensysteme GmbH 0:11:f netplat,Inc. 0:11:f0 Wideful Limited 0:11:f1 QinetiQ Ltd 0:11:f2 Institute of Network Technologies 0:11:f3 Gavitec AG- mobile digit 0:11:f4 woori-net 0:11:f5 ASKEY COMPUTER CORP. 0:11:f6 Asia Pacific Microsystems , Inc. 0:11:f7 Shenzhen Forward Industry Co., Ltd 0:11:f8 AIRAYA Corp 0:11:f9 Nortel Networks 0:11:fa Rane Corporation 0:11:fb Heidelberg Engineering GmbH 0:11:fc HARTING Electric Gmbh & Co.KG 0:11:fd KORG INC. 0:11:fe Keiyo System Research, Inc. 0:11:ff Digitro Tecnologia Ltda 0:12:0 Cisco 0:12:1 Cisco 0:12:10 WideRay Corp 0:12:11 Protechna Herbst GmbH & Co. KG 0:12:12 PLUS Vision Corporation 0:12:13 Metrohm AG 0:12:14 Koenig & Bauer AG 0:12:15 iStor Networks, Inc. 0:12:16 ICP Internet Communication Payment AG 0:12:17 Cisco-Linksys, LLC 0:12:18 ARUZE Corporation 0:12:19 Ahead Communication Systems Inc 0:12:1a Techno Soft Systemnics Inc. 0:12:1b Sound Devices, LLC 0:12:1c PARROT S.A. 0:12:1d Netfabric Corporation 0:12:1e Juniper Networks, Inc. 0:12:1f Harding Intruments 0:12:2 Audio International Inc. 0:12:20 Cadco Systems 0:12:21 B.Braun Melsungen AG 0:12:22 Skardin (UK) Ltd 0:12:23 Pixim 0:12:24 NexQL Corporation 0:12:25 Motorola BCS 0:12:26 Japan Direx Corporation 0:12:27 Franklin Electric Co., Inc. 0:12:28 Data Ltd. 0:12:29 BroadEasy Technologies Co.,Ltd 0:12:2a VTech Telecommunications Ltd. 0:12:2b Virbiage Pty Ltd 0:12:2c Soenen Controls N.V. 0:12:2d SiNett Corporation 0:12:2e Signal Technology - AISD 0:12:2f Sanei Electric Inc. 0:12:3 Activ Networks 0:12:30 Picaso Infocommunication CO., LTD. 0:12:31 Motion Control Systems, Inc. 0:12:32 LeWiz Communications Inc. 0:12:33 JRC TOKKI Co.,Ltd. 0:12:34 Camille Bauer 0:12:35 Andrew Corporation 0:12:36 Tidal Networks 0:12:37 Texas Instruments 0:12:38 SetaBox Technology Co., Ltd. 0:12:39 S Net Systems Inc. 0:12:3a Posystech Inc., Co. 0:12:3b KeRo Systems ApS 0:12:3c IP3 Networks, Inc. 0:12:3d GES 0:12:3e ERUNE technology Co., Ltd. 0:12:3f Dell Inc 0:12:4 u10 Networks, Inc. 0:12:40 AMOI ELECTRONICS CO.,LTD 0:12:41 a2i marketing center 0:12:42 Millennial Net 0:12:43 Cisco 0:12:44 Cisco 0:12:45 Zellweger Analytics, Inc. 0:12:46 T.O.M TECHNOLOGY INC.. 0:12:47 Samsung Electronics Co., Ltd. 0:12:48 Kashya Inc. 0:12:49 Delta Elettronica S.p.A. 0:12:4a Dedicated Devices, Inc. 0:12:4b Chipcon AS 0:12:4c BBWM Corporation 0:12:4d Inducon BV 0:12:4e XAC AUTOMATION CORP. 0:12:4f Tyco Thermal Controls LLC. 0:12:5 Terrasat Communications, Inc. 0:12:50 Tokyo Aircaft Instrument Co., Ltd. 0:12:51 SILINK 0:12:52 Citronix, LLC 0:12:53 AudioDev AB 0:12:54 Spectra Technologies Holdings Company Ltd 0:12:55 NetEffect Incorporated 0:12:56 LG INFORMATION & COMM. 0:12:57 LeapComm Communication Technologies Inc. 0:12:58 Activis Polska 0:12:59 THERMO ELECTRON KARLSRUHE 0:12:5a Microsoft Corporation 0:12:5b KAIMEI ELECTRONI 0:12:5c Green Hills Software, Inc. 0:12:5d CyberNet Inc. 0:12:5e CAEN 0:12:5f AWIND Inc. 0:12:6 iQuest (NZ) Ltd 0:12:60 Stanton Magnetics,inc. 0:12:61 Adaptix, Inc 0:12:62 Nokia Danmark A/S 0:12:63 Data Voice Technologies GmbH 0:12:64 daum electronic gmbh 0:12:65 Enerdyne Technologies, Inc. 0:12:66 PRIVATE 0:12:67 Matsushita Electronic Components Co., Ltd. 0:12:68 IPS d.o.o. 0:12:69 Value Electronics 0:12:6a OPTOELECTRONICS Co., Ltd. 0:12:6b Ascalade Communications Limited 0:12:6c Visonic Ltd. 0:12:6d University of California, Berkeley 0:12:6e Seidel Elektronik GmbH Nfg.KG 0:12:6f Rayson Technology Co., Ltd. 0:12:7 Head Strong International Limited 0:12:70 NGES Denro Systems 0:12:71 Measurement Computing Corp 0:12:72 Redux Communications Ltd. 0:12:73 Stoke Inc 0:12:74 NIT lab 0:12:75 Moteiv Corporation 0:12:76 Microsol Holdings Ltd. 0:12:77 Korenix Technologies Co., Ltd. 0:12:78 International Bar Code 0:12:79 Hewlett Packard 0:12:7a Sanyu Industry Co.,Ltd. 0:12:7b VIA Networking Technologies, Inc. 0:12:7c SWEGON AB 0:12:7d MobileAria 0:12:7e Digital Lifestyles Group, Inc. 0:12:7f Cisco 0:12:8 Gantner Electronic GmbH 0:12:80 Cisco 0:12:81 CIEFFE srl 0:12:82 Qovia 0:12:83 Nortel Networks 0:12:84 Lab33 Srl 0:12:85 Gizmondo Europe Ltd 0:12:86 ENDEVCO CORP 0:12:87 Digital Everywhere Unterhaltungselektronik GmbH 0:12:88 2Wire, Inc 0:12:89 Advance Sterilization Products 0:12:8a Motorola PCS 0:12:8b Sensory Networks Inc 0:12:8c Woodward Governor 0:12:8d STB Datenservice GmbH 0:12:8e Q-Free ASA 0:12:8f Montilio 0:12:9 Fastrax Ltd 0:12:90 KYOWA Electric & Machinery Corp. 0:12:91 KWS Computersysteme GmbH 0:12:92 Griffin Technology 0:12:93 GE Energy 0:12:94 Eudyna Devices Inc. 0:12:95 Aiware Inc. 0:12:96 Addlogix 0:12:97 O2Micro, Inc. 0:12:98 MICO ELECTRIC(SHENZHEN) LIMITED 0:12:99 Ktech Telecommunications Inc 0:12:9a IRT Electronics Pty Ltd 0:12:9b E2S Electronic Engineering Solutions, S.L. 0:12:9c Yulinet 0:12:9d FIRST INTERNATIONAL COMPUTER DO BRASIL LTDA 0:12:9e Surf Communications Inc. 0:12:9f RAE Systems, Inc. 0:12:a Emerson Electric GmbH & Co. OHG 0:12:a0 NeoMeridian Sdn Bhd 0:12:a1 BluePacket Communications Co., Ltd. 0:12:a2 VITA 0:12:a3 Trust International B.V. 0:12:a4 ThingMagic, LLC 0:12:a5 Stargen, Inc. 0:12:a6 Lake Technology Ltd 0:12:a7 ISR TECHNOLOGIES Inc 0:12:a8 intec GmbH 0:12:a9 3COM EUROPE LTD 0:12:aa IEE, Inc. 0:12:ab WiLife, Inc. 0:12:ac ONTIMETEK INC. 0:12:ad IDS GmbH 0:12:ae HLS HARD-LINE Solutions Inc. 0:12:af ELPRO Technologies 0:12:b Chinasys Technologies Limited 0:12:b0 Efore Oyj (Plc) 0:12:b1 Dai Nippon Printing Co., Ltd 0:12:b2 AVOLITES LTD. 0:12:b3 Advance Wireless Technology Corp. 0:12:b4 Work GmbH 0:12:b5 Vialta, Inc. 0:12:b6 Santa Barbara Infrared, Inc. 0:12:b7 PTW Freiburg 0:12:b8 G2 Microsystems 0:12:b9 Fusion Digital Technology 0:12:ba FSI Systems, Inc. 0:12:bb Telecommunications Industry Association TR-41 Committee 0:12:bc Echolab LLC 0:12:bd Avantec Manufacturing Limited 0:12:be Astek Corporation 0:12:bf Arcadyan Technology Corporation 0:12:c CE-Infosys Pte Ltd 0:12:c0 HotLava Systems, Inc. 0:12:c1 Check Point Software Technologies 0:12:c2 Apex Electronics Factory 0:12:c3 WIT S.A. 0:12:c4 Viseon, Inc. 0:12:c5 V-Show Technology Co.Ltd 0:12:c6 TGC America, Inc 0:12:c7 SECURAY Technologies Ltd.Co. 0:12:c8 Perfect tech 0:12:c9 Motorola BCS 0:12:ca Hansen Telecom 0:12:cb CSS Inc. 0:12:cc Bitatek CO., LTD 0:12:cd ASEM SpA 0:12:ce Advanced Cybernetics Group 0:12:cf Accton Technology Corporation 0:12:d Advanced Telecommunication Technologies, Inc. 0:12:d0 Gossen-Metrawatt-GmbH 0:12:d1 Texas Instruments Inc 0:12:d2 Texas Instruments 0:12:d3 Zetta Systems, Inc. 0:12:d4 Princeton Technology, Ltd 0:12:d5 Motion Reality Inc. 0:12:d6 Jiangsu Yitong High-Tech Co.,Ltd 0:12:d7 Invento Networks, Inc. 0:12:d8 International Games System Co., Ltd. 0:12:d9 Cisco Systems 0:12:da Cisco Systems 0:12:db ZIEHL industrie-elektronik GmbH + Co KG 0:12:dc SunCorp Industrial Limited 0:12:dd Shengqu Information Technology (Shanghai) Co., Ltd. 0:12:de Radio Components Sweden AB 0:12:df Novomatic AG 0:12:e AboCom 0:12:e0 Codan Limited 0:12:e1 Alliant Networks, Inc 0:12:e2 ALAXALA Networks Corporation 0:12:e3 Agat-RT, Ltd. 0:12:e4 ZIEHL industrie-electronik GmbH + Co KG 0:12:e5 Time America, Inc. 0:12:e6 SPECTEC COMPUTER CO., LTD. 0:12:e7 Projectek Networking Electronics Corp. 0:12:e8 Fraunhofer IMS 0:12:e9 Abbey Systems Ltd 0:12:ea Trane 0:12:eb R2DI, LLC 0:12:ec Movacolor b.v. 0:12:ed AVG Advanced Technologies 0:12:ee Sony Ericsson Mobile Communications AB 0:12:ef OneAccess SA 0:12:f IEEE 802.3 0:12:f0 Intel Corporate 0:12:f1 IFOTEC 0:12:f2 Foundry Networks 0:12:f3 connectBlue AB 0:12:f4 Belco International Co.,Ltd. 0:12:f5 Prolificx Ltd 0:12:f6 MDK CO.,LTD. 0:12:f7 Xiamen Xinglian Electronics Co., Ltd. 0:12:f8 WNI Resources, LLC 0:12:f9 URYU SEISAKU, LTD. 0:12:fa THX LTD 0:12:fb Samsung Electronics 0:12:fc PLANET System Co.,LTD 0:12:fd OPTIMUS IC S.A. 0:12:fe Lenovo Mobile Communication Technology Ltd. 0:12:ff Lely Industries N.V. 0:13:0 IT-FACTORY, INC. 0:13:1 IronGate S.L. 0:13:10 Cisco-Linksys, LLC 0:13:11 ARRIS International 0:13:12 Amedia Networks Inc. 0:13:13 GuangZhou Post & Telecom Equipment ltd 0:13:14 Asiamajor Inc. 0:13:15 SONY Computer Entertainment inc, 0:13:16 L-S-B GmbH 0:13:17 GN Netcom as 0:13:18 DGSTATION Co., Ltd. 0:13:19 Cisco Systems 0:13:1a Cisco Systems 0:13:1b BeCell Innovations Corp. 0:13:1c LiteTouch, Inc. 0:13:1d Scanvaegt International A/S 0:13:1e Peiker acustic GmbH & Co. KG 0:13:1f NxtPhase T&D, Corp. 0:13:2 Intel Corporate 0:13:20 Intel Corporate 0:13:21 Hewlett Packard 0:13:22 DAQ Electronics, Inc. 0:13:23 Cap Co., Ltd. 0:13:24 Schneider Electric Ultra Terminal 0:13:25 ImmenStar Inc. 0:13:26 ECM Systems Ltd 0:13:27 Data Acquisitions limited 0:13:28 Westech Korea Inc., 0:13:29 VSST Co., LTD 0:13:2a STROM telecom, s. r. o. 0:13:2b Phoenix Digital 0:13:2c MAZ Brandenburg GmbH 0:13:2d iWise Communications Pty Ltd 0:13:2e ITian Coporation 0:13:2f Interactek 0:13:3 GateConnect Technologies GmbH 0:13:30 EURO PROTECTION SURVEILLANCE 0:13:31 CellPoint Connect 0:13:32 Beijing Topsec Network Security Technology Co., Ltd. 0:13:33 Baud Technology Inc. 0:13:34 Arkados, Inc. 0:13:35 VS Industry Berhad 0:13:36 Tianjin 712 Communication Broadcasting co., ltd. 0:13:37 Orient Power Home Network Ltd. 0:13:38 FRESENIUS-VIAL 0:13:39 EL-ME AG 0:13:3a VadaTech Inc. 0:13:3b Speed Dragon Multimedia Limited 0:13:3c QUINTRON SYSTEMS INC. 0:13:3d Micro Memory LLC 0:13:3e MetaSwitch 0:13:3f Eppendorf Instrumente GmbH 0:13:4 Flaircomm Technologies Co. LTD 0:13:40 AD.EL s.r.l. 0:13:41 Shandong New Beiyang Information Technology Co.,Ltd 0:13:42 Vision Research, Inc. 0:13:43 Matsushita Electronic Components (Europe) GmbH 0:13:44 Fargo Electronics Inc. 0:13:45 Eaton Corporation 0:13:46 D-Link Corporation 0:13:47 BlueTree Wireless Data Inc. 0:13:48 Artila Electronics Co., Ltd. 0:13:49 ZyXEL Communications Corporation 0:13:4a Engim, Inc. 0:13:4b ToGoldenNet Technology Inc. 0:13:4c YDT Technology International 0:13:4d IPC systems 0:13:4e Valox Systems, Inc. 0:13:4f Tranzeo Wireless Technologies Inc. 0:13:5 Epicom, Inc. 0:13:50 Silver Spring Networks, Inc 0:13:51 Niles Audio Corporation 0:13:52 Naztec, Inc. 0:13:53 HYDAC Filtertechnik GMBH 0:13:54 Zcomax Technologies, Inc. 0:13:55 TOMEN Cyber-business Solutions, Inc. 0:13:56 target systemelectronic gmbh 0:13:57 Soyal Technology Co., Ltd. 0:13:58 Realm Systems, Inc. 0:13:59 ProTelevision Technologies A/S 0:13:5a Project T&E Limited 0:13:5b PanelLink Cinema, LLC 0:13:5c OnSite Systems, Inc. 0:13:5d NTTPC Communications, Inc. 0:13:5e EAB/RWI/K 0:13:5f Cisco Systems 0:13:6 Always On Wireless 0:13:60 Cisco Systems 0:13:61 Biospace Co., Ltd. 0:13:62 ShinHeung Precision Co., Ltd. 0:13:63 Verascape, Inc. 0:13:64 Paradigm Technology Inc.. 0:13:65 Nortel 0:13:66 Neturity Technologies Inc. 0:13:67 Narayon. Co., Ltd. 0:13:68 Maersk Data Defence 0:13:69 Honda Electron Co., LED. 0:13:6a Hach Ultra Analytics 0:13:6b E-TEC 0:13:6c PRIVATE 0:13:6d Tentaculus AB 0:13:6e Techmetro Corp. 0:13:6f PacketMotion, Inc. 0:13:7 Paravirtual Corporation 0:13:70 Nokia Danmark A/S 0:13:71 Motorola CHS 0:13:72 Dell Inc. 0:13:73 BLwave Electronics Co., Ltd 0:13:74 Attansic Technology Corp. 0:13:75 American Security Products Co. 0:13:76 Tabor Electronics Ltd. 0:13:77 Samsung Electronics CO., LTD 0:13:78 QSAN Technology, Inc. 0:13:79 PONDER INFORMATION INDUSTRIES LTD. 0:13:7a Netvox Technology Co., Ltd. 0:13:7b Movon Corporation 0:13:7c Kaicom co., Ltd. 0:13:7d Dynalab, Inc. 0:13:7e CorEdge Networks, Inc. 0:13:7f Cisco Systems 0:13:8 Nuvera Fuel Cells 0:13:80 Cisco Systems 0:13:81 CHIPS & Systems, Inc. 0:13:82 Cetacea Networks Corporation 0:13:83 Application Technologies and Engineering Research Laboratory 0:13:84 Advanced Motion Controls 0:13:85 Add-On Technology Co., LTD. 0:13:86 ABB Inc./Totalflow 0:13:87 27M Technologies AB 0:13:88 WiMedia Alliance 0:13:89 Redes de Telefonía Móvil S.A. 0:13:8a QINGDAO GOERTEK ELECTRONICS CO.,LTD. 0:13:8b Phantom Technologies LLC 0:13:8c Kumyoung.Co.Ltd 0:13:8d Kinghold 0:13:8e FOAB Elektronik AB 0:13:8f Asiarock Incorporation 0:13:9 Ocean Broadband Networks 0:13:90 Termtek Computer Co., Ltd 0:13:91 OUEN CO.,LTD. 0:13:92 Video54 Technologies, Inc 0:13:93 Panta Systems, Inc. 0:13:94 Infohand Co.,Ltd 0:13:95 congatec AG 0:13:96 Acbel Polytech Inc. 0:13:97 Xsigo Systems, Inc. 0:13:98 TrafficSim Co.,Ltd 0:13:99 STAC Corporation. 0:13:9a K-ubique ID Corp. 0:13:9b ioIMAGE Ltd. 0:13:9c Exavera Technologies, Inc. 0:13:9d Design of Systems on Silicon S.A. 0:13:9e Ciara Technologies Inc. 0:13:9f Electronics Design Services, Co., Ltd. 0:13:a Nortel 0:13:a0 ALGOSYSTEM Co., Ltd. 0:13:a1 Crow Electronic Engeneering 0:13:a2 MaxStream, Inc 0:13:a3 Siemens Com CPE Devices 0:13:a4 KeyEye Communications 0:13:a5 General Solutions, LTD. 0:13:a6 Extricom Ltd 0:13:a7 BATTELLE MEMORIAL INSTITUTE 0:13:a8 Tanisys Technology 0:13:a9 Sony Corporation 0:13:aa ALS & TEC Ltd. 0:13:ab Telemotive AG 0:13:ac Sunmyung Electronics Co., LTD 0:13:ad Sendo Ltd 0:13:ae Radiance Technologies 0:13:af NUMA Technology,Inc. 0:13:b Mextal B.V. 0:13:b0 Jablotron 0:13:b1 Intelligent Control Systems (Asia) Pte Ltd 0:13:b2 Carallon Limited 0:13:b3 Beijing Ecom Communications Technology Co., Ltd. 0:13:b4 Appear TV 0:13:b5 Wavesat 0:13:b6 Sling Media, Inc. 0:13:b7 Scantech ID 0:13:b8 RyCo Electronic Systems Limited 0:13:b9 BM SPA 0:13:ba ReadyLinks Inc 0:13:bb PRIVATE 0:13:bc Artimi Ltd 0:13:bd HYMATOM SA 0:13:be Virtual Conexions 0:13:bf Media System Planning Corp. 0:13:c HF System Corporation 0:13:c0 Trix Tecnologia Ltda. 0:13:c1 Asoka USA Corporation 0:13:c2 WACOM Co.,Ltd 0:13:c3 Cisco Systems 0:13:c4 Cisco Systems 0:13:c5 LIGHTRON FIBER-OPTIC DEVICES INC. 0:13:c6 OpenGear, Inc 0:13:c7 IONOS Co.,Ltd. 0:13:c8 PIRELLI BROADBAND SOLUTIONS S.P.A. 0:13:c9 Beyond Achieve Enterprises Ltd. 0:13:ca X-Digital Systems, Inc. 0:13:cb Zenitel Norway AS 0:13:cc Tall Maple Systems 0:13:cd MTI co. LTD 0:13:ce Intel Corporate 0:13:cf 4Access Communications 0:13:d GALILEO AVIONICA 0:13:d0 e-San Limited 0:13:d1 KIRK telecom A/S 0:13:d2 PAGE IBERICA, S.A. 0:13:d3 MICRO-STAR INTERNATIONAL CO., LTD. 0:13:d4 ASUSTek COMPUTER INC. 0:13:d5 WiNetworks LTD 0:13:d6 TII NETWORK TECHNOLOGIES, INC. 0:13:d7 SPIDCOM Technologies SA 0:13:d8 Princeton Instruments 0:13:d9 Matrix Product Development, Inc. 0:13:da Diskware Co., Ltd 0:13:db SHOEI Electric Co.,Ltd 0:13:dc IBTEK INC. 0:13:dd Abbott Diagnostics 0:13:de Adapt4 0:13:df Ryvor Corp. 0:13:e Focusrite Audio Engineering Limited 0:13:e0 Murata Manufacturing Co., Ltd. 0:13:e1 Iprobe 0:13:e2 GeoVision Inc. 0:13:e3 CoVi Technologies, Inc. 0:13:e4 YANGJAE SYSTEMS CORP. 0:13:e5 TENOSYS, INC. 0:13:e6 Technolution 0:13:e7 Minelab Electronics Pty Limited 0:13:e8 Intel Corporate 0:13:e9 VeriWave, Inc. 0:13:ea Kamstrup A/S 0:13:eb Sysmaster Corporation 0:13:ec Sunbay Software AG 0:13:ed PSIA 0:13:ee JBX Designs Inc. 0:13:ef Kingjon Digital Technology Co.,Ltd 0:13:f EGEMEN Bilgisayar Muh San ve Tic LTD STI 0:13:f0 Wavefront Semiconductor 0:13:f1 AMOD Technology Co., Ltd. 0:13:f2 Klas Ltd 0:13:f3 Giga-byte Communications Inc. 0:13:f4 Psitek (Pty) Ltd 0:13:f5 Akimbi Systems 0:13:f6 Cintech 0:13:f7 SMC Networks, Inc. 0:13:f8 Dex Security Solutions 0:13:f9 Cavera Systems 0:13:fa LifeSize Communications, Inc 0:13:fb RKC INSTRUMENT INC. 0:13:fc SiCortex, Inc 0:13:fd Nokia Danmark A/S 0:13:fe GRANDTEC ELECTRONIC CORP. 0:13:ff Dage-MTI of MC, Inc. 0:14:0 MINERVA KOREA CO., LTD 0:14:1 Rivertree Networks Corp. 0:14:10 Suzhou Keda Technology CO.,Ltd 0:14:11 Deutschmann Automation GmbH & Co. KG 0:14:12 S-TEC electronics AG 0:14:13 Trebing & Himstedt Prozessautomation GmbH & Co. KG 0:14:14 Jumpnode Systems LLC. 0:14:15 Intec Automation Inc. 0:14:16 Scosche Industries, Inc. 0:14:17 RSE Informations Technologie GmbH 0:14:18 C4Line 0:14:19 SIDSA 0:14:1a DEICY CORPORATION 0:14:1b Cisco Systems 0:14:1c Cisco Systems 0:14:1d Lust Antriebstechnik GmbH 0:14:1e P.A. Semi, Inc. 0:14:1f SunKwang Electronics Co., Ltd 0:14:2 kk-electronic a/s 0:14:20 G-Links networking company 0:14:21 Total Wireless Technologies Pte. Ltd. 0:14:22 Dell Inc. 0:14:23 J-S Co. NEUROCOM 0:14:24 Merry Electrics CO., LTD. 0:14:25 Galactic Computing Corp. 0:14:26 NL Technology 0:14:27 JazzMutant 0:14:28 Vocollect, Inc 0:14:29 V Center Technologies Co., Ltd. 0:14:2a Elitegroup Computer System Co., Ltd 0:14:2b Edata Technologies Inc. 0:14:2c Koncept International, Inc. 0:14:2d Toradex AG 0:14:2e 77 Elektronika Kft. 0:14:2f WildPackets 0:14:3 Renasis, LLC 0:14:30 ViPowER, Inc 0:14:31 PDL Electronics Ltd 0:14:32 Tarallax Wireless, Inc. 0:14:33 Empower Technologies(Canada) Inc. 0:14:34 Keri Systems, Inc 0:14:35 CityCom Corp. 0:14:36 Qwerty Elektronik AB 0:14:37 GSTeletech Co.,Ltd. 0:14:38 Hewlett Packard 0:14:39 Blonder Tongue Laboratories, Inc. 0:14:3a RAYTALK INTERNATIONAL SRL 0:14:3b Sensovation AG 0:14:3c Oerlikon Contraves Inc. 0:14:3d Aevoe Inc. 0:14:3e AirLink Communications, Inc. 0:14:3f Hotway Technology Corporation 0:14:4 Motorola CHS 0:14:40 ATOMIC Corporation 0:14:41 Innovation Sound Technology Co., LTD. 0:14:42 ATTO CORPORATION 0:14:43 Consultronics Europe Ltd 0:14:44 Grundfos Electronics 0:14:45 Telefon-Gradnja d.o.o. 0:14:46 KidMapper, Inc. 0:14:47 BOAZ Inc. 0:14:48 Inventec Multimedia & Telecom Corporation 0:14:49 Sichuan Changhong Electric Ltd. 0:14:4a Taiwan Thick-Film Ind. Corp. 0:14:4b Hifn, Inc. 0:14:4c General Meters Corp. 0:14:4d Intelligent Systems 0:14:4e SRISA 0:14:4f Sun Microsystems, Inc. 0:14:5 OpenIB, Inc. 0:14:50 Heim Systems GmbH 0:14:51 Apple Computer Inc. 0:14:52 CALCULEX,INC. 0:14:53 ADVANTECH TECHNOLOGIES CO.,LTD 0:14:54 Symwave 0:14:55 Coder Electronics Corporation 0:14:56 Edge Products 0:14:57 T-VIPS AS 0:14:58 HS Automatic ApS 0:14:59 Moram Co., Ltd. 0:14:5a Elektrobit AG 0:14:5b SeekerNet Inc. 0:14:5c Intronics B.V. 0:14:5d WJ Communications, Inc. 0:14:5e IBM 0:14:5f ADITEC CO. LTD 0:14:6 Go Networks 0:14:60 Kyocera Wireless Corp. 0:14:61 CORONA CORPORATION 0:14:62 Digiwell Technology, inc 0:14:63 IDCS N.V. 0:14:64 Cryptosoft 0:14:65 Novo Nordisk A/S 0:14:66 Kleinhenz Elektronik GmbH 0:14:67 ArrowSpan Inc. 0:14:68 CelPlan International, Inc. 0:14:69 Cisco Systems 0:14:6a Cisco Systems 0:14:6b Anagran, Inc. 0:14:6c Netgear Inc. 0:14:6d RF Technologies 0:14:6e H. Stoll GmbH & Co. KG 0:14:6f Kohler Co 0:14:7 Biosystems 0:14:70 Prokom Software SA 0:14:71 Eastern Asia Technology Limited 0:14:72 China Broadband Wireless IP Standard Group 0:14:73 Bookham Inc 0:14:74 K40 Electronics 0:14:75 Wiline Networks, Inc. 0:14:76 MultiCom Industries Limited 0:14:77 Nertec Inc. 0:14:78 ShenZhen TP-LINK Technologies Co., Ltd. 0:14:79 NEC Magnus Communications,Ltd. 0:14:7a Eubus GmbH 0:14:7b Iteris, Inc. 0:14:7c 3Com Europe Ltd 0:14:7d Aeon Digital International 0:14:7e PanGo Networks, Inc. 0:14:7f Thomson Telecom Belgium 0:14:8 Eka Systems Inc. 0:14:80 Hitachi-LG Data Storage Korea, Inc 0:14:81 Multilink Inc 0:14:82 GoBackTV, Inc 0:14:83 eXS Inc. 0:14:84 CERMATE TECHNOLOGIES INC 0:14:85 Giga-Byte 0:14:86 Echo Digital Audio Corporation 0:14:87 American Technology Integrators 0:14:88 Akorri Networks 0:14:89 B15402100 - JANDEI, S.L. 0:14:8a Elin Ebg Traction Gmbh 0:14:8b Globo Electronic GmbH & Co. KG 0:14:8c Fortress Technologies 0:14:8d Cubic Defense Simulation Systems 0:14:8e Tele Power Inc. 0:14:8f Protronic (Far East) Ltd. 0:14:9 MAGNETI MARELLI S.E. S.p.A. 0:14:90 ASP Corporation 0:14:91 Daniels Electronics Ltd. 0:14:92 Liteon, Mobile Media Solution SBU 0:14:93 Systimax Solutions 0:14:94 ESU AG 0:14:95 2Wire, Inc. 0:14:96 Phonic Corp. 0:14:97 ZHIYUAN Eletronics co.,ltd. 0:14:98 Viking Design Technology 0:14:99 Helicomm Inc 0:14:9a Motorola Mobile Devices Business 0:14:9b Nokota Communications, LLC 0:14:9c HF Company 0:14:9d Sound ID Inc. 0:14:9e UbONE Co., Ltd 0:14:9f System and Chips, Inc. 0:14:a WEPIO Co., Ltd. 0:14:a0 RFID Asset Track, Inc. 0:14:a1 Synchronous Communication Corp 0:14:a2 Core Micro Systems Inc. 0:14:a3 Vitelec BV 0:14:a4 Hon Hai Precision Ind. Co., Ltd. 0:14:a5 Gemtek Technology Co., Ltd. 0:14:a6 Teranetics, Inc. 0:14:a7 Nokia Danmark A/S 0:14:a8 Cisco Systems 0:14:a9 Cisco Systems 0:14:aa Ashly Audio, Inc. 0:14:ab Senhai Electronic Technology Co., Ltd. 0:14:ac Bountiful WiFi 0:14:ad Gassner Wiege- u. Meßtechnik GmbH 0:14:ae Wizlogics Co., Ltd. 0:14:af Datasym Inc. 0:14:b FIRST INTERNATIONAL COMPUTER, INC. 0:14:b0 Naeil Community 0:14:b1 Avitec AB 0:14:b2 mCubelogics Corporation 0:14:b3 CoreStar International Corp 0:14:b4 General Dynamics United Kingdom Ltd 0:14:b5 PRIVATE 0:14:b6 Enswer Technology Inc. 0:14:b7 AR Infotek Inc. 0:14:b8 Hill-Rom 0:14:b9 STEPMIND 0:14:ba Carvers SA de CV 0:14:bb Open Interface North America 0:14:bc SYNECTIC TELECOM EXPORTS PVT. LTD. 0:14:bd incNETWORKS, Inc 0:14:be Wink communication technology CO.LTD 0:14:bf Cisco-Linksys LLC 0:14:c GKB CCTV CO., LTD. 0:14:c0 Symstream Technology Group Ltd 0:14:c1 U.S. Robotics Corporation 0:14:c2 Hewlett Packard 0:14:c3 Seagate Technology LLC 0:14:c4 Vitelcom Mobile Technology 0:14:c5 Alive Technologies Pty Ltd 0:14:c6 Quixant Ltd 0:14:c7 Nortel 0:14:c8 Contemporary Research Corp 0:14:c9 Silverback Systems, Inc. 0:14:ca Key Radio Systems Limited 0:14:cb GMP|Wireless Medicine,Inc. 0:14:cc Zetec, Inc. 0:14:cd DigitalZone Co., Ltd. 0:14:ce NF CORPORATION 0:14:cf Nextlink.to A/S 0:14:d Nortel 0:14:d0 BTI Photonics 0:14:d1 TRENDware International, Inc. 0:14:d2 KYUKI CORPORATION 0:14:d3 SEPSA 0:14:d4 K Technology Corporation 0:14:d5 Datang Telecom Technology CO. , LCD,Optical Communication Br 0:14:d6 Jeongmin Electronics Co.,Ltd. 0:14:d7 DataStor Technology Inc. 0:14:d8 bio-logic SA 0:14:d9 IP Fabrics, Inc. 0:14:da Sonicaid 0:14:db Elma Trenew Electronic GmbH 0:14:dc Communication System Design & Manufacturing (CSDM) 0:14:dd Covergence Inc. 0:14:de Sage Instruments Inc. 0:14:df HI-P Tech Corporation 0:14:e Nortel 0:14:e0 LET'S Corporation 0:14:e1 Data Display AG 0:14:e2 datacom systems inc. 0:14:e3 mm-lab GmbH 0:14:e4 Integral Technologies 0:14:e5 Alticast 0:14:e6 AIM Infrarotmodule GmbH 0:14:e7 Stolinx,. Inc 0:14:e8 Motorola CHS 0:14:e9 Nortech International 0:14:ea S Digm Inc. (Safe Paradigm Inc.) 0:14:eb AwarePoint Corporation 0:14:ec Acro Telecom 0:14:ed Airak, Inc. 0:14:ee Western Digital Technologies, Inc. 0:14:ef TZero Technologies, Inc. 0:14:f Federal State Unitary Enterprise Leningrad R&D Institute of 0:14:f0 Business Security OL AB 0:14:f1 Cisco Systems 0:14:f2 Cisco Systems 0:14:f3 ViXS Systems Inc 0:14:f4 DekTec Digital Video B.V. 0:14:f5 OSI Security Devices 0:14:f6 Juniper Networks, Inc. 0:14:f7 Crevis 0:14:f8 Scientific Atlanta 0:14:f9 Vantage Controls 0:14:fa AsGa S.A. 0:14:fb Technical Solutions Inc. 0:14:fc Extandon, Inc. 0:14:fd Thecus Technology Corp. 0:14:fe Artech Electronics 0:14:ff Precise Automation, LLC 0:15:0 Intel Corporate 0:15:1 LexBox 0:15:10 Techsphere Co., Ltd 0:15:11 Data Center Systems 0:15:12 Zurich University of Applied Sciences 0:15:13 EFS sas 0:15:14 Hu Zhou NAVA Networks&Electronics Ltd. 0:15:15 Leipold+Co.GmbH 0:15:16 URIEL SYSTEMS INC. 0:15:17 Intel Corporate 0:15:18 Shenzhen 10MOONS Technology Development CO.,Ltd 0:15:19 StoreAge Networking Technologies 0:15:1a Hunter Engineering Company 0:15:1b Isilon Systems Inc. 0:15:1c LENECO 0:15:1d M2I CORPORATION 0:15:1e Metaware Co., Ltd. 0:15:1f Multivision Intelligent Surveillance (Hong Kong) Ltd 0:15:2 BETA tech 0:15:20 Radiocrafts AS 0:15:21 Horoquartz 0:15:22 Dea Security 0:15:23 Meteor Communications Corporation 0:15:24 Numatics, Inc. 0:15:25 PTI Integrated Systems, Inc. 0:15:26 Remote Technologies Inc 0:15:27 Balboa Instruments 0:15:28 Beacon Medical Products LLC d.b.a. BeaconMedaes 0:15:29 N3 Corporation 0:15:2a Nokia GmbH 0:15:2b Cisco Systems 0:15:2c Cisco Systems 0:15:2d TenX Networks, LLC 0:15:2e PacketHop, Inc. 0:15:2f Motorola CHS 0:15:3 PROFIcomms s.r.o. 0:15:30 Bus-Tech, Inc. 0:15:31 KOCOM 0:15:32 Consumer Technologies Group, LLC 0:15:33 NADAM.CO.,LTD 0:15:34 A BELTRÓNICA, Companhia de Comunicações, Lda 0:15:35 OTE Spa 0:15:36 Powertech co.,Ltd 0:15:37 Ventus Networks 0:15:38 RFID, Inc. 0:15:39 Technodrive SRL 0:15:3a Shenzhen Syscan Technology Co.,Ltd. 0:15:3b EMH Elektrizitätszähler GmbH & CoKG 0:15:3c Kprotech Co., Ltd. 0:15:3d ELIM PRODUCT CO. 0:15:3e Q-Matic Sweden AB 0:15:3f Alenia Spazio S.p.A. 0:15:4 GAME PLUS CO., LTD. 0:15:40 Nortel 0:15:41 StrataLight Communications, Inc. 0:15:42 MICROHARD S.R.L. 0:15:43 Aberdeen Test Center 0:15:44 coM.s.a.t. AG 0:15:45 SEECODE Co., Ltd. 0:15:46 ITG Worldwide Sdn Bhd 0:15:47 AiZen Solutions Inc. 0:15:48 CUBE TECHNOLOGIES 0:15:49 Dixtal Biomedica Ind. Com. Ltda 0:15:4a WANSHIH ELECTRONIC CO., LTD 0:15:4b Wonde Proud Technology Co., Ltd 0:15:4c Saunders Electronics 0:15:4d Netronome Systems, Inc. 0:15:4e Hirschmann Automation and Control GmbH 0:15:4f one RF Technology 0:15:5 Actiontec Electronics, Inc 0:15:50 Nits Technology Inc 0:15:51 RadioPulse Inc. 0:15:52 Wi-Gear Inc. 0:15:53 Cytyc Corporation 0:15:54 Atalum Wireless S.A. 0:15:55 DFM GmbH 0:15:56 SAGEM SA 0:15:57 Olivetti 0:15:58 FOXCONN 0:15:59 Securaplane Technologies, Inc. 0:15:5a DAINIPPON PHARMACEUTICAL CO., LTD. 0:15:5b Sampo Corporation 0:15:5c Dresser Wayne 0:15:5d Microsoft Corporation 0:15:5e Morgan Stanley 0:15:5f Ubiwave 0:15:6 BeamExpress, Inc 0:15:60 Hewlett Packard 0:15:61 JJPlus Corporation 0:15:62 Cisco Systems 0:15:63 Cisco Systems 0:15:64 BEHRINGER Spezielle Studiotechnik GmbH 0:15:65 XIAMEN YEALINK NETWORK TECHNOLOGY CO.,LTD 0:15:66 A-First Technology Co., Ltd. 0:15:67 RADWIN Inc. 0:15:68 Dilithium Networks 0:15:69 PECO II, Inc. 0:15:6a DG2L Technologies Pvt. Ltd. 0:15:6b Perfisans Networks Corp. 0:15:6c SANE SYSTEM CO., LTD 0:15:6d Ubiquiti Networks 0:15:6e A. W. Communication Systems Ltd 0:15:6f Xiranet Communications GmbH 0:15:7 Renaissance Learning Inc 0:15:70 Symbol Technologies 0:15:71 Nolan Systems 0:15:72 Red-Lemon 0:15:73 NewSoft Technology Corporation 0:15:74 Horizon Semiconductors Ltd. 0:15:75 Nevis Networks Inc. 0:15:76 scil animal care company GmbH 0:15:77 Allied Telesyn, Inc. 0:15:78 Audio / Video Innovations 0:15:79 Lunatone Industrielle Elektronik GmbH 0:15:7a Telefin S.p.A. 0:15:7b Leuze electronic GmbH + Co. KG 0:15:7c Dave Networks, Inc. 0:15:7d POSDATA CO., LTD. 0:15:7e HEYFRA ELECTRONIC gmbH 0:15:7f ChuanG International Holding CO.,LTD. 0:15:8 Global Target Enterprise Inc 0:15:80 U-WAY CORPORATION 0:15:81 MAKUS Inc. 0:15:82 TVonics Ltd 0:15:83 IVT corporation 0:15:84 Schenck Process GmbH 0:15:85 Aonvision Technolopy Corp. 0:15:86 Xiamen Overseas Chinese Electronic Co., Ltd. 0:15:87 Takenaka Seisakusho Co.,Ltd 0:15:88 Balda-Thong Fook Solutions Sdn. Bhd. 0:15:89 D-MAX Technology Co.,Ltd 0:15:8a SURECOM Technology Corp. 0:15:8b Park Air Systems Ltd 0:15:8c Liab ApS 0:15:8d Jennic Ltd 0:15:8e Plustek.INC 0:15:8f NTT Advanced Technology Corporation 0:15:9 Plus Technology Co., Ltd 0:15:90 Hectronic GmbH 0:15:91 RLW Inc. 0:15:92 Facom UK Ltd (Melksham) 0:15:93 U4EA Technologies Inc. 0:15:94 BIXOLON CO.,LTD 0:15:95 Quester Tangent Corporation 0:15:96 ARRIS International 0:15:97 AETA AUDIO SYSTEMS 0:15:98 Kolektor group 0:15:99 Samsung Electronics Co., LTD 0:15:9a Motorola CHS 0:15:9b Nortel 0:15:9c B-KYUNG SYSTEM Co.,Ltd. 0:15:9d Minicom Advanced Systems ltd 0:15:9e Saitek plc 0:15:9f Terascala, Inc. 0:15:a Sonoa Systems, Inc 0:15:a0 Nokia Danmark A/S 0:15:a1 SINTERS SAS 0:15:a2 ARRIS International 0:15:a3 ARRIS International 0:15:a4 ARRIS International 0:15:a5 DCI Co., Ltd. 0:15:a6 Digital Electronics Products Ltd. 0:15:a7 Robatech AG 0:15:a8 Motorola Mobile Devices 0:15:a9 KWANG WOO I&C CO.,LTD 0:15:aa Rextechnik International Co., 0:15:ab PRO CO SOUND INC 0:15:ac Capelon AB 0:15:ad Accedian Networks 0:15:ae kyung il 0:15:af AzureWave Technologies, Inc. 0:15:b SAGE INFOTECH LTD. 0:15:b0 AUTOTELENET CO.,LTD 0:15:b1 Ambient Corporation 0:15:b2 Advanced Industrial Computer, Inc. 0:15:b3 Caretech AB 0:15:b4 Polymap Wireless LLC 0:15:b5 CI Network Corp. 0:15:b6 ShinMaywa Industries, Ltd. 0:15:b7 Toshiba 0:15:b8 Tahoe 0:15:b9 Samsung Electronics Co., Ltd. 0:15:ba iba AG 0:15:bb SMA Technologie AG 0:15:bc Develco 0:15:bd Group 4 Technology Ltd 0:15:be Iqua Ltd. 0:15:bf technicob 0:15:c AVM GmbH 0:15:c0 DIGITAL TELEMEDIA CO.,LTD. 0:15:c1 SONY Computer Entertainment inc, 0:15:c2 3M Germany 0:15:c3 Ruf Telematik AG 0:15:c4 FLOVEL CO., LTD. 0:15:c5 Dell Inc 0:15:c6 Cisco Systems 0:15:c7 Cisco Systems 0:15:c8 FlexiPanel Ltd 0:15:c9 Gumstix, Inc 0:15:ca TeraRecon, Inc. 0:15:cb Surf Communication Solutions Ltd. 0:15:cc TEPCO UQUEST, LTD. 0:15:cd Exartech International Corp. 0:15:ce ARRIS International 0:15:cf ARRIS International 0:15:d Hoana Medical, Inc. 0:15:d0 ARRIS International 0:15:d1 ARRIS International 0:15:d2 Xantech Corporation 0:15:d3 Pantech&Curitel Communications, Inc. 0:15:d4 Emitor AB 0:15:d5 NICEVT 0:15:d6 OSLiNK Sp. z o.o. 0:15:d7 Reti Corporation 0:15:d8 Interlink Electronics 0:15:d9 PKC Electronics Oy 0:15:da IRITEL A.D. 0:15:db Canesta Inc. 0:15:dc KT&C Co., Ltd. 0:15:dd IP Control Systems Ltd. 0:15:de Nokia Danmark A/S 0:15:df Clivet S.p.A. 0:15:e OPENBRAIN TECHNOLOGIES CO., LTD. 0:15:e0 Ericsson Mobile Platforms 0:15:e1 picoChip Designs Ltd 0:15:e2 Wissenschaftliche Geraetebau Dr. Ing. H. Knauer GmbH 0:15:e3 Dream Technologies Corporation 0:15:e4 Zimmer Elektromedizin 0:15:e5 Cheertek Inc. 0:15:e6 MOBILE TECHNIKA Inc. 0:15:e7 Quantec ProAudio 0:15:e8 Nortel 0:15:e9 D-Link Corporation 0:15:ea Tellumat (Pty) Ltd 0:15:eb ZTE CORPORATION 0:15:ec Boca Devices LLC 0:15:ed Fulcrum Microsystems, Inc. 0:15:ee Omnex Control Systems 0:15:ef NEC TOKIN Corporation 0:15:f mingjong 0:15:f0 EGO BV 0:15:f1 KYLINK Communications Corp. 0:15:f2 ASUSTek COMPUTER INC. 0:15:f3 PELTOR AB 0:15:f4 Eventide 0:15:f5 Sustainable Energy Systems 0:15:f6 SCIENCE AND ENGINEERING SERVICES, INC. 0:15:f7 Wintecronics Ltd. 0:15:f8 Kingtronics Industrial Co. Ltd. 0:15:f9 Cisco Systems 0:15:fa Cisco Systems 0:15:fb setex schermuly textile computer gmbh 0:15:fc Startco Engineering Ltd. 0:15:fd Complete Media Systems 0:15:fe SCHILLING ROBOTICS LLC 0:15:ff Novatel Wireless, Inc. 0:16:0 CelleBrite Mobile Synchronization 0:16:1 Buffalo Inc. 0:16:10 Carina Technology 0:16:11 Altecon Srl 0:16:12 Otsuka Electronics Co., Ltd. 0:16:13 LibreStream Technologies Inc. 0:16:14 Picosecond Pulse Labs 0:16:15 Nittan Company, Limited 0:16:16 BROWAN COMMUNICATION INC. 0:16:17 MSI 0:16:18 HIVION Co., Ltd. 0:16:19 La Factoría de Comunicaciones Aplicadas,S.L. 0:16:1a Dametric AB 0:16:1b Micronet Corporation 0:16:1c e:cue 0:16:1d Innovative Wireless Technologies, Inc. 0:16:1e Woojinnet 0:16:1f SUNWAVETEC Co., Ltd. 0:16:2 CEYON TECHNOLOGY CO.,LTD. 0:16:20 Sony Ericsson Mobile Communications AB 0:16:21 Colorado Vnet 0:16:22 BBH SYSTEMS GMBH 0:16:23 Interval Media 0:16:24 PRIVATE 0:16:25 Impinj, Inc. 0:16:26 Motorola CHS 0:16:27 embedded-logic DESIGN AND MORE GmbH 0:16:28 Ultra Electronics Manufacturing and Card Systems 0:16:29 Nivus GmbH 0:16:2a Antik computers & communications s.r.o. 0:16:2b Togami Electric Mfg.co.,Ltd. 0:16:2c Xanboo 0:16:2d STNet Co., Ltd. 0:16:2e Space Shuttle Hi-Tech Co., Ltd. 0:16:2f Geutebrück GmbH 0:16:3 PRIVATE 0:16:30 Vativ Technologies 0:16:31 Xteam 0:16:32 SAMSUNG ELECTRONICS CO., LTD. 0:16:33 Oxford Diagnostics Ltd. 0:16:34 Mathtech, Inc. 0:16:35 Hewlett Packard 0:16:36 Quanta Computer Inc. 0:16:37 Citel Srl 0:16:38 TECOM Co., Ltd. 0:16:39 UBIQUAM Co.,Ltd 0:16:3a YVES TECHNOLOGY CO., LTD. 0:16:3b VertexRSI/General Dynamics 0:16:3c Rebox B.V. 0:16:3d Tsinghua Tongfang Legend Silicon Tech. Co., Ltd. 0:16:3e Xensource, Inc. 0:16:3f CReTE SYSTEMS Inc. 0:16:4 Sigpro 0:16:40 Asmobile Communication Inc. 0:16:41 USI 0:16:42 Pangolin 0:16:43 Sunhillo Corproation 0:16:44 LITE-ON Technology Corp. 0:16:45 Power Distribution, Inc. 0:16:46 Cisco Systems 0:16:47 Cisco Systems 0:16:48 SSD Company Limited 0:16:49 SetOne GmbH 0:16:4a Vibration Technology Limited 0:16:4b Quorion Data Systems GmbH 0:16:4c PLANET INT Co., Ltd 0:16:4d Alcatel North America IP Division 0:16:4e Nokia Danmark A/S 0:16:4f World Ethnic Broadcastin Inc. 0:16:5 YORKVILLE SOUND INC. 0:16:50 EYAL MICROWAVE 0:16:51 PRIVATE 0:16:52 Hoatech Technologies, Inc. 0:16:53 LEGO System A/S IE Electronics Division 0:16:54 Flex-P Industries Sdn. Bhd. 0:16:55 FUHO TECHNOLOGY Co., LTD 0:16:56 Nintendo Co., Ltd. 0:16:57 Aegate Ltd 0:16:58 Fusiontech Technologies Inc. 0:16:59 Z.M.P. RADWAG 0:16:5a Harman Specialty Group 0:16:5b Grip Audio 0:16:5c Trackflow Ltd 0:16:5d AirDefense, Inc. 0:16:5e Precision I/O 0:16:5f Fairmount Automation 0:16:6 Ideal Industries 0:16:60 Nortel 0:16:61 Novatium Solutions (P) Ltd 0:16:62 Liyuh Technology Ltd. 0:16:63 KBT Mobile 0:16:64 Prod-El SpA 0:16:65 Cellon France 0:16:66 Quantier Communication Inc. 0:16:67 A-TEC Subsystem INC. 0:16:68 Eishin Electronics 0:16:69 MRV Communication (Networks) LTD 0:16:6a TPS 0:16:6b Samsung Electronics 0:16:6c Samsung Electonics Digital Video System Division 0:16:6d Yulong Computer Telecommunication Scientific(shenzhen)Co.,Lt 0:16:6e Arbitron Inc. 0:16:6f Intel Corporation 0:16:7 Curves International Inc. 0:16:70 SKNET Corporation 0:16:71 Symphox Information Co. 0:16:72 Zenway enterprise ltd 0:16:73 PRIVATE 0:16:74 EuroCB (Phils.), Inc. 0:16:75 Motorola MDb 0:16:76 Intel Corporation 0:16:77 Bihl+Wiedemann GmbH 0:16:78 SHENZHEN BAOAN GAOKE ELECTRONICS CO., LTD 0:16:79 eOn Communications 0:16:7a Skyworth Overseas Dvelopment Ltd. 0:16:7b Haver&Boecker 0:16:7c iRex Technologies BV 0:16:7d Sky-Line 0:16:7e DIBOSS.CO.,LTD 0:16:7f Bluebird Soft Inc. 0:16:8 Sequans Communications 0:16:80 Bally Gaming + Systems 0:16:81 Vector Informatik GmbH 0:16:82 Pro Dex, Inc 0:16:83 WEBIO International Co.,.Ltd. 0:16:84 Donjin Co.,Ltd. 0:16:85 FRWD Technologies Ltd. 0:16:86 Karl Storz Imaging 0:16:87 Chubb CSC-Vendor AP 0:16:88 ServerEngines LLC 0:16:89 Pilkor Electronics Co., Ltd 0:16:8a id-Confirm Inc 0:16:8b Paralan Corporation 0:16:8c DSL Partner AS 0:16:8d KORWIN CO., Ltd. 0:16:8e Vimicro corporation 0:16:8f GN Netcom as 0:16:9 Unitech electronics co., ltd. 0:16:90 J-TEK INCORPORATION 0:16:91 Moser-Baer AG 0:16:92 Scientific-Atlanta, Inc. 0:16:93 PowerLink Technology Inc. 0:16:94 Sennheiser Communications A/S 0:16:95 AVC Technology Limited 0:16:96 QDI Technology (H.K.) Limited 0:16:97 NEC Corporation 0:16:98 T&A Mobile Phones SAS 0:16:99 PRIVATE 0:16:9a Quadrics Ltd 0:16:9b Alstom Transport 0:16:9c Cisco Systems 0:16:9d Cisco Systems 0:16:9e TV One Ltd 0:16:9f Vimtron Electronics Co., Ltd. 0:16:a SWEEX Europe BV 0:16:a0 Auto-Maskin 0:16:a1 3Leaf Networks 0:16:a2 CentraLite Systems, Inc. 0:16:a3 TEAM ARTECHE, S.A. 0:16:a4 Ezurio Ltd 0:16:a5 Tandberg Storage ASA 0:16:a6 Dovado FZ-LLC 0:16:a7 AWETA G&P 0:16:a8 CWT CO., LTD. 0:16:a9 2EI 0:16:aa Kei Communication Technology Inc. 0:16:ab PBI-Dansensor A/S 0:16:ac Toho Technology Corp. 0:16:ad BT-Links Company Limited 0:16:ae INVENTEL 0:16:af Shenzhen Union Networks Equipment Co.,Ltd. 0:16:b TVWorks LLC 0:16:b0 VK Corporation 0:16:b1 KBS 0:16:b2 DriveCam Inc 0:16:b3 Photonicbridges (China) Co., Ltd. 0:16:b4 PRIVATE 0:16:b5 Motorola CHS 0:16:b6 Cisco-Linksys 0:16:b7 Seoul Commtech 0:16:b8 Sony Ericsson Mobile Communications 0:16:b9 ProCurve Networking 0:16:ba WEATHERNEWS INC. 0:16:bb Law-Chain Computer Technology Co Ltd 0:16:bc Nokia Danmark A/S 0:16:bd ATI Industrial Automation 0:16:be INFRANET, Inc. 0:16:bf PaloDEx Group Oy 0:16:c LPL DEVELOPMENT S.A. DE C.V 0:16:c0 Semtech Corporation 0:16:c1 Eleksen Ltd 0:16:c2 Avtec Systems Inc 0:16:c3 BA Systems Inc 0:16:c4 SiRF Technology, Inc. 0:16:c5 Shenzhen Xing Feng Industry Co.,Ltd 0:16:c6 North Atlantic Industries 0:16:c7 Cisco Systems 0:16:c8 Cisco Systems 0:16:c9 NAT Seattle, Inc. 0:16:ca Nortel 0:16:cb Apple Computer 0:16:cc Xcute Mobile Corp. 0:16:cd HIJI HIGH-TECH CO., LTD. 0:16:ce Hon Hai Precision Ind. Co., Ltd. 0:16:cf Hon Hai Precision Ind. Co., Ltd. 0:16:d Be Here Corporation 0:16:d0 ATech elektronika d.o.o. 0:16:d1 ZAT a.s. 0:16:d2 Caspian 0:16:d3 Wistron Corporation 0:16:d4 Compal Communications, Inc. 0:16:d5 Synccom Co., Ltd 0:16:d6 TDA Tech Pty Ltd 0:16:d7 Sunways AG 0:16:d8 Senea AB 0:16:d9 NINGBO BIRD CO.,LTD. 0:16:da Futronic Technology Co. Ltd. 0:16:db Samsung Electronics Co., Ltd. 0:16:dc ARCHOS 0:16:dd Gigabeam Corporation 0:16:de FAST Inc 0:16:df Lundinova AB 0:16:e Optica Technologies Inc. 0:16:e0 3Com Europe Ltd 0:16:e1 SiliconStor, Inc. 0:16:e2 American Fibertek, Inc. 0:16:e3 ASKEY COMPUTER CORP. 0:16:e4 VANGUARD SECURITY ENGINEERING CORP. 0:16:e5 FORDLEY DEVELOPMENT LIMITED 0:16:e6 GIGA-BYTE TECHNOLOGY CO.,LTD. 0:16:e7 Dynamix Promotions Limited 0:16:e8 Sigma Designs, Inc. 0:16:e9 Tiba Medical Inc 0:16:ea Intel Corporation 0:16:eb Intel Corporation 0:16:ec Elitegroup Computer Systems Co., Ltd. 0:16:ed Integrian, Inc. 0:16:ee RoyalDigital Inc. 0:16:ef Koko Fitness, Inc. 0:16:f BADGER METER INC 0:16:f0 Zermatt Systems, Inc 0:16:f1 OmniSense, LLC 0:16:f2 Dmobile System Co., Ltd. 0:16:f3 CAST Information Co., Ltd 0:16:f4 Eidicom Co., Ltd. 0:16:f5 Dalian Golden Hualu Digital Technology Co.,Ltd 0:16:f6 Video Products Group 0:16:f7 L-3 Communications, Electrodynamics, Inc. 0:16:f8 PRIVATE 0:16:f9 CETRTA POT, d.o.o., Kranj 0:16:fa ECI Telecom Ltd. 0:16:fb SHENZHEN MTC CO.,LTD. 0:16:fc TOHKEN CO.,LTD. 0:16:fd Jaty Electronics 0:16:fe Alps Electric Co., Ltd 0:16:ff Wamin Optocomm Mfg Corp 0:17:0 Motorola MDb 0:17:1 KDE, Inc. 0:17:10 Casa Systems Inc. 0:17:11 GE Healthcare Bio-Sciences AB 0:17:12 ISCO International 0:17:13 Tiger NetCom 0:17:14 BR Controls Nederland bv 0:17:15 Qstik 0:17:16 Qno Technology Inc. 0:17:17 Leica Geosystems AG 0:17:18 Vansco Electronics Oy 0:17:19 AudioCodes USA, Inc 0:17:1a Winegard Company 0:17:1b Innovation Lab Corp. 0:17:1c NT MicroSystems, Inc. 0:17:1d DIGIT 0:17:1e Theo Benning GmbH & Co. KG 0:17:1f IMV Corporation 0:17:2 Osung Midicom Co., Ltd 0:17:20 Image Sensing Systems, Inc. 0:17:21 FITRE S.p.A. 0:17:22 Hanazeder Electronic GmbH 0:17:23 Summit Data Communications 0:17:24 Studer Professional Audio GmbH 0:17:25 Liquid Computing 0:17:26 m2c Electronic Technology Ltd. 0:17:27 Thermo Ramsey Italia s.r.l. 0:17:28 Selex Communications 0:17:29 Ubicod Co.LTD 0:17:2a Proware Technology Corp. 0:17:2b Global Technologies Inc. 0:17:2c TAEJIN INFOTECH 0:17:2d Axcen Photonics Corporation 0:17:2e FXC Inc. 0:17:2f NeuLion Incorporated 0:17:3 MOSDAN Internation Co.,Ltd 0:17:30 Automation Electronics 0:17:31 ASUSTek COMPUTER INC. 0:17:32 Science-Technical Center "RISSA" 0:17:33 neuf cegetel 0:17:34 LGC Wireless Inc. 0:17:35 PRIVATE 0:17:36 iiTron Inc. 0:17:37 Industrie Dial Face S.p.A. 0:17:38 XIV 0:17:39 Bright Headphone Electronics Company 0:17:3a Edge Integration Systems Inc. 0:17:3b Arched Rock Corporation 0:17:3c Extreme Engineering Solutions 0:17:3d Neology 0:17:3e LeucotronEquipamentos Ltda. 0:17:3f Belkin Corporation 0:17:4 Shinco Electronics Group Co.,Ltd 0:17:40 Technologies Labtronix 0:17:41 DEFIDEV 0:17:42 FUJITSU LIMITED 0:17:43 PRIVATE 0:17:44 Araneo Ltd. 0:17:45 INNOTZ CO., Ltd 0:17:46 Freedom9 Inc. 0:17:47 Trimble 0:17:48 Neokoros Brasil Ltda 0:17:49 HYUNDAE YONG-O-SA CO.,LTD 0:17:4a SOCOMEC 0:17:4b Nokia Danmark A/S 0:17:4c Millipore 0:17:4d DYNAMIC NETWORK FACTORY, INC. 0:17:4e Parama-tech Co.,Ltd. 0:17:4f iCatch Inc. 0:17:5 Methode Electronics 0:17:50 GSI Group, MicroE Systems 0:17:51 Online Corporation 0:17:52 DAGS, Inc 0:17:53 nFore Technology Inc. 0:17:54 Arkino Corporation., Ltd 0:17:55 GE Security 0:17:56 Vinci Labs Oy 0:17:57 RIX TECHNOLOGY LIMITED 0:17:58 ThruVision Ltd 0:17:59 Cisco Systems 0:17:5a Cisco Systems 0:17:5b ACS Solutions Switzerland Ltd. 0:17:5c SHARP CORPORATION 0:17:5d Dongseo system. 0:17:5e Anta Systems, Inc. 0:17:5f XENOLINK Communications Co., Ltd. 0:17:6 Techfaithwireless Communication Technology Limited. 0:17:60 Naito Densei Machida MFG.CO.,LTD 0:17:61 ZKSoftware Inc. 0:17:62 Solar Technology, Inc. 0:17:63 Essentia S.p.A. 0:17:64 ATMedia GmbH 0:17:65 Nortel 0:17:66 Accense Technology, Inc. 0:17:67 Earforce AS 0:17:68 Zinwave Ltd 0:17:69 Cymphonix Corp 0:17:6a Avago Technologies 0:17:6b Kiyon, Inc. 0:17:6c Pivot3, Inc. 0:17:6d CORE CORPORATION 0:17:6e DUCATI SISTEMI 0:17:6f PAX Computer Technology(Shenzhen) Ltd. 0:17:7 InGrid, Inc 0:17:70 Arti Industrial Electronics Ltd. 0:17:71 APD Communications Ltd 0:17:72 ASTRO Strobel Kommunikationssysteme GmbH 0:17:73 Laketune Technologies Co. Ltd 0:17:74 Elesta GmbH 0:17:75 TTE Germany GmbH 0:17:76 Meso Scale Diagnostics, LLC 0:17:77 Obsidian Research Corporation 0:17:78 Central Music Co. 0:17:79 QuickTel 0:17:7a ASSA ABLOY AB 0:17:7b Azalea Networks inc 0:17:7c D-Link India Ltd 0:17:7d IDT International Limited 0:17:7e Meshcom Technologies Inc. 0:17:7f Worldsmart Retech 0:17:8 Hewlett Packard 0:17:80 Applera Holding B.V. Singapore Operations 0:17:81 Greystone Data System, Inc. 0:17:82 LoBenn Inc. 0:17:83 Texas Instruments 0:17:84 Motorola Mobile Devices 0:17:85 Sparr Electronics Ltd 0:17:86 wisembed 0:17:87 Brother, Brother & Sons ApS 0:17:88 Philips Lighting BV 0:17:89 Zenitron Corporation 0:17:8a DARTS TECHNOLOGIES CORP. 0:17:8b Teledyne Technologies Incorporated 0:17:8c Independent Witness, Inc 0:17:8d Checkpoint Systems, Inc. 0:17:8e Gunnebo Cash Automation AB 0:17:8f NINGBO YIDONG ELECTRONIC CO.,LTD. 0:17:9 Exalt Communications 0:17:90 HYUNDAI DIGITECH Co, Ltd. 0:17:91 LinTech GmbH 0:17:92 Falcom Wireless Comunications Gmbh 0:17:93 Tigi Corporation 0:17:94 Cisco Systems 0:17:95 Cisco Systems 0:17:96 Rittmeyer AG 0:17:97 Telsy Elettronica S.p.A. 0:17:98 Azonic Technology Co., LTD 0:17:99 SmarTire Systems Inc. 0:17:9a D-Link Corporation 0:17:9b Chant Sincere CO., LTD. 0:17:9c DEPRAG SCHULZ GMBH u. CO. 0:17:9d Kelman Limited 0:17:9e Sirit Inc 0:17:9f Apricorn 0:17:a INEW DIGITAL COMPANY 0:17:a0 RoboTech srl 0:17:a1 3soft inc. 0:17:a2 Camrivox Ltd. 0:17:a3 MIX s.r.l. 0:17:a4 Global Data Services 0:17:a5 TrendChip Technologies Corp. 0:17:a6 YOSIN ELECTRONICS CO., LTD. 0:17:a7 Mobile Computing Promotion Consortium 0:17:a8 EDM Corporation 0:17:a9 Sentivision 0:17:aa elab-experience inc. 0:17:ab Nintendo Co., Ltd. 0:17:ac O'Neil Product Development Inc. 0:17:ad AceNet Corporation 0:17:ae GAI-Tronics 0:17:af Enermet 0:17:b Contela, Inc. 0:17:b0 Nokia Danmark A/S 0:17:b1 ACIST Medical Systems, Inc. 0:17:b2 SK Telesys 0:17:b3 Aftek Infosys Limited 0:17:b4 Remote Security Systems, LLC 0:17:b5 Peerless Systems Corporation 0:17:b6 Aquantia 0:17:b7 Tonze Technology Co. 0:17:b8 NOVATRON CO., LTD. 0:17:b9 Gambro Lundia AB 0:17:ba SEDO CO., LTD. 0:17:bb Syrinx Industrial Electronics 0:17:bc Touchtunes Music Corporation 0:17:bd Tibetsystem 0:17:be Tratec Telecom B.V. 0:17:bf Coherent Research Limited 0:17:c Benefon Oyj 0:17:c0 PureTech Systems, Inc. 0:17:c1 CM Precision Technology LTD. 0:17:c2 Pirelli Broadband Solutions 0:17:c3 KTF Technologies Inc. 0:17:c4 Quanta Microsystems, INC. 0:17:c5 SonicWALL 0:17:c6 Labcal Technologies 0:17:c7 MARA Systems Consulting AB 0:17:c8 Kyocera Mita Corporation 0:17:c9 Samsung Electronics Co., Ltd. 0:17:ca BenQ Corporation 0:17:cb Juniper Networks 0:17:cc Alcatel USA Sourcing LP 0:17:cd CEC Wireless R&D Ltd. 0:17:ce MB International Telecom Labs srl 0:17:cf iMCA-GmbH 0:17:d Dust Networks Inc. 0:17:d0 Opticom Communications, LLC 0:17:d1 Nortel 0:17:d2 THINLINX PTY LTD 0:17:d3 Etymotic Research, Inc. 0:17:d4 Monsoon Multimedia, Inc 0:17:d5 Samsung Electronics Co., Ltd. 0:17:d6 Bluechips Microhouse Co.,Ltd. 0:17:d7 Input/Output Inc. 0:17:d8 Magnum Semiconductor, Inc. 0:17:d9 AAI Corporation 0:17:da Spans Logic 0:17:db PRIVATE 0:17:dc DAEMYUNG ZERO1 0:17:dd Clipsal Australia 0:17:de Advantage Six Ltd 0:17:df Cisco Systems 0:17:e Cisco Systems 0:17:e0 Cisco Systems 0:17:e1 DACOS Technologies Co., Ltd. 0:17:e2 Motorola Mobile Devices 0:17:e3 Texas Instruments 0:17:e4 Texas Instruments 0:17:e5 Texas Instruments 0:17:e6 Texas Instruments 0:17:e7 Texas Instruments 0:17:e8 Texas Instruments 0:17:e9 Texas Instruments 0:17:ea Texas Instruments 0:17:eb Texas Instruments 0:17:ec Texas Instruments 0:17:ed WooJooIT Ltd. 0:17:ee Motorola CHS 0:17:ef Blade Network Technologies, Inc. 0:17:f Cisco Systems 0:17:f0 SZCOM Broadband Network Technology Co.,Ltd 0:17:f1 Renu Electronics Pvt Ltd 0:17:f2 Apple Computer 0:17:f3 M/A-COM Wireless Systems 0:17:f4 ZERON ALLIANCE 0:17:f5 NEOPTEK 0:17:f6 Pyramid Meriden Inc. 0:17:f7 CEM Solutions Pvt Ltd 0:17:f8 Motech Industries Inc. 0:17:f9 Forcom Sp. z o.o. 0:17:fa Microsoft Corporation 0:17:fb FA 0:17:fc Suprema Inc. 0:17:fd Amulet Hotkey 0:17:fe TALOS SYSTEM INC. 0:17:ff PLAYLINE Co.,Ltd. 0:18:0 UNIGRAND LTD 0:18:1 Actiontec Electronics, Inc 0:18:10 IPTrade S.A. 0:18:11 Neuros Technology International, LLC. 0:18:12 Beijing Xinwei Telecom Technology Co., Ltd. 0:18:13 Sony Ericsson Mobile Communications 0:18:14 Mitutoyo Corporation 0:18:15 GZ Technologies, Inc. 0:18:16 Ubixon Co., Ltd. 0:18:17 D. E. Shaw Research, LLC 0:18:18 Cisco Systems 0:18:19 Cisco Systems 0:18:1a AVerMedia Technologies Inc. 0:18:1b TaiJin Metal Co., Ltd. 0:18:1c Exterity Limited 0:18:1d ASIA ELECTRONICS CO.,LTD 0:18:1e GDX Technologies Ltd. 0:18:1f Palmmicro Communications 0:18:2 Alpha Networks Inc. 0:18:20 w5networks 0:18:21 SINDORICOH 0:18:22 CEC TELECOM CO.,LTD. 0:18:23 Delta Electronics, Inc. 0:18:24 Kimaldi Electronics, S.L. 0:18:25 Wavion LTD 0:18:26 Cale Access AB 0:18:27 NEC PHILIPS UNIFIED SOLUTIONS NEDERLAND BV 0:18:28 e2v technologies (UK) ltd. 0:18:29 Gatsometer 0:18:2a Taiwan Video & Monitor 0:18:2b Softier 0:18:2c Ascend Networks, Inc. 0:18:2d Artec Group OÜ 0:18:2e Wireless Ventures USA 0:18:2f Texas Instruments 0:18:3 ArcSoft Shanghai Co. LTD 0:18:30 Texas Instruments 0:18:31 Texas Instruments 0:18:32 Texas Instruments 0:18:33 Texas Instruments 0:18:34 Texas Instruments 0:18:35 ITC 0:18:36 Reliance Electric Limited 0:18:37 Universal ABIT Co., Ltd. 0:18:38 PanAccess Communications,Inc. 0:18:39 Cisco-Linksys LLC 0:18:3a Westell Technologies 0:18:3b CENITS Co., Ltd. 0:18:3c Encore Software Limited 0:18:3d Vertex Link Corporation 0:18:3e Digilent, Inc 0:18:3f 2Wire, Inc 0:18:4 E-TEK DIGITAL TECHNOLOGY LIMITED 0:18:40 3 Phoenix, Inc. 0:18:41 High Tech Computer Corp 0:18:42 Nokia Danmark A/S 0:18:43 Dawevision Ltd 0:18:44 Heads Up Technologies, Inc. 0:18:45 NPL Pulsar Ltd. 0:18:46 Crypto S.A. 0:18:47 AceNet Technology Inc. 0:18:48 Vcom Inc. 0:18:49 Pigeon Point Systems 0:18:4a Catcher, Inc. 0:18:4b Las Vegas Gaming, Inc. 0:18:4c Bogen Communications 0:18:4d Netgear Inc. 0:18:4e Lianhe Technologies, Inc. 0:18:4f 8 Ways Technology Corp. 0:18:5 Beijing InHand Networking 0:18:50 Secfone Kft 0:18:51 SWsoft 0:18:52 StorLink Semiconductors, Inc. 0:18:53 Atera Networks LTD. 0:18:54 Argard Co., Ltd 0:18:55 Aeromaritime Systembau GmbH 0:18:56 EyeFi, Inc 0:18:57 Unilever R&D 0:18:58 TagMaster AB 0:18:59 Strawberry Linux Co.,Ltd. 0:18:5a uControl, Inc. 0:18:5b Network Chemistry, Inc 0:18:5c EDS Lab Pte Ltd 0:18:5d TAIGUEN TECHNOLOGY (SHEN-ZHEN) CO., LTD. 0:18:5e Nexterm Inc. 0:18:5f TAC Inc. 0:18:6 Hokkei Industries Co., Ltd. 0:18:60 SIM Technology Group Shanghai Simcom Ltd., 0:18:61 Ooma, Inc. 0:18:62 Seagate Technology 0:18:63 Veritech Electronics Limited 0:18:64 Cybectec Inc. 0:18:65 Bayer Diagnostics Sudbury Ltd 0:18:66 Leutron Vision 0:18:67 Evolution Robotics Retail 0:18:68 Scientific Atlanta, A Cisco Company 0:18:69 KINGJIM 0:18:6a Global Link Digital Technology Co,.LTD 0:18:6b Sambu Communics CO., LTD. 0:18:6c Neonode AB 0:18:6d Zhenjiang Sapphire Electronic Industry CO. 0:18:6e 3COM Europe Ltd 0:18:6f Setha Industria Eletronica LTDA 0:18:7 Fanstel Corp. 0:18:70 E28 Shanghai Limited 0:18:71 Global Data Services 0:18:72 Expertise Engineering 0:18:73 Cisco Systems 0:18:74 Cisco Systems 0:18:75 AnaCise Testnology Pte Ltd 0:18:76 WowWee Ltd. 0:18:77 Amplex A/S 0:18:78 Mackware GmbH 0:18:79 dSys 0:18:7a Wiremold 0:18:7b 4NSYS Co. Ltd. 0:18:7c INTERCROSS, LLC 0:18:7d Armorlink shanghai Co. Ltd 0:18:7e RGB Spectrum 0:18:7f ZODIANET 0:18:8 SightLogix, Inc. 0:18:80 Mobilygen 0:18:81 Buyang Electronics Industrial Co., Ltd 0:18:82 Huawei Technologies Co., Ltd. 0:18:83 FORMOSA21 INC. 0:18:84 FON 0:18:85 Avigilon Corporation 0:18:86 EL-TECH, INC. 0:18:87 Metasystem SpA 0:18:88 GOTIVE a.s. 0:18:89 WinNet Solutions Limited 0:18:8a Infinova LLC 0:18:8b Dell 0:18:8c Mobile Action Technology Inc. 0:18:8d Nokia Danmark A/S 0:18:8e Ekahau, Inc. 0:18:8f Montgomery Technology, Inc. 0:18:9 CRESYN 0:18:90 RadioCOM, s.r.o. 0:18:91 Zhongshan General K-mate Electronics Co., Ltd 0:18:92 ads-tec GmbH 0:18:93 SHENZHEN PHOTON BROADBAND TECHNOLOGY CO.,LTD 0:18:94 zimocom 0:18:95 Hansun Technologies Inc. 0:18:96 Great Well Electronic LTD 0:18:97 JESS-LINK PRODUCTS Co., LTD 0:18:98 KINGSTATE ELECTRONICS CORPORATION 0:18:99 ShenZhen jieshun Science&Technology Industry CO,LTD. 0:18:9a HANA Micron Inc. 0:18:9b Thomson Inc. 0:18:9c Weldex Corporation 0:18:9d Navcast Inc. 0:18:9e OMNIKEY GmbH. 0:18:9f Lenntek Corporation 0:18:a Meraki Networks, Inc. 0:18:a0 Cierma Ascenseurs 0:18:a1 Tiqit Computers, Inc. 0:18:a2 XIP Technology AB 0:18:a3 ZIPPY TECHNOLOGY CORP. 0:18:a4 Motorola Mobile Devices 0:18:a5 ADigit Technologies Corp. 0:18:a6 Persistent Systems, LLC 0:18:a7 Yoggie Security Systems LTD. 0:18:a8 AnNeal Technology Inc. 0:18:a9 Ethernet Direct Corporation 0:18:aa PRIVATE 0:18:ab BEIJING LHWT MICROELECTRONICS INC. 0:18:ac Shanghai Jiao Da HISYS Technology Co. Ltd. 0:18:ad NIDEC SANKYO CORPORATION 0:18:ae Tongwei Video Technology CO.,LTD 0:18:af Samsung Electronics Co., Ltd. 0:18:b Brilliant Telecommunications 0:18:b0 Nortel 0:18:b1 Blade Network Technologies 0:18:b2 ADEUNIS RF 0:18:b3 TEC WizHome Co., Ltd. 0:18:b4 Dawon Media Inc. 0:18:b5 Magna Carta 0:18:b6 S3C, Inc. 0:18:b7 D3 LED, LLC 0:18:b8 New Voice International AG 0:18:b9 Cisco Systems 0:18:ba Cisco Systems 0:18:bb Eliwell Controls srl 0:18:bc ZAO NVP Bolid 0:18:bd SHENZHEN DVBWORLD TECHNOLOGY CO., LTD. 0:18:be ANSA Corporation 0:18:bf Essence Technology Solution, Inc. 0:18:c Optelian Access Networks Corporation 0:18:c0 Motorola CHS 0:18:c1 Almitec Informática e Comércio Ltda. 0:18:c2 Firetide, Inc 0:18:c3 C&S Microwave 0:18:c4 Raba Technologies LLC 0:18:c5 Nokia Danmark A/S 0:18:c6 OPW Fuel Management Systems 0:18:c7 Real Time Automation 0:18:c8 ISONAS Inc. 0:18:c9 EOps Technology Limited 0:18:ca Viprinet GmbH 0:18:cb Tecobest Technology Limited 0:18:cc AXIOHM SAS 0:18:cd Erae Electronics Industry Co., Ltd 0:18:ce Dreamtech Co., Ltd 0:18:cf Baldor Electric Company 0:18:d Terabytes Server Storage Tech Corp 0:18:d0 @ROAD Inc 0:18:d1 Siemens Home & Office Comm. Devices 0:18:d2 High-Gain Antennas LLC 0:18:d3 TEAMCAST 0:18:d4 Unified Display Interface SIG 0:18:d5 REIGNCOM 0:18:d6 Swirlnet A/S 0:18:d7 Javad Navigation Systems Inc. 0:18:d8 ARCH METER Corporation 0:18:d9 Santosha Internatonal, Inc 0:18:da AMBER wireless GmbH 0:18:db EPL Technology Ltd 0:18:dc Prostar Co., Ltd. 0:18:dd Silicondust Engineering Ltd 0:18:de Intel Corporation 0:18:df The Morey Corporation 0:18:e Avega Systems 0:18:e0 ANAVEO 0:18:e1 Verkerk Service Systemen 0:18:e2 Topdata Sistemas de Automacao Ltda 0:18:e3 Visualgate Systems, Inc. 0:18:e4 YIGUANG 0:18:e5 Adhoco AG 0:18:e6 Computer Hardware Design SIA 0:18:e7 Cameo Communications, INC. 0:18:e8 Hacetron Corporation 0:18:e9 Numata Corporation 0:18:ea Alltec GmbH 0:18:eb BroVis Wireless Networks 0:18:ec Welding Technology Corporation 0:18:ed ACCUTECH INTERNATIONAL CO., LTD. 0:18:ee Videology Imaging Solutions, Inc. 0:18:ef Escape Communications, Inc. 0:18:f Nokia Danmark A/S 0:18:f0 JOYTOTO Co., Ltd. 0:18:f1 Chunichi Denshi Co.,LTD. 0:18:f2 Beijing Tianyu Communication Equipment Co., Ltd 0:18:f3 ASUSTek COMPUTER INC. 0:18:f4 EO TECHNICS Co., Ltd. 0:18:f5 Shenzhen Streaming Video Technology Company Limited 0:18:f6 Thomson Telecom Belgium 0:18:f7 Kameleon Technologies 0:18:f8 Cisco-Linksys LLC 0:18:f9 VVOND, Inc. 0:18:fa Yushin Precision Equipment Co.,Ltd. 0:18:fb Compro Technology 0:18:fc Altec Electronic AG 0:18:fd Optimal Technologies International Inc. 0:18:fe Hewlett Packard 0:18:ff PowerQuattro Co. 0:19:0 Intelliverese - DBA Voicecom 0:19:1 F1MEDIA 0:19:10 Knick Elektronische Messgeraete GmbH & Co. KG 0:19:11 Just In Mobile Information Technologies (Shanghai) Co., Ltd. 0:19:12 Welcat Inc 0:19:13 Chuang-Yi Network Equipment Co.Ltd. 0:19:14 Winix Co., Ltd 0:19:15 TECOM Co., Ltd. 0:19:16 PayTec AG 0:19:17 Posiflex Inc. 0:19:18 Interactive Wear AG 0:19:19 ASTEL Inc. 0:19:1a IRLINK 0:19:1b Sputnik Engineering AG 0:19:2 Cambridge Consultants Ltd 0:19:3 Bigfoot Networks Inc 0:19:4 WB Electronics Sp. z o.o. 0:19:5 SCHRACK Seconet AG 0:19:6 Cisco Systems 0:19:7 Cisco Systems 0:19:8 Duaxes Corporation 0:19:9 Devi A/S 0:19:a HASWARE INC. 0:19:b Southern Vision Systems, Inc. 0:19:c Encore Electronics, Inc. 0:19:d IEEE 1394c 0:19:e Atech Technology Co., Ltd. 0:19:f Advansus Corp. 0:1:0 EQUIP'TRANS 0:1:1 PRIVATE 0:1:10 Gotham Networks 0:1:11 iDigm Inc. 0:1:12 Shark Multimedia Inc. 0:1:13 OLYMPUS CORPORATION 0:1:14 KANDA TSUSHIN KOGYO CO., LTD. 0:1:15 EXTRATECH CORPORATION 0:1:16 Netspect Technologies, Inc. 0:1:17 CANAL + 0:1:18 EZ Digital Co., Ltd. 0:1:19 RTUnet (Australia) 0:1:1a EEH DataLink GmbH 0:1:1b Unizone Technologies, Inc. 0:1:1c Universal Talkware Corporation 0:1:1d Centillium Communications 0:1:1e Precidia Technologies, Inc. 0:1:1f RC Networks, Inc. 0:1:2 3COM CORPORATION 0:1:20 OSCILLOQUARTZ S.A. 0:1:21 Watchguard Technologies, Inc. 0:1:22 Trend Communications, Ltd. 0:1:23 DIGITAL ELECTRONICS CORP. 0:1:24 Acer Incorporated 0:1:25 YAESU MUSEN CO., LTD. 0:1:26 PAC Labs 0:1:27 OPEN Networks Pty Ltd 0:1:28 EnjoyWeb, Inc. 0:1:29 DFI Inc. 0:1:2a Telematica Sistems Inteligente 0:1:2b TELENET Co., Ltd. 0:1:2c Aravox Technologies, Inc. 0:1:2d Komodo Technology 0:1:2e PC Partner Ltd. 0:1:2f Twinhead International Corp 0:1:3 3COM CORPORATION 0:1:30 Extreme Networks 0:1:31 Detection Systems, Inc. 0:1:32 Dranetz - BMI 0:1:33 KYOWA Electronic Instruments C 0:1:34 SIG Positec Systems AG 0:1:35 KDC Corp. 0:1:36 CyberTAN Technology, Inc. 0:1:37 IT Farm Corporation 0:1:38 XAVi Technologies Corp. 0:1:39 Point Multimedia Systems 0:1:3a SHELCAD COMMUNICATIONS, LTD. 0:1:3b BNA SYSTEMS 0:1:3c TIW SYSTEMS 0:1:3d RiscStation Ltd. 0:1:3e Ascom Tateco AB 0:1:3f Neighbor World Co., Ltd. 0:1:4 DVICO Co., Ltd. 0:1:40 Sendtek Corporation 0:1:41 CABLE PRINT 0:1:42 Cisco Systems, Inc. 0:1:43 Cisco Systems, Inc. 0:1:44 EMC Corporation 0:1:45 WINSYSTEMS, INC. 0:1:46 Tesco Controls, Inc. 0:1:47 Zhone Technologies 0:1:48 X-traWeb Inc. 0:1:49 T.D.T. Transfer Data Test GmbH 0:1:4a Sony Corporation 0:1:4b Ennovate Networks, Inc. 0:1:4c Berkeley Process Control 0:1:4d Shin Kin Enterprises Co., Ltd 0:1:4e WIN Enterprises, Inc. 0:1:4f ADTRAN INC 0:1:5 BECKHOFF GmbH 0:1:50 GILAT COMMUNICATIONS, LTD. 0:1:51 Ensemble Communications 0:1:52 CHROMATEK INC. 0:1:53 ARCHTEK TELECOM CORPORATION 0:1:54 G3M Corporation 0:1:55 Promise Technology, Inc. 0:1:56 FIREWIREDIRECT.COM, INC. 0:1:57 SYSWAVE CO., LTD 0:1:58 Electro Industries/Gauge Tech 0:1:59 S1 Corporation 0:1:5a Digital Video Broadcasting 0:1:5b ITALTEL S.p.A/RF-UP-I 0:1:5c CADANT INC. 0:1:5d Sun Microsystems, Inc 0:1:5e BEST TECHNOLOGY CO., LTD. 0:1:5f DIGITAL DESIGN GmbH 0:1:6 Tews Datentechnik GmbH 0:1:60 ELMEX Co., LTD. 0:1:61 Meta Machine Technology 0:1:62 Cygnet Technologies, Inc. 0:1:63 Cisco Systems, Inc. 0:1:64 Cisco Systems, Inc. 0:1:65 AirSwitch Corporation 0:1:66 TC GROUP A/S 0:1:67 HIOKI E.E. CORPORATION 0:1:68 VITANA CORPORATION 0:1:69 Celestix Networks Pte Ltd. 0:1:6a ALITEC 0:1:6b LightChip, Inc. 0:1:6c FOXCONN 0:1:6d CarrierComm Inc. 0:1:6e Conklin Corporation 0:1:6f HAITAI ELECTRONICS CO., LTD. 0:1:7 Leiser GmbH 0:1:70 ESE Embedded System Engineer'g 0:1:71 Allied Data Technologies 0:1:72 TechnoLand Co., LTD. 0:1:73 AMCC 0:1:74 CyberOptics Corporation 0:1:75 Radiant Communications Corp. 0:1:76 Orient Silver Enterprises 0:1:77 EDSL 0:1:78 MARGI Systems, Inc. 0:1:79 WIRELESS TECHNOLOGY, INC. 0:1:7a Chengdu Maipu Electric Industrial Co., Ltd. 0:1:7b Heidelberger Druckmaschinen AG 0:1:7c AG-E GmbH 0:1:7d ThermoQuest 0:1:7e ADTEK System Science Co., Ltd. 0:1:7f Experience Music Project 0:1:8 AVLAB Technology, Inc. 0:1:80 AOpen, Inc. 0:1:81 Nortel Networks 0:1:82 DICA TECHNOLOGIES AG 0:1:83 ANITE TELECOMS 0:1:84 SIEB & MEYER AG 0:1:85 Aloka Co., Ltd. 0:1:86 Uwe Disch 0:1:87 i2SE GmbH 0:1:88 LXCO Technologies ag 0:1:89 Refraction Technology, Inc. 0:1:8a ROI COMPUTER AG 0:1:8b NetLinks Co., Ltd. 0:1:8c Mega Vision 0:1:8d AudeSi Technologies 0:1:8e Logitec Corporation 0:1:8f Kenetec, Inc. 0:1:9 Nagano Japan Radio Co., Ltd. 0:1:90 SMK-M 0:1:91 SYRED Data Systems 0:1:92 Texas Digital Systems 0:1:93 Hanbyul Telecom Co., Ltd. 0:1:94 Capital Equipment Corporation 0:1:95 Sena Technologies, Inc. 0:1:96 Cisco Systems, Inc. 0:1:97 Cisco Systems, Inc. 0:1:98 Darim Vision 0:1:99 HeiSei Electronics 0:1:9a LEUNIG GmbH 0:1:9b Kyoto Microcomputer Co., Ltd. 0:1:9c JDS Uniphase Inc. 0:1:9d E-Control Systems, Inc. 0:1:9e ESS Technology, Inc. 0:1:9f Phonex Broadband 0:1:a CIS TECHNOLOGY INC. 0:1:a0 Infinilink Corporation 0:1:a1 Mag-Tek, Inc. 0:1:a2 Logical Co., Ltd. 0:1:a3 GENESYS LOGIC, INC. 0:1:a4 Microlink Corporation 0:1:a5 Nextcomm, Inc. 0:1:a6 Scientific-Atlanta Arcodan A/S 0:1:a7 UNEX TECHNOLOGY CORPORATION 0:1:a8 Welltech Computer Co., Ltd. 0:1:a9 BMW AG 0:1:aa Airspan Communications, Ltd. 0:1:ab Main Street Networks 0:1:ac Sitara Networks, Inc. 0:1:ad Coach Master International d.b.a. CMI Worldwide, Inc. 0:1:ae Trex Enterprises 0:1:af Motorola Computer Group 0:1:b Space CyberLink, Inc. 0:1:b0 Fulltek Technology Co., Ltd. 0:1:b1 General Bandwidth 0:1:b2 Digital Processing Systems, Inc. 0:1:b3 Precision Electronic Manufacturing 0:1:b4 Wayport, Inc. 0:1:b5 Turin Networks, Inc. 0:1:b6 SAEJIN T&M Co., Ltd. 0:1:b7 Centos, Inc. 0:1:b8 Netsensity, Inc. 0:1:b9 SKF Condition Monitoring 0:1:ba IC-Net, Inc. 0:1:bb Frequentis 0:1:bc Brains Corporation 0:1:bd Peterson Electro-Musical Products, Inc. 0:1:be Gigalink Co., Ltd. 0:1:bf Teleforce Co., Ltd. 0:1:c System Talks Inc. 0:1:c0 CompuLab, Ltd. 0:1:c1 Vitesse Semiconductor Corporation 0:1:c2 ARK Research Corp. 0:1:c3 Acromag, Inc. 0:1:c4 NeoWave, Inc. 0:1:c5 Simpler Networks 0:1:c6 Quarry Technologies 0:1:c7 Cisco Systems, Inc. 0:1:c8 CONRAD CORP. *also* THOMAS CONRAD CORP. 0:1:c9 Cisco Systems, Inc. 0:1:ca Geocast Network Systems, Inc. 0:1:cb EVR 0:1:cc Japan Total Design Communication Co., Ltd. 0:1:cd ARtem 0:1:ce Custom Micro Products, Ltd. 0:1:cf Alpha Data Parallel Systems, Ltd. 0:1:d CORECO, INC. 0:1:d0 VitalPoint, Inc. 0:1:d1 CoNet Communications, Inc. 0:1:d2 MacPower Peripherals, Ltd. 0:1:d3 PAXCOMM, Inc. 0:1:d4 Leisure Time, Inc. 0:1:d5 HAEDONG INFO & COMM CO., LTD 0:1:d6 MAN Roland Druckmaschinen AG 0:1:d7 F5 Networks, Inc. 0:1:d8 Teltronics, Inc. 0:1:d9 Sigma, Inc. 0:1:da WINCOMM Corporation 0:1:db Freecom Technologies GmbH 0:1:dc Activetelco 0:1:dd Avail Networks 0:1:de Trango Systems, Inc. 0:1:df ISDN Communications, Ltd. 0:1:e Bri-Link Technologies Co., Ltd 0:1:e0 Fast Systems, Inc. 0:1:e1 Kinpo Electronics, Inc. 0:1:e2 Ando Electric Corporation 0:1:e3 Siemens AG 0:1:e4 Sitera, Inc. 0:1:e5 Supernet, Inc. 0:1:e6 Hewlett-Packard Company 0:1:e7 Hewlett-Packard Company 0:1:e8 Force10 Networks, Inc. 0:1:e9 Litton Marine Systems B.V. 0:1:ea Cirilium Corp. 0:1:eb C-COM Corporation 0:1:ec Ericsson Group 0:1:ed SETA Corp. 0:1:ee Comtrol Europe, Ltd. 0:1:ef Camtel Technology Corp. 0:1:f McDATA Corporation 0:1:f0 Tridium, Inc. 0:1:f1 Innovative Concepts, Inc. 0:1:f2 Mark of the Unicorn, Inc. 0:1:f3 QPS, Inc. 0:1:f4 Enterasys Networks 0:1:f5 ERIM S.A. 0:1:f6 Association of Musical Electronics Industry 0:1:f7 Image Display Systems, Inc. 0:1:f8 Adherent Systems, Ltd. 0:1:f9 TeraGlobal Communications Corp. 0:1:fa HOROSCAS 0:1:fb DoTop Technology, Inc. 0:1:fc Keyence Corporation 0:1:fd Digital Voice Systems, Inc. 0:1:fe DIGITAL EQUIPMENT CORPORATION 0:1:ff Data Direct Networks, Inc. 0:1c:7c PERQ SYSTEMS CORPORATION 0:20:0 LEXMARK INTERNATIONAL, INC. 0:20:1 DSP SOLUTIONS, INC. 0:20:10 JEOL SYSTEM TECHNOLOGY CO. LTD 0:20:11 CANOPUS CO., LTD. 0:20:12 CAMTRONICS MEDICAL SYSTEMS 0:20:13 DIVERSIFIED TECHNOLOGY, INC. 0:20:14 GLOBAL VIEW CO., LTD. 0:20:15 ACTIS COMPUTER SA 0:20:16 SHOWA ELECTRIC WIRE & CABLE CO 0:20:17 ORBOTECH 0:20:18 CIS TECHNOLOGY INC. 0:20:19 OHLER GmbH 0:20:1a MRV Communications, Inc. 0:20:1b NORTHERN TELECOM/NETWORK 0:20:1c EXCEL, INC. 0:20:1d KATANA PRODUCTS 0:20:1e NETQUEST CORPORATION 0:20:1f BEST POWER TECHNOLOGY, INC. 0:20:2 SERITECH ENTERPRISE CO., LTD. 0:20:20 MEGATRON COMPUTER INDUSTRIES PTY, LTD. 0:20:21 ALGORITHMS SOFTWARE PVT. LTD. 0:20:22 NMS Communications 0:20:23 T.C. TECHNOLOGIES PTY. LTD 0:20:24 PACIFIC COMMUNICATION SCIENCES 0:20:25 CONTROL TECHNOLOGY, INC. 0:20:26 AMKLY SYSTEMS, INC. 0:20:27 MING FORTUNE INDUSTRY CO., LTD 0:20:28 WEST EGG SYSTEMS, INC. 0:20:29 TELEPROCESSING PRODUCTS, INC. 0:20:2a N.V. DZINE 0:20:2b ADVANCED TELECOMMUNICATIONS MODULES, LTD. 0:20:2c WELLTRONIX CO., LTD. 0:20:2d TAIYO CORPORATION 0:20:2e DAYSTAR DIGITAL 0:20:2f ZETA COMMUNICATIONS, LTD. 0:20:3 PIXEL POWER LTD. 0:20:30 ANALOG & DIGITAL SYSTEMS 0:20:31 ERTEC GmbH 0:20:32 ALCATEL TAISEL 0:20:33 SYNAPSE TECHNOLOGIES, INC. 0:20:34 ROTEC INDUSTRIEAUTOMATION GMBH 0:20:35 IBM CORPORATION 0:20:36 BMC SOFTWARE 0:20:37 SEAGATE TECHNOLOGY 0:20:38 VME MICROSYSTEMS INTERNATIONAL CORPORATION 0:20:39 SCINETS 0:20:3a DIGITAL BI0METRICS INC. 0:20:3b WISDM LTD. 0:20:3c EUROTIME AB 0:20:3d NOVAR ELECTRONICS CORPORATION 0:20:3e LogiCan Technologies, Inc. 0:20:3f JUKI CORPORATION 0:20:4 YAMATAKE-HONEYWELL CO., LTD. 0:20:40 Motorola Broadband Communications Sector 0:20:41 DATA NET 0:20:42 DATAMETRICS CORP. 0:20:43 NEURON COMPANY LIMITED 0:20:44 GENITECH PTY LTD 0:20:45 ION Networks, Inc. 0:20:46 CIPRICO, INC. 0:20:47 STEINBRECHER CORP. 0:20:48 Marconi Communications 0:20:49 COMTRON, INC. 0:20:4a PRONET GMBH 0:20:4b AUTOCOMPUTER CO., LTD. 0:20:4c MITRON COMPUTER PTE LTD. 0:20:4d INOVIS GMBH 0:20:4e NETWORK SECURITY SYSTEMS, INC. 0:20:4f DEUTSCHE AEROSPACE AG 0:20:5 SIMPLE TECHNOLOGY 0:20:50 KOREA COMPUTER INC. 0:20:51 Verilink Corporation 0:20:52 RAGULA SYSTEMS 0:20:53 HUNTSVILLE MICROSYSTEMS, INC. 0:20:54 EASTERN RESEARCH, INC. 0:20:55 ALTECH CO., LTD. 0:20:56 NEOPRODUCTS 0:20:57 TITZE DATENTECHNIK GmbH 0:20:58 ALLIED SIGNAL INC. 0:20:59 MIRO COMPUTER PRODUCTS AG 0:20:5a COMPUTER IDENTICS 0:20:5b Kentrox, LLC 0:20:5c InterNet Systems of Florida, Inc. 0:20:5d NANOMATIC OY 0:20:5e CASTLE ROCK, INC. 0:20:5f GAMMADATA COMPUTER GMBH 0:20:6 GARRETT COMMUNICATIONS, INC. 0:20:60 ALCATEL ITALIA S.p.A. 0:20:61 DYNATECH COMMUNICATIONS, INC. 0:20:62 SCORPION LOGIC, LTD. 0:20:63 WIPRO INFOTECH LTD. 0:20:64 PROTEC MICROSYSTEMS, INC. 0:20:65 SUPERNET NETWORKING INC. 0:20:66 GENERAL MAGIC, INC. 0:20:67 PRIVATE 0:20:68 ISDYNE 0:20:69 ISDN SYSTEMS CORPORATION 0:20:6a OSAKA COMPUTER CORP. 0:20:6b KONICA MINOLTA HOLDINGS, INC. 0:20:6c EVERGREEN TECHNOLOGY CORP. 0:20:6d DATA RACE, INC. 0:20:6e XACT, INC. 0:20:6f FLOWPOINT CORPORATION 0:20:7 SFA, INC. 0:20:70 HYNET, LTD. 0:20:71 IBR GMBH 0:20:72 WORKLINK INNOVATIONS 0:20:73 FUSION SYSTEMS CORPORATION 0:20:74 SUNGWOON SYSTEMS 0:20:75 MOTOROLA COMMUNICATION ISRAEL 0:20:76 REUDO CORPORATION 0:20:77 KARDIOS SYSTEMS CORP. 0:20:78 RUNTOP, INC. 0:20:79 MIKRON GMBH 0:20:7a WiSE Communications, Inc. 0:20:7b Intel Corporation 0:20:7c AUTEC GmbH 0:20:7d ADVANCED COMPUTER APPLICATIONS 0:20:7e FINECOM Co., Ltd. 0:20:7f KYOEI SANGYO CO., LTD. 0:20:8 CABLE & COMPUTER TECHNOLOGY 0:20:80 SYNERGY (UK) LTD. 0:20:81 TITAN ELECTRONICS 0:20:82 ONEAC CORPORATION 0:20:83 PRESTICOM INCORPORATED 0:20:84 OCE PRINTING SYSTEMS, GMBH 0:20:85 EXIDE ELECTRONICS 0:20:86 MICROTECH ELECTRONICS LIMITED 0:20:87 MEMOTEC COMMUNICATIONS CORP. 0:20:88 GLOBAL VILLAGE COMMUNICATION 0:20:89 T3PLUS NETWORKING, INC. 0:20:8a SONIX COMMUNICATIONS, LTD. 0:20:8b LAPIS TECHNOLOGIES, INC. 0:20:8c GALAXY NETWORKS, INC. 0:20:8d CMD TECHNOLOGY 0:20:8e CHEVIN SOFTWARE ENG. LTD. 0:20:8f ECI TELECOM LTD. 0:20:9 PACKARD BELL ELEC., INC. 0:20:90 ADVANCED COMPRESSION TECHNOLOGY, INC. 0:20:91 J125, NATIONAL SECURITY AGENCY 0:20:92 CHESS ENGINEERING B.V. 0:20:93 LANDINGS TECHNOLOGY CORP. 0:20:94 CUBIX CORPORATION 0:20:95 RIVA ELECTRONICS 0:20:96 Invensys 0:20:97 APPLIED SIGNAL TECHNOLOGY 0:20:98 HECTRONIC AB 0:20:99 BON ELECTRIC CO., LTD. 0:20:9a THE 3DO COMPANY 0:20:9b ERSAT ELECTRONIC GMBH 0:20:9c PRIMARY ACCESS CORP. 0:20:9d LIPPERT AUTOMATIONSTECHNIK 0:20:9e BROWN'S OPERATING SYSTEM SERVICES, LTD. 0:20:9f MERCURY COMPUTER SYSTEMS, INC. 0:20:a SOURCE-COMM CORP. 0:20:a0 OA LABORATORY CO., LTD. 0:20:a1 DOVATRON 0:20:a2 GALCOM NETWORKING LTD. 0:20:a3 DIVICOM INC. 0:20:a4 MULTIPOINT NETWORKS 0:20:a5 API ENGINEERING 0:20:a6 PROXIM, INC. 0:20:a7 PAIRGAIN TECHNOLOGIES, INC. 0:20:a8 SAST TECHNOLOGY CORP. 0:20:a9 WHITE HORSE INDUSTRIAL 0:20:aa DIGIMEDIA VISION LTD. 0:20:ab MICRO INDUSTRIES CORP. 0:20:ac INTERFLEX DATENSYSTEME GMBH 0:20:ad LINQ SYSTEMS 0:20:ae ORNET DATA COMMUNICATION TECH. 0:20:af 3COM CORPORATION 0:20:b OCTAGON SYSTEMS CORP. 0:20:b0 GATEWAY DEVICES, INC. 0:20:b1 COMTECH RESEARCH INC. 0:20:b2 GKD Gesellschaft Fur Kommunikation Und Datentechnik 0:20:b3 SCLTEC COMMUNICATIONS SYSTEMS 0:20:b4 TERMA ELEKTRONIK AS 0:20:b5 YASKAWA ELECTRIC CORPORATION 0:20:b6 AGILE NETWORKS, INC. 0:20:b7 NAMAQUA COMPUTERWARE 0:20:b8 PRIME OPTION, INC. 0:20:b9 METRICOM, INC. 0:20:ba CENTER FOR HIGH PERFORMANCE 0:20:bb ZAX CORPORATION 0:20:bc Long Reach Networks Pty Ltd 0:20:bd NIOBRARA R & D CORPORATION 0:20:be LAN ACCESS CORP. 0:20:bf AEHR TEST SYSTEMS 0:20:c ADASTRA SYSTEMS CORP. 0:20:c0 PULSE ELECTRONICS, INC. 0:20:c1 SAXA, Inc. 0:20:c2 TEXAS MEMORY SYSTEMS, INC. 0:20:c3 COUNTER SOLUTIONS LTD. 0:20:c4 INET,INC. 0:20:c5 EAGLE TECHNOLOGY 0:20:c6 NECTEC 0:20:c7 AKAI Professional M.I. Corp. 0:20:c8 LARSCOM INCORPORATED 0:20:c9 VICTRON BV 0:20:ca DIGITAL OCEAN 0:20:cb PRETEC ELECTRONICS CORP. 0:20:cc DIGITAL SERVICES, LTD. 0:20:cd HYBRID NETWORKS, INC. 0:20:ce LOGICAL DESIGN GROUP, INC. 0:20:cf TEST & MEASUREMENT SYSTEMS INC 0:20:d CARL ZEISS 0:20:d0 VERSALYNX CORPORATION 0:20:d1 MICROCOMPUTER SYSTEMS (M) SDN. 0:20:d2 RAD DATA COMMUNICATIONS, LTD. 0:20:d3 OST (OUEST STANDARD TELEMATIQU 0:20:d4 CABLETRON - ZEITTNET INC. 0:20:d5 VIPA GMBH 0:20:d6 BREEZECOM 0:20:d7 JAPAN MINICOMPUTER SYSTEMS CO., Ltd. 0:20:d8 Nortel Networks 0:20:d9 PANASONIC TECHNOLOGIES, INC./MIECO-US 0:20:da Alcatel North America ESD 0:20:db XNET TECHNOLOGY, INC. 0:20:dc DENSITRON TAIWAN LTD. 0:20:dd Cybertec Pty Ltd 0:20:de JAPAN DIGITAL LABORAT'Y CO.LTD 0:20:df KYOSAN ELECTRIC MFG. CO., LTD. 0:20:e SATELLITE TECHNOLOGY MGMT, INC 0:20:e0 Actiontec Electronics, Inc. 0:20:e1 ALAMAR ELECTRONICS 0:20:e2 INFORMATION RESOURCE ENGINEERING 0:20:e3 MCD KENCOM CORPORATION 0:20:e4 HSING TECH ENTERPRISE CO., LTD 0:20:e5 APEX DATA, INC. 0:20:e6 LIDKOPING MACHINE TOOLS AB 0:20:e7 B&W NUCLEAR SERVICE COMPANY 0:20:e8 DATATREK CORPORATION 0:20:e9 DANTEL 0:20:ea EFFICIENT NETWORKS, INC. 0:20:eb CINCINNATI MICROWAVE, INC. 0:20:ec TECHWARE SYSTEMS CORP. 0:20:ed GIGA-BYTE TECHNOLOGY CO., LTD. 0:20:ee GTECH CORPORATION 0:20:ef USC CORPORATION 0:20:f TANBAC CO., LTD. 0:20:f0 UNIVERSAL MICROELECTRONICS CO. 0:20:f1 ALTOS INDIA LIMITED 0:20:f2 SUN MICROSYSTEMS, INC. 0:20:f3 RAYNET CORPORATION 0:20:f4 SPECTRIX CORPORATION 0:20:f5 PANDATEL AG 0:20:f6 NET TEK AND KARLNET, INC. 0:20:f7 CYBERDATA 0:20:f8 CARRERA COMPUTERS, INC. 0:20:f9 PARALINK NETWORKS, INC. 0:20:fa GDE SYSTEMS, INC. 0:20:fb OCTEL COMMUNICATIONS CORP. 0:20:fc MATROX 0:20:fd ITV TECHNOLOGIES, INC. 0:20:fe TOPWARE INC. / GRAND COMPUTER 0:20:ff SYMMETRICAL TECHNOLOGIES 0:26:54 3Com Corporation 0:2:0 Net & Sys Co., Ltd. 0:2:1 IFM Electronic gmbh 0:2:10 Fenecom 0:2:11 Nature Worldwide Technology Corp. 0:2:12 SierraCom 0:2:13 S.D.E.L. 0:2:14 DTVRO 0:2:15 Cotas Computer Technology A/B 0:2:16 Cisco Systems, Inc. 0:2:17 Cisco Systems, Inc. 0:2:18 Advanced Scientific Corp 0:2:19 Paralon Technologies 0:2:1a Zuma Networks 0:2:1b Kollmorgen-Servotronix 0:2:1c Network Elements, Inc. 0:2:1d Data General Communication Ltd. 0:2:1e SIMTEL S.R.L. 0:2:1f Aculab PLC 0:2:2 Amino Communications, Ltd. 0:2:20 Canon Aptex, Inc. 0:2:21 DSP Application, Ltd. 0:2:22 Chromisys, Inc. 0:2:23 ClickTV 0:2:24 C-COR 0:2:25 Certus Technology, Inc. 0:2:26 XESystems, Inc. 0:2:27 ESD GmbH 0:2:28 Necsom, Ltd. 0:2:29 Adtec Corporation 0:2:2a Asound Electronic 0:2:2b SAXA, Inc. 0:2:2c ABB Bomem, Inc. 0:2:2d Agere Systems 0:2:2e TEAC Corp. R& D 0:2:2f P-Cube, Ltd. 0:2:3 Woonsang Telecom, Inc. 0:2:30 Intersoft Electronics 0:2:31 Ingersoll-Rand 0:2:32 Avision, Inc. 0:2:33 Mantra Communications, Inc. 0:2:34 Imperial Technology, Inc. 0:2:35 Paragon Networks International 0:2:36 INIT GmbH 0:2:37 Cosmo Research Corp. 0:2:38 Serome Technology, Inc. 0:2:39 Visicom 0:2:3a ZSK Stickmaschinen GmbH 0:2:3b Redback Networks 0:2:3c Creative Technology, Ltd. 0:2:3d NuSpeed, Inc. 0:2:3e Selta Telematica S.p.a 0:2:3f Compal Electronics, Inc. 0:2:4 Bodmann Industries Elektronik GmbH 0:2:40 Seedek Co., Ltd. 0:2:41 Amer.com 0:2:42 Videoframe Systems 0:2:43 Raysis Co., Ltd. 0:2:44 SURECOM Technology Co. 0:2:45 Lampus Co, Ltd. 0:2:46 All-Win Tech Co., Ltd. 0:2:47 Great Dragon Information Technology (Group) Co., Ltd. 0:2:48 Pilz GmbH & Co. 0:2:49 Aviv Infocom Co, Ltd. 0:2:4a Cisco Systems, Inc. 0:2:4b Cisco Systems, Inc. 0:2:4c SiByte, Inc. 0:2:4d Mannesman Dematic Colby Pty. Ltd. 0:2:4e Datacard Group 0:2:4f IPM Datacom S.R.L. 0:2:5 Hitachi Denshi, Ltd. 0:2:50 Geyser Networks, Inc. 0:2:51 Soma Networks, Inc. 0:2:52 Carrier Corporation 0:2:53 Televideo, Inc. 0:2:54 WorldGate 0:2:55 IBM Corporation 0:2:56 Alpha Processor, Inc. 0:2:57 Microcom Corp. 0:2:58 Flying Packets Communications 0:2:59 Tsann Kuen China (Shanghai)Enterprise Co., Ltd. IT Group 0:2:5a Catena Networks 0:2:5b Cambridge Silicon Radio 0:2:5c SCI Systems (Kunshan) Co., Ltd. 0:2:5d Calix Networks 0:2:5e High Technology Ltd 0:2:5f Nortel Networks 0:2:6 Telital R&D Denmark A/S 0:2:60 Accordion Networks, Inc. 0:2:61 i3 Micro Technology AB 0:2:62 Soyo Group Soyo Com Tech Co., Ltd 0:2:63 UPS Manufacturing SRL 0:2:64 AudioRamp.com 0:2:65 Virditech Co. Ltd. 0:2:66 Thermalogic Corporation 0:2:67 NODE RUNNER, INC. 0:2:68 Harris Government Communications 0:2:69 Nadatel Co., Ltd 0:2:6a Cocess Telecom Co., Ltd. 0:2:6b BCM Computers Co., Ltd. 0:2:6c Philips CFT 0:2:6d Adept Telecom 0:2:6e NeGeN Access, Inc. 0:2:6f Senao International Co., Ltd. 0:2:7 VisionGlobal Network Corp. 0:2:70 Crewave Co., Ltd. 0:2:71 Vpacket Communications 0:2:72 CC&C Technologies, Inc. 0:2:73 Coriolis Networks 0:2:74 Tommy Technologies Corp. 0:2:75 SMART Technologies, Inc. 0:2:76 Primax Electronics Ltd. 0:2:77 Cash Systemes Industrie 0:2:78 Samsung Electro-Mechanics Co., Ltd. 0:2:79 Control Applications, Ltd. 0:2:7a IOI Technology Corporation 0:2:7b Amplify Net, Inc. 0:2:7c Trilithic, Inc. 0:2:7d Cisco Systems, Inc. 0:2:7e Cisco Systems, Inc. 0:2:7f ask-technologies.com 0:2:8 Unify Networks, Inc. 0:2:80 Mu Net, Inc. 0:2:81 Madge Ltd. 0:2:82 ViaClix, Inc. 0:2:83 Spectrum Controls, Inc. 0:2:84 AREVA T&D 0:2:85 Riverstone Networks 0:2:86 Occam Networks 0:2:87 Adapcom 0:2:88 GLOBAL VILLAGE COMMUNICATION 0:2:89 DNE Technologies 0:2:8a Ambit Microsystems Corporation 0:2:8b VDSL Systems OY 0:2:8c Micrel-Synergy Semiconductor 0:2:8d Movita Technologies, Inc. 0:2:8e Rapid 5 Networks, Inc. 0:2:8f Globetek, Inc. 0:2:9 Shenzhen SED Information Technology Co., Ltd. 0:2:90 Woorigisool, Inc. 0:2:91 Open Network Co., Ltd. 0:2:92 Logic Innovations, Inc. 0:2:93 Solid Data Systems 0:2:94 Tokyo Sokushin Co., Ltd. 0:2:95 IP.Access Limited 0:2:96 Lectron Co,. Ltd. 0:2:97 C-COR.net 0:2:98 Broadframe Corporation 0:2:99 Apex, Inc. 0:2:9a Storage Apps 0:2:9b Kreatel Communications AB 0:2:9c 3COM 0:2:9d Merix Corp. 0:2:9e Information Equipment Co., Ltd. 0:2:9f L-3 Communication Aviation Recorders 0:2:a Gefran Spa 0:2:a0 Flatstack Ltd. 0:2:a1 World Wide Packets 0:2:a2 Hilscher GmbH 0:2:a3 ABB Power Automation 0:2:a4 AddPac Technology Co., Ltd. 0:2:a5 Compaq Computer Corporation 0:2:a6 Effinet Systems Co., Ltd. 0:2:a7 Vivace Networks 0:2:a8 Air Link Technology 0:2:a9 RACOM, s.r.o. 0:2:aa PLcom Co., Ltd. 0:2:ab CTC Union Technologies Co., Ltd. 0:2:ac 3PAR data 0:2:ad Pentax Corpotation 0:2:ae Scannex Electronics Ltd. 0:2:af TeleCruz Technology, Inc. 0:2:b Native Networks, Inc. 0:2:b0 Hokubu Communication & Industrial Co., Ltd. 0:2:b1 Anritsu, Ltd. 0:2:b2 Cablevision 0:2:b3 Intel Corporation 0:2:b4 DAPHNE 0:2:b5 Avnet, Inc. 0:2:b6 Acrosser Technology Co., Ltd. 0:2:b7 Watanabe Electric Industry Co., Ltd. 0:2:b8 WHI KONSULT AB 0:2:b9 Cisco Systems, Inc. 0:2:ba Cisco Systems, Inc. 0:2:bb Continuous Computing 0:2:bc LVL 7 Systems, Inc. 0:2:bd Bionet Co., Ltd. 0:2:be Totsu Engineering, Inc. 0:2:bf dotRocket, Inc. 0:2:c Metro-Optix 0:2:c0 Bencent Tzeng Industry Co., Ltd. 0:2:c1 Innovative Electronic Designs, Inc. 0:2:c2 Net Vision Telecom 0:2:c3 Arelnet Ltd. 0:2:c4 Vector International BUBA 0:2:c5 Evertz Microsystems Ltd. 0:2:c6 Data Track Technology PLC 0:2:c7 ALPS ELECTRIC Co., Ltd. 0:2:c8 Technocom Communications Technology (pte) Ltd 0:2:c9 Mellanox Technologies 0:2:ca EndPoints, Inc. 0:2:cb TriState Ltd. 0:2:cc M.C.C.I 0:2:cd TeleDream, Inc. 0:2:ce FoxJet, Inc. 0:2:cf ZyGate Communications, Inc. 0:2:d Micronpc.com 0:2:d0 Comdial Corporation 0:2:d1 Vivotek, Inc. 0:2:d2 Workstation AG 0:2:d3 NetBotz, Inc. 0:2:d4 PDA Peripherals, Inc. 0:2:d5 ACR 0:2:d6 NICE Systems 0:2:d7 EMPEG Ltd 0:2:d8 BRECIS Communications Corporation 0:2:d9 Reliable Controls 0:2:da ExiO Communications, Inc. 0:2:db NETSEC 0:2:dc Fujitsu General Limited 0:2:dd Bromax Communications, Ltd. 0:2:de Astrodesign, Inc. 0:2:df Net Com Systems, Inc. 0:2:e Laurel Networks, Inc. 0:2:e0 ETAS GmbH 0:2:e1 Integrated Network Corporation 0:2:e2 NDC Infared Engineering 0:2:e3 LITE-ON Communications, Inc. 0:2:e4 JC HYUN Systems, Inc. 0:2:e5 Timeware Ltd. 0:2:e6 Gould Instrument Systems, Inc. 0:2:e7 CAB GmbH & Co KG 0:2:e8 E.D.&A. 0:2:e9 CS Systemes De Securite - C3S 0:2:ea Focus Enhancements 0:2:eb Pico Communications 0:2:ec Maschoff Design Engineering 0:2:ed DXO Telecom Co., Ltd. 0:2:ee Nokia Danmark A/S 0:2:ef CCC Network Systems Group Ltd. 0:2:f AATR 0:2:f0 AME Optimedia Technology Co., Ltd. 0:2:f1 Pinetron Co., Ltd. 0:2:f2 eDevice, Inc. 0:2:f3 Media Serve Co., Ltd. 0:2:f4 PCTEL, Inc. 0:2:f5 VIVE Synergies, Inc. 0:2:f6 Equipe Communications 0:2:f7 ARM 0:2:f8 SEAKR Engineering, Inc. 0:2:f9 Mimos Semiconductor SDN BHD 0:2:fa DX Antenna Co., Ltd. 0:2:fb Baumuller Aulugen-Systemtechnik GmbH 0:2:fc Cisco Systems, Inc. 0:2:fd Cisco Systems, Inc. 0:2:fe Viditec, Inc. 0:2:ff Handan BroadInfoCom 0:30:0 ALLWELL TECHNOLOGY CORP. 0:30:1 SMP 0:30:10 VISIONETICS INTERNATIONAL 0:30:11 HMS FIELDBUS SYSTEMS AB 0:30:12 DIGITAL ENGINEERING LTD. 0:30:13 NEC Corporation 0:30:14 DIVIO, INC. 0:30:15 CP CLARE CORP. 0:30:16 ISHIDA CO., LTD. 0:30:17 BlueArc UK Ltd 0:30:18 Jetway Information Co., Ltd. 0:30:19 CISCO SYSTEMS, INC. 0:30:1a SMARTBRIDGES PTE. LTD. 0:30:1b SHUTTLE, INC. 0:30:1c ALTVATER AIRDATA SYSTEMS 0:30:1d SKYSTREAM, INC. 0:30:1e 3COM Europe Ltd. 0:30:1f OPTICAL NETWORKS, INC. 0:30:2 Expand Networks 0:30:20 TSI, Inc.. 0:30:21 HSING TECH. ENTERPRISE CO.,LTD 0:30:22 Fong Kai Industrial Co., Ltd. 0:30:23 COGENT COMPUTER SYSTEMS, INC. 0:30:24 CISCO SYSTEMS, INC. 0:30:25 CHECKOUT COMPUTER SYSTEMS, LTD 0:30:26 HeiTel Digital Video GmbH 0:30:27 KERBANGO, INC. 0:30:28 FASE Saldatura srl 0:30:29 OPICOM 0:30:2a SOUTHERN INFORMATION 0:30:2b INALP NETWORKS, INC. 0:30:2c SYLANTRO SYSTEMS CORPORATION 0:30:2d QUANTUM BRIDGE COMMUNICATIONS 0:30:2e Hoft & Wessel AG 0:30:2f Smiths Industries 0:30:3 Phasys Ltd. 0:30:30 HARMONIX CORPORATION 0:30:31 LIGHTWAVE COMMUNICATIONS, INC. 0:30:32 MagicRam, Inc. 0:30:33 ORIENT TELECOM CO., LTD. 0:30:34 SET ENGINEERING 0:30:35 Corning Incorporated 0:30:36 RMP ELEKTRONIKSYSTEME GMBH 0:30:37 Packard Bell Nec Services 0:30:38 XCP, INC. 0:30:39 SOFTBOOK PRESS 0:30:3a MAATEL 0:30:3b PowerCom Technology 0:30:3c ONNTO CORP. 0:30:3d IVA CORPORATION 0:30:3e Radcom Ltd. 0:30:3f TurboComm Tech Inc. 0:30:4 LEADTEK RESEARCH INC. 0:30:40 CISCO SYSTEMS, INC. 0:30:41 SAEJIN T & M CO., LTD. 0:30:42 DeTeWe-Deutsche Telephonwerke 0:30:43 IDREAM TECHNOLOGIES, PTE. LTD. 0:30:44 Portsmith LLC 0:30:45 Village Networks, Inc. (VNI) 0:30:46 Controlled Electronic Manageme 0:30:47 NISSEI ELECTRIC CO., LTD. 0:30:48 Supermicro Computer, Inc. 0:30:49 BRYANT TECHNOLOGY, LTD. 0:30:4a Fraunhofer IPMS 0:30:4b ORBACOM SYSTEMS, INC. 0:30:4c APPIAN COMMUNICATIONS, INC. 0:30:4d ESI 0:30:4e BUSTEC PRODUCTION LTD. 0:30:4f PLANET Technology Corporation 0:30:5 Fujitsu Siemens Computers 0:30:50 Versa Technology 0:30:51 ORBIT AVIONIC & COMMUNICATION 0:30:52 ELASTIC NETWORKS 0:30:53 Basler AG 0:30:54 CASTLENET TECHNOLOGY, INC. 0:30:55 Hitachi Semiconductor America, 0:30:56 Beck IPC GmbH 0:30:57 QTelNet, Inc. 0:30:58 API MOTION 0:30:59 DIGITAL-LOGIC AG 0:30:5a TELGEN CORPORATION 0:30:5b MODULE DEPARTMENT 0:30:5c SMAR Laboratories Corp. 0:30:5d DIGITRA SYSTEMS, INC. 0:30:5e Abelko Innovation 0:30:5f IMACON APS 0:30:6 SUPERPOWER COMPUTER 0:30:60 Powerfile, Inc. 0:30:61 MobyTEL 0:30:62 PATH 1 NETWORK TECHNOL'S INC. 0:30:63 SANTERA SYSTEMS, INC. 0:30:64 ADLINK TECHNOLOGY, INC. 0:30:65 APPLE COMPUTER, INC. 0:30:66 DIGITAL WIRELESS CORPORATION 0:30:67 BIOSTAR MICROTECH INT'L CORP. 0:30:68 CYBERNETICS TECH. CO., LTD. 0:30:69 IMPACCT TECHNOLOGY CORP. 0:30:6a PENTA MEDIA CO., LTD. 0:30:6b CMOS SYSTEMS, INC. 0:30:6c Hitex Holding GmbH 0:30:6d LUCENT TECHNOLOGIES 0:30:6e HEWLETT PACKARD 0:30:6f SEYEON TECH. CO., LTD. 0:30:7 OPTI, INC. 0:30:70 1Net Corporation 0:30:71 Cisco Systems, Inc. 0:30:72 INTELLIBYTE INC. 0:30:73 International Microsystems, In 0:30:74 EQUIINET LTD. 0:30:75 ADTECH 0:30:76 Akamba Corporation 0:30:77 ONPREM NETWORKS 0:30:78 Cisco Systems, Inc. 0:30:79 CQOS, INC. 0:30:7a Advanced Technology & Systems 0:30:7b Cisco Systems, Inc. 0:30:7c ADID SA 0:30:7d GRE AMERICA, INC. 0:30:7e Redflex Communication Systems 0:30:7f IRLAN LTD. 0:30:8 AVIO DIGITAL, INC. 0:30:80 CISCO SYSTEMS, INC. 0:30:81 ALTOS C&C 0:30:82 TAIHAN ELECTRIC WIRE CO., LTD. 0:30:83 Ivron Systems 0:30:84 ALLIED TELESYN INTERNAIONAL 0:30:85 CISCO SYSTEMS, INC. 0:30:86 Transistor Devices, Inc. 0:30:87 VEGA GRIESHABER KG 0:30:88 Siara Systems, Inc. 0:30:89 Spectrapoint Wireless, LLC 0:30:8a NICOTRA SISTEMI S.P.A 0:30:8b Brix Networks 0:30:8c ADVANCED DIGITAL INFORMATION 0:30:8d PINNACLE SYSTEMS, INC. 0:30:8e CROSS MATCH TECHNOLOGIES, INC. 0:30:8f MICRILOR, Inc. 0:30:9 Tachion Networks, Inc. 0:30:90 CYRA TECHNOLOGIES, INC. 0:30:91 TAIWAN FIRST LINE ELEC. CORP. 0:30:92 ModuNORM GmbH 0:30:93 SONNET TECHNOLOGIES, INC. 0:30:94 Cisco Systems, Inc. 0:30:95 Procomp Informatics, Ltd. 0:30:96 CISCO SYSTEMS, INC. 0:30:97 EXOMATIC AB 0:30:98 Global Converging Technologies 0:30:99 BOENIG UND KALLENBACH OHG 0:30:9a ASTRO TERRA CORP. 0:30:9b Smartware 0:30:9c Timing Applications, Inc. 0:30:9d Nimble Microsystems, Inc. 0:30:9e WORKBIT CORPORATION. 0:30:9f AMBER NETWORKS 0:30:a AZTECH SYSTEMS LTD. 0:30:a0 TYCO SUBMARINE SYSTEMS, LTD. 0:30:a1 WEBGATE Inc. 0:30:a2 Lightner Engineering 0:30:a3 CISCO SYSTEMS, INC. 0:30:a4 Woodwind Communications System 0:30:a5 ACTIVE POWER 0:30:a6 VIANET TECHNOLOGIES, LTD. 0:30:a7 SCHWEITZER ENGINEERING 0:30:a8 OL'E COMMUNICATIONS, INC. 0:30:a9 Netiverse, Inc. 0:30:aa AXUS MICROSYSTEMS, INC. 0:30:ab DELTA NETWORKS, INC. 0:30:ac Systeme Lauer GmbH & Co., Ltd. 0:30:ad SHANGHAI COMMUNICATION 0:30:ae Times N System, Inc. 0:30:af Honeywell GmbH 0:30:b mPHASE Technologies, Inc. 0:30:b0 Convergenet Technologies 0:30:b1 aXess-pro networks GmbH 0:30:b2 L-3 Sonoma EO 0:30:b3 San Valley Systems, Inc. 0:30:b4 INTERSIL CORP. 0:30:b5 Tadiran Microwave Networks 0:30:b6 CISCO SYSTEMS, INC. 0:30:b7 Teletrol Systems, Inc. 0:30:b8 RiverDelta Networks 0:30:b9 ECTEL 0:30:ba AC&T SYSTEM CO., LTD. 0:30:bb CacheFlow, Inc. 0:30:bc Optronic AG 0:30:bd BELKIN COMPONENTS 0:30:be City-Net Technology, Inc. 0:30:bf MULTIDATA GMBH 0:30:c CONGRUENCY, LTD. 0:30:c0 Lara Technology, Inc. 0:30:c1 HEWLETT-PACKARD 0:30:c2 COMONE 0:30:c3 FLUECKIGER ELEKTRONIK AG 0:30:c4 Canon Imaging System Technologies, Inc. 0:30:c5 CADENCE DESIGN SYSTEMS 0:30:c6 CONTROL SOLUTIONS, INC. 0:30:c7 MACROMATE CORP. 0:30:c8 GAD LINE, LTD. 0:30:c9 LuxN, N 0:30:ca Discovery Com 0:30:cb OMNI FLOW COMPUTERS, INC. 0:30:cc Tenor Networks, Inc. 0:30:cd CONEXANT SYSTEMS, INC. 0:30:ce Zaffire 0:30:cf TWO TECHNOLOGIES, INC. 0:30:d MMC Technology, Inc. 0:30:d0 Tellabs 0:30:d1 INOVA CORPORATION 0:30:d2 WIN TECHNOLOGIES, CO., LTD. 0:30:d3 Agilent Technologies 0:30:d4 AAE Systems, Inc 0:30:d5 DResearch GmbH 0:30:d6 MSC VERTRIEBS GMBH 0:30:d7 Innovative Systems, L.L.C. 0:30:d8 SITEK 0:30:d9 DATACORE SOFTWARE CORP. 0:30:da COMTREND CO. 0:30:db Mindready Solutions, Inc. 0:30:dc RIGHTECH CORPORATION 0:30:dd INDIGITA CORPORATION 0:30:de WAGO Kontakttechnik GmbH 0:30:df KB/TEL TELECOMUNICACIONES 0:30:e Klotz Digital AG 0:30:e0 OXFORD SEMICONDUCTOR LTD. 0:30:e1 ACROTRON SYSTEMS, INC. 0:30:e2 GARNET SYSTEMS CO., LTD. 0:30:e3 SEDONA NETWORKS CORP. 0:30:e4 CHIYODA SYSTEM RIKEN 0:30:e5 Amper Datos S.A. 0:30:e6 SIEMENS MEDICAL SYSTEMS 0:30:e7 CNF MOBILE SOLUTIONS, INC. 0:30:e8 ENSIM CORP. 0:30:e9 GMA COMMUNICATION MANUFACT'G 0:30:ea TeraForce Technology Corporation 0:30:eb TURBONET COMMUNICATIONS, INC. 0:30:ec BORGARDT 0:30:ed Expert Magnetics Corp. 0:30:ee DSG Technology, Inc. 0:30:ef NEON TECHNOLOGY, INC. 0:30:f IMT - Information Management T 0:30:f0 Uniform Industrial Corp. 0:30:f1 Accton Technology Corp. 0:30:f2 CISCO SYSTEMS, INC. 0:30:f3 At Work Computers 0:30:f4 STARDOT TECHNOLOGIES 0:30:f5 Wild Lab. Ltd. 0:30:f6 SECURELOGIX CORPORATION 0:30:f7 RAMIX INC. 0:30:f8 Dynapro Systems, Inc. 0:30:f9 Sollae Systems Co., Ltd. 0:30:fa TELICA, INC. 0:30:fb AZS Technology AG 0:30:fc Terawave Communications, Inc. 0:30:fd INTEGRATED SYSTEMS DESIGN 0:30:fe DSA GmbH 0:30:ff DATAFAB SYSTEMS, INC. 0:3:0 NetContinuum, Inc. 0:3:1 Avantas Networks Corporation 0:3:10 Link Evolution Corp. 0:3:11 Micro Technology Co., Ltd. 0:3:12 TR-Systemtechnik GmbH 0:3:13 Access Media SPA 0:3:14 Teleware Network Systems 0:3:15 Cidco Incorporated 0:3:16 Nobell Communications, Inc. 0:3:17 Merlin Systems, Inc. 0:3:18 Cyras Systems, Inc. 0:3:19 Infineon AG 0:3:1a Beijing Broad Telecom Ltd., China 0:3:1b Cellvision Systems, Inc. 0:3:1c Svenska Hardvarufabriken AB 0:3:1d Taiwan Commate Computer, Inc. 0:3:1e Optranet, Inc. 0:3:1f Condev Ltd. 0:3:2 Charles Industries, Ltd. 0:3:20 Xpeed, Inc. 0:3:21 Reco Research Co., Ltd. 0:3:22 IDIS Co., Ltd. 0:3:23 Cornet Technology, Inc. 0:3:24 SANYO Multimedia Tottori Co., Ltd. 0:3:25 Arima Computer Corp. 0:3:26 Iwasaki Information Systems Co., Ltd. 0:3:27 ACT'L 0:3:28 Mace Group, Inc. 0:3:29 F3, Inc. 0:3:2a UniData Communication Systems, Inc. 0:3:2b GAI Datenfunksysteme GmbH 0:3:2c ABB Industrie AG 0:3:2d IBASE Technology, Inc. 0:3:2e Scope Information Management, Ltd. 0:3:2f Global Sun Technology, Inc. 0:3:3 JAMA Electronics Co., Ltd. 0:3:30 Imagenics, Co., Ltd. 0:3:31 Cisco Systems, Inc. 0:3:32 Cisco Systems, Inc. 0:3:33 Digitel Co., Ltd. 0:3:34 Newport Electronics 0:3:35 Mirae Technology 0:3:36 Zetes Technologies 0:3:37 Vaone, Inc. 0:3:38 Oak Technology 0:3:39 Eurologic Systems, Ltd. 0:3:3a Silicon Wave, Inc. 0:3:3b TAMI Tech Co., Ltd. 0:3:3c Daiden Co., Ltd. 0:3:3d ILSHin Lab 0:3:3e Tateyama System Laboratory Co., Ltd. 0:3:3f BigBand Networks, Ltd. 0:3:4 Pacific Broadband Communications 0:3:40 Floware Wireless Systems, Ltd. 0:3:41 Axon Digital Design 0:3:42 Nortel Networks 0:3:43 Martin Professional A/S 0:3:44 Tietech.Co., Ltd. 0:3:45 Routrek Networks Corporation 0:3:46 Hitachi Kokusai Electric, Inc. 0:3:47 Intel Corporation 0:3:48 Norscan Instruments, Ltd. 0:3:49 Vidicode Datacommunicatie B.V. 0:3:4a RIAS Corporation 0:3:4b Nortel Networks 0:3:4c Shanghai DigiVision Technology Co., Ltd. 0:3:4d Chiaro Networks, Ltd. 0:3:4e Pos Data Company, Ltd. 0:3:4f Sur-Gard Security 0:3:5 Smart Network Devices GmbH 0:3:50 BTICINO SPA 0:3:51 Diebold, Inc. 0:3:52 Colubris Networks 0:3:53 Mitac, Inc. 0:3:54 Fiber Logic Communications 0:3:55 TeraBeam Internet Systems 0:3:56 Wincor Nixdorf GmbH & Co KG 0:3:57 Intervoice-Brite, Inc. 0:3:58 Hanyang Digitech Co., Ltd. 0:3:59 DigitalSis 0:3:5a Photron Limited 0:3:5b BridgeWave Communications 0:3:5c Saint Song Corp. 0:3:5d Bosung Hi-Net Co., Ltd. 0:3:5e Metropolitan Area Networks, Inc. 0:3:5f Prueftechnik Condition Monitoring GmbH & Co. KG 0:3:6 Fusion In Tech Co., Ltd. 0:3:60 PAC Interactive Technology, Inc. 0:3:61 Widcomm, Inc. 0:3:62 Vodtel Communications, Inc. 0:3:63 Miraesys Co., Ltd. 0:3:64 Scenix Semiconductor, Inc. 0:3:65 Kira Information & Communications, Ltd. 0:3:66 ASM Pacific Technology 0:3:67 Jasmine Networks, Inc. 0:3:68 Embedone Co., Ltd. 0:3:69 Nippon Antenna Co., Ltd. 0:3:6a Mainnet, Ltd. 0:3:6b Cisco Systems, Inc. 0:3:6c Cisco Systems, Inc. 0:3:6d Runtop, Inc. 0:3:6e Nicon Systems (Pty) Limited 0:3:6f Telsey SPA 0:3:7 Secure Works, Inc. 0:3:70 NXTV, Inc. 0:3:71 Acomz Networks Corp. 0:3:72 ULAN 0:3:73 Aselsan A.S 0:3:74 Hunter Watertech 0:3:75 NetMedia, Inc. 0:3:76 Graphtec Technology, Inc. 0:3:77 Gigabit Wireless 0:3:78 HUMAX Co., Ltd. 0:3:79 Proscend Communications, Inc. 0:3:7a Taiyo Yuden Co., Ltd. 0:3:7b IDEC IZUMI Corporation 0:3:7c Coax Media 0:3:7d Stellcom 0:3:7e PORTech Communications, Inc. 0:3:7f Atheros Communications, Inc. 0:3:8 AM Communications, Inc. 0:3:80 SSH Communications Security Corp. 0:3:81 Ingenico International 0:3:82 A-One Co., Ltd. 0:3:83 Metera Networks, Inc. 0:3:84 AETA 0:3:85 Actelis Networks, Inc. 0:3:86 Ho Net, Inc. 0:3:87 Blaze Network Products 0:3:88 Fastfame Technology Co., Ltd. 0:3:89 Plantronics 0:3:8a America Online, Inc. 0:3:8b PLUS-ONE I&T, Inc. 0:3:8c Total Impact 0:3:8d PCS Revenue Control Systems, Inc. 0:3:8e Atoga Systems, Inc. 0:3:8f Weinschel Corporation 0:3:9 Texcel Technology PLC 0:3:90 Digital Video Communications, Inc. 0:3:91 Advanced Digital Broadcast, Ltd. 0:3:92 Hyundai Teletek Co., Ltd. 0:3:93 Apple Computer, Inc. 0:3:94 Connect One 0:3:95 California Amplifier 0:3:96 EZ Cast Co., Ltd. 0:3:97 Watchfront Electronics 0:3:98 WISI 0:3:99 Dongju Informations & Communications Co., Ltd. 0:3:9a nSine, Ltd. 0:3:9b NetChip Technology, Inc. 0:3:9c OptiMight Communications, Inc. 0:3:9d BENQ CORPORATION 0:3:9e Tera System Co., Ltd. 0:3:9f Cisco Systems, Inc. 0:3:a Argus Technologies 0:3:a0 Cisco Systems, Inc. 0:3:a1 HIPER Information & Communication, Inc. 0:3:a2 Catapult Communications 0:3:a3 MAVIX, Ltd. 0:3:a4 Data Storage and Information Management 0:3:a5 Medea Corporation 0:3:a6 Traxit Technology, Inc. 0:3:a7 Unixtar Technology, Inc. 0:3:a8 IDOT Computers, Inc. 0:3:a9 AXCENT Media AG 0:3:aa Watlow 0:3:ab Bridge Information Systems 0:3:ac Fronius Schweissmaschinen 0:3:ad Emerson Energy Systems AB 0:3:ae Allied Advanced Manufacturing Pte, Ltd. 0:3:af Paragea Communications 0:3:b Hunter Technology, Inc. 0:3:b0 Xsense Technology Corp. 0:3:b1 Hospira Inc. 0:3:b2 Radware 0:3:b3 IA Link Systems Co., Ltd. 0:3:b4 Macrotek International Corp. 0:3:b5 Entra Technology Co. 0:3:b6 QSI Corporation 0:3:b7 ZACCESS Systems 0:3:b8 NetKit Solutions, LLC 0:3:b9 Hualong Telecom Co., Ltd. 0:3:ba Sun Microsystems 0:3:bb Signal Communications Limited 0:3:bc COT GmbH 0:3:bd OmniCluster Technologies, Inc. 0:3:be Netility 0:3:bf Centerpoint Broadband Technologies, Inc. 0:3:c Telesoft Technologies Ltd. 0:3:c0 RFTNC Co., Ltd. 0:3:c1 Packet Dynamics Ltd 0:3:c2 Solphone K.K. 0:3:c3 Micronik Multimedia 0:3:c4 Tomra Systems ASA 0:3:c5 Mobotix AG 0:3:c6 ICUE Systems, Inc. 0:3:c7 hopf Elektronik GmbH 0:3:c8 CML Emergency Services 0:3:c9 TECOM Co., Ltd. 0:3:ca MTS Systems Corp. 0:3:cb Nippon Systems Development Co., Ltd. 0:3:cc Momentum Computer, Inc. 0:3:cd Clovertech, Inc. 0:3:ce ETEN Technologies, Inc. 0:3:cf Muxcom, Inc. 0:3:d Uniwill Computer Corp. 0:3:d0 KOANKEISO Co., Ltd. 0:3:d1 Takaya Corporation 0:3:d2 Crossbeam Systems, Inc. 0:3:d3 Internet Energy Systems, Inc. 0:3:d4 Alloptic, Inc. 0:3:d5 Advanced Communications Co., Ltd. 0:3:d6 RADVision, Ltd. 0:3:d7 NextNet Wireless, Inc. 0:3:d8 iMPath Networks, Inc. 0:3:d9 Secheron SA 0:3:da Takamisawa Cybernetics Co., Ltd. 0:3:db Apogee Electronics Corp. 0:3:dc Lexar Media, Inc. 0:3:dd Comark Corp. 0:3:de OTC Wireless 0:3:df Desana Systems 0:3:e Core Communications Co., Ltd. 0:3:e0 RadioFrame Networks, Inc. 0:3:e1 Winmate Communication, Inc. 0:3:e2 Comspace Corporation 0:3:e3 Cisco Systems, Inc. 0:3:e4 Cisco Systems, Inc. 0:3:e5 Hermstedt SG 0:3:e6 Entone Technologies, Inc. 0:3:e7 Logostek Co. Ltd. 0:3:e8 Wavelength Digital Limited 0:3:e9 Akara Canada, Inc. 0:3:ea Mega System Technologies, Inc. 0:3:eb Atrica 0:3:ec ICG Research, Inc. 0:3:ed Shinkawa Electric Co., Ltd. 0:3:ee MKNet Corporation 0:3:ef Oneline AG 0:3:f Digital China (Shanghai) Networks Ltd. 0:3:f0 Redfern Broadband Networks 0:3:f1 Cicada Semiconductor, Inc. 0:3:f2 Seneca Networks 0:3:f3 Dazzle Multimedia, Inc. 0:3:f4 NetBurner 0:3:f5 Chip2Chip 0:3:f6 Allegro Networks, Inc. 0:3:f7 Plast-Control GmbH 0:3:f8 SanCastle Technologies, Inc. 0:3:f9 Pleiades Communications, Inc. 0:3:fa TiMetra Networks 0:3:fb Toko Seiki Company, Ltd. 0:3:fc Intertex Data AB 0:3:fd Cisco Systems, Inc. 0:3:fe Cisco Systems, Inc. 0:3:ff Microsoft Corporation 0:40:0 PCI COMPONENTES DA AMZONIA LTD 0:40:1 ZYXEL COMMUNICATIONS, INC. 0:40:10 SONIC SYSTEMS, INC. 0:40:11 ANDOVER CONTROLS CORPORATION 0:40:12 WINDATA, INC. 0:40:13 NTT DATA COMM. SYSTEMS CORP. 0:40:14 COMSOFT GMBH 0:40:15 ASCOM INFRASYS AG 0:40:16 HADAX ELECTRONICS, INC. 0:40:17 Silex Technology America 0:40:18 ADOBE SYSTEMS, INC. 0:40:19 AEON SYSTEMS, INC. 0:40:1a FUJI ELECTRIC CO., LTD. 0:40:1b PRINTER SYSTEMS CORP. 0:40:1c AST RESEARCH, INC. 0:40:1d INVISIBLE SOFTWARE, INC. 0:40:1e ICC 0:40:1f COLORGRAPH LTD 0:40:2 PERLE SYSTEMS LIMITED 0:40:20 PINACL COMMUNICATION 0:40:21 RASTER GRAPHICS 0:40:22 KLEVER COMPUTERS, INC. 0:40:23 LOGIC CORPORATION 0:40:24 COMPAC INC. 0:40:25 MOLECULAR DYNAMICS 0:40:26 MELCO, INC. 0:40:27 SMC MASSACHUSETTS, INC. 0:40:28 NETCOMM LIMITED 0:40:29 COMPEX 0:40:2a CANOGA-PERKINS 0:40:2b TRIGEM COMPUTER, INC. 0:40:2c ISIS DISTRIBUTED SYSTEMS, INC. 0:40:2d HARRIS ADACOM CORPORATION 0:40:2e PRECISION SOFTWARE, INC. 0:40:2f XLNT DESIGNS INC. 0:40:3 Emerson Process Management Power & Water Solutions, Inc. 0:40:30 GK COMPUTER 0:40:31 KOKUSAI ELECTRIC CO., LTD 0:40:32 DIGITAL COMMUNICATIONS 0:40:33 ADDTRON TECHNOLOGY CO., LTD. 0:40:34 BUSTEK CORPORATION 0:40:35 OPCOM 0:40:36 TRIBE COMPUTER WORKS, INC. 0:40:37 SEA-ILAN, INC. 0:40:38 TALENT ELECTRIC INCORPORATED 0:40:39 OPTEC DAIICHI DENKO CO., LTD. 0:40:3a IMPACT TECHNOLOGIES 0:40:3b SYNERJET INTERNATIONAL CORP. 0:40:3c FORKS, INC. 0:40:3d TERADATA 0:40:3e RASTER OPS CORPORATION 0:40:3f SSANGYONG COMPUTER SYSTEMS 0:40:4 ICM CO. LTD. 0:40:40 RING ACCESS, INC. 0:40:41 FUJIKURA LTD. 0:40:42 N.A.T. GMBH 0:40:43 NOKIA TELECOMMUNICATIONS 0:40:44 QNIX COMPUTER CO., LTD. 0:40:45 TWINHEAD CORPORATION 0:40:46 UDC RESEARCH LIMITED 0:40:47 WIND RIVER SYSTEMS 0:40:48 SMD INFORMATICA S.A. 0:40:49 TEGIMENTA AG 0:40:4a WEST AUSTRALIAN DEPARTMENT 0:40:4b MAPLE COMPUTER SYSTEMS 0:40:4c HYPERTEC PTY LTD. 0:40:4d TELECOMMUNICATIONS TECHNIQUES 0:40:4e FLUENT, INC. 0:40:4f SPACE & NAVAL WARFARE SYSTEMS 0:40:5 ANI COMMUNICATIONS INC. 0:40:50 IRONICS, INCORPORATED 0:40:51 GRACILIS, INC. 0:40:52 STAR TECHNOLOGIES, INC. 0:40:53 AMPRO COMPUTERS 0:40:54 CONNECTION MACHINES SERVICES 0:40:55 METRONIX GMBH 0:40:56 MCM JAPAN LTD. 0:40:57 LOCKHEED - SANDERS 0:40:58 KRONOS, INC. 0:40:59 YOSHIDA KOGYO K. K. 0:40:5a GOLDSTAR INFORMATION & COMM. 0:40:5b FUNASSET LIMITED 0:40:5c FUTURE SYSTEMS, INC. 0:40:5d STAR-TEK, INC. 0:40:5e NORTH HILLS ISRAEL 0:40:5f AFE COMPUTERS LTD. 0:40:6 SAMPO TECHNOLOGY CORPORATION 0:40:60 COMENDEC LTD 0:40:61 DATATECH ENTERPRISES CO., LTD. 0:40:62 E-SYSTEMS, INC./GARLAND DIV. 0:40:63 VIA TECHNOLOGIES, INC. 0:40:64 KLA INSTRUMENTS CORPORATION 0:40:65 GTE SPACENET 0:40:66 HITACHI CABLE, LTD. 0:40:67 OMNIBYTE CORPORATION 0:40:68 EXTENDED SYSTEMS 0:40:69 LEMCOM SYSTEMS, INC. 0:40:6a KENTEK INFORMATION SYSTEMS,INC 0:40:6b SYSGEN 0:40:6c COPERNIQUE 0:40:6d LANCO, INC. 0:40:6e COROLLARY, INC. 0:40:6f SYNC RESEARCH INC. 0:40:7 TELMAT INFORMATIQUE 0:40:70 INTERWARE CO., LTD. 0:40:71 ATM COMPUTER GMBH 0:40:72 Applied Innovation Inc. 0:40:73 BASS ASSOCIATES 0:40:74 CABLE AND WIRELESS 0:40:75 M-TRADE (UK) LTD 0:40:76 Sun Conversion Technologies 0:40:77 MAXTON TECHNOLOGY CORPORATION 0:40:78 WEARNES AUTOMATION PTE LTD 0:40:79 JUKO MANUFACTURE COMPANY, LTD. 0:40:7a SOCIETE D'EXPLOITATION DU CNIT 0:40:7b SCIENTIFIC ATLANTA 0:40:7c QUME CORPORATION 0:40:7d EXTENSION TECHNOLOGY CORP. 0:40:7e EVERGREEN SYSTEMS, INC. 0:40:7f FLIR Systems 0:40:8 A PLUS INFO CORPORATION 0:40:80 ATHENIX CORPORATION 0:40:81 MANNESMANN SCANGRAPHIC GMBH 0:40:82 LABORATORY EQUIPMENT CORP. 0:40:83 TDA INDUSTRIA DE PRODUTOS 0:40:84 HONEYWELL INC. 0:40:85 SAAB INSTRUMENTS AB 0:40:86 MICHELS & KLEBERHOFF COMPUTER 0:40:87 UBITREX CORPORATION 0:40:88 MOBIUS TECHNOLOGIES, INC. 0:40:89 MEIDENSHA CORPORATION 0:40:8a TPS TELEPROCESSING SYS. GMBH 0:40:8b RAYLAN CORPORATION 0:40:8c AXIS COMMUNICATIONS AB 0:40:8d THE GOODYEAR TIRE & RUBBER CO. 0:40:8e DIGILOG, INC. 0:40:8f WM-DATA MINFO AB 0:40:9 TACHIBANA TECTRON CO., LTD. 0:40:90 ANSEL COMMUNICATIONS 0:40:91 PROCOMP INDUSTRIA ELETRONICA 0:40:92 ASP COMPUTER PRODUCTS, INC. 0:40:93 PAXDATA NETWORKS LTD. 0:40:94 SHOGRAPHICS, INC. 0:40:95 R.P.T. INTERGROUPS INT'L LTD. 0:40:96 Cisco Systems, Inc. 0:40:97 DATEX DIVISION OF 0:40:98 DRESSLER GMBH & CO. 0:40:99 NEWGEN SYSTEMS CORP. 0:40:9a NETWORK EXPRESS, INC. 0:40:9b HAL COMPUTER SYSTEMS INC. 0:40:9c TRANSWARE 0:40:9d DIGIBOARD, INC. 0:40:9e CONCURRENT TECHNOLOGIES LTD. 0:40:9f LANCAST/CASAT TECHNOLOGY, INC. 0:40:a PIVOTAL TECHNOLOGIES, INC. 0:40:a0 GOLDSTAR CO., LTD. 0:40:a1 ERGO COMPUTING 0:40:a2 KINGSTAR TECHNOLOGY INC. 0:40:a3 MICROUNITY SYSTEMS ENGINEERING 0:40:a4 ROSE ELECTRONICS 0:40:a5 CLINICOMP INTL. 0:40:a6 Cray, Inc. 0:40:a7 ITAUTEC PHILCO S.A. 0:40:a8 IMF INTERNATIONAL LTD. 0:40:a9 DATACOM INC. 0:40:aa VALMET AUTOMATION INC. 0:40:ab ROLAND DG CORPORATION 0:40:ac SUPER WORKSTATION, INC. 0:40:ad SMA REGELSYSTEME GMBH 0:40:ae DELTA CONTROLS, INC. 0:40:af DIGITAL PRODUCTS, INC. 0:40:b CISCO SYSTEMS, INC. 0:40:b0 BYTEX CORPORATION, ENGINEERING 0:40:b1 CODONICS INC. 0:40:b2 SYSTEMFORSCHUNG 0:40:b3 PAR MICROSYSTEMS CORPORATION 0:40:b4 NEXTCOM K.K. 0:40:b5 VIDEO TECHNOLOGY COMPUTERS LTD 0:40:b6 COMPUTERM CORPORATION 0:40:b7 STEALTH COMPUTER SYSTEMS 0:40:b8 IDEA ASSOCIATES 0:40:b9 MACQ ELECTRONIQUE SA 0:40:ba ALLIANT COMPUTER SYSTEMS CORP. 0:40:bb GOLDSTAR CABLE CO., LTD. 0:40:bc ALGORITHMICS LTD. 0:40:bd STARLIGHT NETWORKS, INC. 0:40:be BOEING DEFENSE & SPACE 0:40:bf CHANNEL SYSTEMS INTERN'L INC. 0:40:c GENERAL MICRO SYSTEMS, INC. 0:40:c0 VISTA CONTROLS CORPORATION 0:40:c1 BIZERBA-WERKE WILHEIM KRAUT 0:40:c2 APPLIED COMPUTING DEVICES 0:40:c3 FISCHER AND PORTER CO. 0:40:c4 KINKEI SYSTEM CORPORATION 0:40:c5 MICOM COMMUNICATIONS INC. 0:40:c6 FIBERNET RESEARCH, INC. 0:40:c7 RUBY TECH CORPORATION 0:40:c8 MILAN TECHNOLOGY CORPORATION 0:40:c9 NCUBE 0:40:ca FIRST INTERNAT'L COMPUTER, INC 0:40:cb LANWAN TECHNOLOGIES 0:40:cc SILCOM MANUF'G TECHNOLOGY INC. 0:40:cd TERA MICROSYSTEMS, INC. 0:40:ce NET-SOURCE, INC. 0:40:cf STRAWBERRY TREE, INC. 0:40:d LANNET DATA COMMUNICATIONS,LTD 0:40:d0 MITAC INTERNATIONAL CORP. 0:40:d1 FUKUDA DENSHI CO., LTD. 0:40:d2 PAGINE CORPORATION 0:40:d3 KIMPSION INTERNATIONAL CORP. 0:40:d4 GAGE TALKER CORP. 0:40:d5 SARTORIUS AG 0:40:d6 LOCAMATION B.V. 0:40:d7 STUDIO GEN INC. 0:40:d8 OCEAN OFFICE AUTOMATION LTD. 0:40:d9 AMERICAN MEGATRENDS INC. 0:40:da TELSPEC LTD 0:40:db ADVANCED TECHNICAL SOLUTIONS 0:40:dc TRITEC ELECTRONIC GMBH 0:40:dd HONG TECHNOLOGIES 0:40:de ELETTRONICA SAN GIORGIO 0:40:df DIGALOG SYSTEMS, INC. 0:40:e MEMOTEC COMMUNICATIONS, INC. 0:40:e0 ATOMWIDE LTD. 0:40:e1 MARNER INTERNATIONAL, INC. 0:40:e2 MESA RIDGE TECHNOLOGIES, INC. 0:40:e3 QUIN SYSTEMS LTD 0:40:e4 E-M TECHNOLOGY, INC. 0:40:e5 SYBUS CORPORATION 0:40:e6 C.A.E.N. 0:40:e7 ARNOS INSTRUMENTS & COMPUTER 0:40:e8 CHARLES RIVER DATA SYSTEMS,INC 0:40:e9 ACCORD SYSTEMS, INC. 0:40:ea PLAIN TREE SYSTEMS INC 0:40:eb MARTIN MARIETTA CORPORATION 0:40:ec MIKASA SYSTEM ENGINEERING 0:40:ed NETWORK CONTROLS INT'NATL INC. 0:40:ee OPTIMEM 0:40:ef HYPERCOM, INC. 0:40:f DATACOM TECHNOLOGIES 0:40:f0 MICRO SYSTEMS, INC. 0:40:f1 CHUO ELECTRONICS CO., LTD. 0:40:f2 JANICH & KLASS COMPUTERTECHNIK 0:40:f3 NETCOR 0:40:f4 CAMEO COMMUNICATIONS, INC. 0:40:f5 OEM ENGINES 0:40:f6 KATRON COMPUTERS INC. 0:40:f7 POLAROID MEDICAL IMAGING SYS. 0:40:f8 SYSTEMHAUS DISCOM 0:40:f9 COMBINET 0:40:fa MICROBOARDS, INC. 0:40:fb CASCADE COMMUNICATIONS CORP. 0:40:fc IBR COMPUTER TECHNIK GMBH 0:40:fd LXE 0:40:fe SYMPLEX COMMUNICATIONS 0:40:ff TELEBIT CORPORATION 0:42:52 RLX Technologies 0:45:1 Versus Technology, Inc. 0:4:0 LEXMARK INTERNATIONAL, INC. 0:4:1 Osaki Electric Co., Ltd. 0:4:10 Spinnaker Networks, Inc. 0:4:11 Inkra Networks, Inc. 0:4:12 WaveSmith Networks, Inc. 0:4:13 SNOM Technology AG 0:4:14 Umezawa Musen Denki Co., Ltd. 0:4:15 Rasteme Systems Co., Ltd. 0:4:16 Parks S/A Comunicacoes Digitais 0:4:17 ELAU AG 0:4:18 Teltronic S.A.U. 0:4:19 Fibercycle Networks, Inc. 0:4:1a ines GmbH 0:4:1b Digital Interfaces Ltd. 0:4:1c ipDialog, Inc. 0:4:1d Corega of America 0:4:1e Shikoku Instrumentation Co., Ltd. 0:4:1f Sony Computer Entertainment, Inc. 0:4:2 Nexsan Technologies, Ltd. 0:4:20 Slim Devices, Inc. 0:4:21 Ocular Networks 0:4:22 Gordon Kapes, Inc. 0:4:23 Intel Corporation 0:4:24 TMC s.r.l. 0:4:25 Atmel Corporation 0:4:26 Autosys 0:4:27 Cisco Systems, Inc. 0:4:28 Cisco Systems, Inc. 0:4:29 Pixord Corporation 0:4:2a Wireless Networks, Inc. 0:4:2b IT Access Co., Ltd. 0:4:2c Minet, Inc. 0:4:2d Sarian Systems, Ltd. 0:4:2e Netous Technologies, Ltd. 0:4:2f International Communications Products, Inc. 0:4:3 Nexsi Corporation 0:4:30 Netgem 0:4:31 GlobalStreams, Inc. 0:4:32 Voyetra Turtle Beach, Inc. 0:4:33 Cyberboard A/S 0:4:34 Accelent Systems, Inc. 0:4:35 Comptek International, Inc. 0:4:36 ELANsat Technologies, Inc. 0:4:37 Powin Information Technology, Inc. 0:4:38 Nortel Networks 0:4:39 Rosco Entertainment Technology, Inc. 0:4:3a Intelligent Telecommunications, Inc. 0:4:3b Lava Computer Mfg., Inc. 0:4:3c SONOS Co., Ltd. 0:4:3d INDEL AG 0:4:3e Telencomm 0:4:3f Electronic Systems Technology, Inc. 0:4:4 Makino Milling Machine Co., Ltd. 0:4:40 cyberPIXIE, Inc. 0:4:41 Half Dome Systems, Inc. 0:4:42 NACT 0:4:43 Agilent Technologies, Inc. 0:4:44 Western Multiplex Corporation 0:4:45 LMS Skalar Instruments GmbH 0:4:46 CYZENTECH Co., Ltd. 0:4:47 Acrowave Systems Co., Ltd. 0:4:48 Polaroid Professional Imaging 0:4:49 Mapletree Networks 0:4:4a iPolicy Networks, Inc. 0:4:4b NVIDIA 0:4:4c JENOPTIK 0:4:4d Cisco Systems, Inc. 0:4:4e Cisco Systems, Inc. 0:4:4f Leukhardt Systemelektronik GmbH 0:4:5 ACN Technologies 0:4:50 DMD Computers SRL 0:4:51 Medrad, Inc. 0:4:52 RocketLogix, Inc. 0:4:53 YottaYotta, Inc. 0:4:54 Quadriga UK 0:4:55 ANTARA.net 0:4:56 PipingHot Networks 0:4:57 Universal Access Technology, Inc. 0:4:58 Fusion X Co., Ltd. 0:4:59 Veristar Corporation 0:4:5a The Linksys Group, Inc. 0:4:5b Techsan Electronics Co., Ltd. 0:4:5c Mobiwave Pte Ltd 0:4:5d BEKA Elektronik 0:4:5e PolyTrax Information Technology AG 0:4:5f Evalue Technology, Inc. 0:4:6 Fa. Metabox AG 0:4:60 Knilink Technology, Inc. 0:4:61 EPOX Computer Co., Ltd. 0:4:62 DAKOS Data & Communication Co., Ltd. 0:4:63 Bosch Security Systems 0:4:64 Fantasma Networks, Inc. 0:4:65 i.s.t isdn-support technik GmbH 0:4:66 ARMITEL Co. 0:4:67 Wuhan Research Institute of MII 0:4:68 Vivity, Inc. 0:4:69 Innocom, Inc. 0:4:6a Navini Networks 0:4:6b Palm Wireless, Inc. 0:4:6c Cyber Technology Co., Ltd. 0:4:6d Cisco Systems, Inc. 0:4:6e Cisco Systems, Inc. 0:4:6f Digitel S/A Industria Eletronica 0:4:7 Topcon Positioning Systems, Inc. 0:4:70 ipUnplugged AB 0:4:71 IPrad 0:4:72 Telelynx, Inc. 0:4:73 Photonex Corporation 0:4:74 LEGRAND 0:4:75 3 Com Corporation 0:4:76 3 Com Corporation 0:4:77 Scalant Systems, Inc. 0:4:78 G. Star Technology Corporation 0:4:79 Radius Co., Ltd. 0:4:7a AXXESSIT ASA 0:4:7b Schlumberger 0:4:7c Skidata AG 0:4:7d Pelco 0:4:7e Optelecom=NKF 0:4:7f Chr. Mayr GmbH & Co. KG 0:4:8 Sanko Electronics Co., Ltd. 0:4:80 Foundry Networks, Inc. 0:4:81 Econolite Control Products, Inc. 0:4:82 Medialogic Corp. 0:4:83 Deltron Technology, Inc. 0:4:84 Amann GmbH 0:4:85 PicoLight 0:4:86 ITTC, University of Kansas 0:4:87 Cogency Semiconductor, Inc. 0:4:88 Eurotherm Controls 0:4:89 YAFO Networks, Inc. 0:4:8a Temia Vertriebs GmbH 0:4:8b Poscon Corporation 0:4:8c Nayna Networks, Inc. 0:4:8d Tone Commander Systems, Inc. 0:4:8e Ohm Tech Labs, Inc. 0:4:8f TD Systems Corp. 0:4:9 Cratos Networks 0:4:90 Optical Access 0:4:91 Technovision, Inc. 0:4:92 Hive Internet, Ltd. 0:4:93 Tsinghua Unisplendour Co., Ltd. 0:4:94 Breezecom, Ltd. 0:4:95 Tejas Networks 0:4:96 Extreme Networks 0:4:97 MacroSystem Digital Video AG 0:4:98 Mahi Networks 0:4:99 Chino Corporation 0:4:9a Cisco Systems, Inc. 0:4:9b Cisco Systems, Inc. 0:4:9c Surgient Networks, Inc. 0:4:9d Ipanema Technologies 0:4:9e Wirelink Co., Ltd. 0:4:9f Freescale Semiconductor 0:4:a Sage Systems 0:4:a0 Verity Instruments, Inc. 0:4:a1 Pathway Connectivity 0:4:a2 L.S.I. Japan Co., Ltd. 0:4:a3 Microchip Technology, Inc. 0:4:a4 NetEnabled, Inc. 0:4:a5 Barco Projection Systems NV 0:4:a6 SAF Tehnika Ltd. 0:4:a7 FabiaTech Corporation 0:4:a8 Broadmax Technologies, Inc. 0:4:a9 SandStream Technologies, Inc. 0:4:aa Jetstream Communications 0:4:ab Comverse Network Systems, Inc. 0:4:ac IBM CORP. 0:4:ad Malibu Networks 0:4:ae Liquid Metronics 0:4:af Digital Fountain, Inc. 0:4:b 3com Europe Ltd. 0:4:b0 ELESIGN Co., Ltd. 0:4:b1 Signal Technology, Inc. 0:4:b2 ESSEGI SRL 0:4:b3 Videotek, Inc. 0:4:b4 CIAC 0:4:b5 Equitrac Corporation 0:4:b6 Stratex Networks, Inc. 0:4:b7 AMB i.t. Holding 0:4:b8 Kumahira Co., Ltd. 0:4:b9 S.I. Soubou, Inc. 0:4:ba KDD Media Will Corporation 0:4:bb Bardac Corporation 0:4:bc Giantec, Inc. 0:4:bd Motorola BCS 0:4:be OptXCon, Inc. 0:4:bf VersaLogic Corp. 0:4:c KANNO Work's Ltd. 0:4:c0 Cisco Systems, Inc. 0:4:c1 Cisco Systems, Inc. 0:4:c2 Magnipix, Inc. 0:4:c3 CASTOR Informatique 0:4:c4 Allen & Heath Limited 0:4:c5 ASE Technologies, USA 0:4:c6 Yamaha Motor Co., Ltd. 0:4:c7 NetMount 0:4:c8 LIBA Maschinenfabrik GmbH 0:4:c9 Micro Electron Co., Ltd. 0:4:ca FreeMs Corp. 0:4:cb Tdsoft Communication, Ltd. 0:4:cc Peek Traffic B.V. 0:4:cd Informedia Research Group 0:4:ce Patria Ailon 0:4:cf Seagate Technology 0:4:d Avaya, Inc. 0:4:d0 Softlink s.r.o. 0:4:d1 Drew Technologies, Inc. 0:4:d2 Adcon Telemetry GmbH 0:4:d3 Toyokeiki Co., Ltd. 0:4:d4 Proview Electronics Co., Ltd. 0:4:d5 Hitachi Communication Systems, Inc. 0:4:d6 Takagi Industrial Co., Ltd. 0:4:d7 Omitec Instrumentation Ltd. 0:4:d8 IPWireless, Inc. 0:4:d9 Titan Electronics, Inc. 0:4:da Relax Technology, Inc. 0:4:db Tellus Group Corp. 0:4:dc Nortel Networks 0:4:dd Cisco Systems, Inc. 0:4:de Cisco Systems, Inc. 0:4:df Teracom Telematica Ltda. 0:4:e AVM GmbH 0:4:e0 Procket Networks 0:4:e1 Infinior Microsystems 0:4:e2 SMC Networks, Inc. 0:4:e3 Accton Technology Corp. 0:4:e4 Daeryung Ind., Inc. 0:4:e5 Glonet Systems, Inc. 0:4:e6 Banyan Network Private Limited 0:4:e7 Lightpointe Communications, Inc 0:4:e8 IER, Inc. 0:4:e9 Infiniswitch Corporation 0:4:ea Hewlett-Packard Company 0:4:eb Paxonet Communications, Inc. 0:4:ec Memobox SA 0:4:ed Billion Electric Co., Ltd. 0:4:ee Lincoln Electric Company 0:4:ef Polestar Corp. 0:4:f Asus Network Technologies, Inc. 0:4:f0 International Computers, Ltd 0:4:f1 WhereNet 0:4:f2 Polycom 0:4:f3 FS FORTH-SYSTEME GmbH 0:4:f4 Infinite Electronics Inc. 0:4:f5 SnowShore Networks, Inc. 0:4:f6 Amphus 0:4:f7 Omega Band, Inc. 0:4:f8 QUALICABLE TV Industria E Com., Ltda 0:4:f9 Xtera Communications, Inc. 0:4:fa NBS Technologies Inc. 0:4:fb Commtech, Inc. 0:4:fc Stratus Computer (DE), Inc. 0:4:fd Japan Control Engineering Co., Ltd. 0:4:fe Pelago Networks 0:4:ff Acronet Co., Ltd. 0:50:0 NEXO COMMUNICATIONS, INC. 0:50:1 YAMASHITA SYSTEMS CORP. 0:50:10 NovaNET Learning, Inc. 0:50:12 CBL - GMBH 0:50:13 Chaparral Network Storage 0:50:14 CISCO SYSTEMS, INC. 0:50:15 BRIGHT STAR ENGINEERING 0:50:16 SST/WOODHEAD INDUSTRIES 0:50:17 RSR S.R.L. 0:50:18 AMIT, Inc. 0:50:19 SPRING TIDE NETWORKS, INC. 0:50:1a UISIQN 0:50:1b ABL CANADA, INC. 0:50:1c JATOM SYSTEMS, INC. 0:50:1e Miranda Technologies, Inc. 0:50:1f MRG SYSTEMS, LTD. 0:50:2 OMNISEC AG 0:50:20 MEDIASTAR CO., LTD. 0:50:21 EIS INTERNATIONAL, INC. 0:50:22 ZONET TECHNOLOGY, INC. 0:50:23 PG DESIGN ELECTRONICS, INC. 0:50:24 NAVIC SYSTEMS, INC. 0:50:26 COSYSTEMS, INC. 0:50:27 GENICOM CORPORATION 0:50:28 AVAL COMMUNICATIONS 0:50:29 1394 PRINTER WORKING GROUP 0:50:2a CISCO SYSTEMS, INC. 0:50:2b GENRAD LTD. 0:50:2c SOYO COMPUTER, INC. 0:50:2d ACCEL, INC. 0:50:2e CAMBEX CORPORATION 0:50:2f TollBridge Technologies, Inc. 0:50:3 GRETAG MACBETH AG 0:50:30 FUTURE PLUS SYSTEMS 0:50:31 AEROFLEX LABORATORIES, INC. 0:50:32 PICAZO COMMUNICATIONS, INC. 0:50:33 MAYAN NETWORKS 0:50:36 NETCAM, LTD. 0:50:37 KOGA ELECTRONICS CO. 0:50:38 DAIN TELECOM CO., LTD. 0:50:39 MARINER NETWORKS 0:50:3a DATONG ELECTRONICS LTD. 0:50:3b MEDIAFIRE CORPORATION 0:50:3c TSINGHUA NOVEL ELECTRONICS 0:50:3e CISCO SYSTEMS, INC. 0:50:3f ANCHOR GAMES 0:50:4 3COM CORPORATION 0:50:40 Panasonic Electric Works Laboratory of America, Inc./SLC Lab 0:50:41 CTX OPTO ELECTRONIC CORP. 0:50:42 SCI MANUFACTURING SINGAPORE PTE, LTD. 0:50:43 MARVELL SEMICONDUCTOR, INC. 0:50:44 ASACA CORPORATION 0:50:45 RIOWORKS SOLUTIONS, INC. 0:50:46 MENICX INTERNATIONAL CO., LTD. 0:50:47 PRIVATE 0:50:48 INFOLIBRIA 0:50:49 ELLACOYA NETWORKS, INC. 0:50:4a ELTECO A.S. 0:50:4b BARCONET N.V. 0:50:4c GALIL MOTION CONTROL, INC. 0:50:4d TOKYO ELECTRON DEVICE LTD. 0:50:4e SIERRA MONITOR CORP. 0:50:4f OLENCOM ELECTRONICS 0:50:50 CISCO SYSTEMS, INC. 0:50:51 IWATSU ELECTRIC CO., LTD. 0:50:52 TIARA NETWORKS, INC. 0:50:53 CISCO SYSTEMS, INC. 0:50:54 CISCO SYSTEMS, INC. 0:50:55 DOMS A/S 0:50:56 VMWare, Inc. 0:50:57 BROADBAND ACCESS SYSTEMS 0:50:58 VegaStream Limted 0:50:59 iBAHN 0:50:5a NETWORK ALCHEMY, INC. 0:50:5b KAWASAKI LSI U.S.A., INC. 0:50:5c TUNDO CORPORATION 0:50:5e DIGITEK MICROLOGIC S.A. 0:50:5f BRAND INNOVATORS 0:50:6 TAC AB 0:50:60 TANDBERG TELECOM AS 0:50:62 KOUWELL ELECTRONICS CORP. ** 0:50:63 OY COMSEL SYSTEM AB 0:50:64 CAE ELECTRONICS 0:50:65 DENSEI-LAMBAD Co., Ltd. 0:50:66 AtecoM GmbH advanced telecomunication modules 0:50:67 AEROCOMM, INC. 0:50:68 ELECTRONIC INDUSTRIES ASSOCIATION 0:50:69 PixStream Incorporated 0:50:6a EDEVA, INC. 0:50:6b SPX-ATEG 0:50:6c G & L BEIJER ELECTRONICS AB 0:50:6d VIDEOJET SYSTEMS 0:50:6e CORDER ENGINEERING CORPORATION 0:50:6f G-CONNECT 0:50:7 SIEMENS TELECOMMUNICATION SYSTEMS LIMITED 0:50:70 CHAINTECH COMPUTER CO., LTD. 0:50:71 AIWA CO., LTD. 0:50:72 CORVIS CORPORATION 0:50:73 CISCO SYSTEMS, INC. 0:50:74 ADVANCED HI-TECH CORP. 0:50:75 KESTREL SOLUTIONS 0:50:76 IBM 0:50:77 PROLIFIC TECHNOLOGY, INC. 0:50:78 MEGATON HOUSE, LTD. 0:50:79 PRIVATE 0:50:7a XPEED, INC. 0:50:7b MERLOT COMMUNICATIONS 0:50:7c VIDEOCON AG 0:50:7d IFP 0:50:7e NEWER TECHNOLOGY 0:50:7f DrayTek Corp. 0:50:8 TIVA MICROCOMPUTER CORP. (TMC) 0:50:80 CISCO SYSTEMS, INC. 0:50:81 MURATA MACHINERY, LTD. 0:50:82 FORESSON CORPORATION 0:50:83 GILBARCO, INC. 0:50:84 ATL PRODUCTS 0:50:86 TELKOM SA, LTD. 0:50:87 TERASAKI ELECTRIC CO., LTD. 0:50:88 AMANO CORPORATION 0:50:89 SAFETY MANAGEMENT SYSTEMS 0:50:8b COMPAQ COMPUTER CORPORATION 0:50:8c RSI SYSTEMS 0:50:8d ABIT COMPUTER CORPORATION 0:50:8e OPTIMATION, INC. 0:50:8f ASITA TECHNOLOGIES INT'L LTD. 0:50:9 PHILIPS BROADBAND NETWORKS 0:50:90 DCTRI 0:50:91 NETACCESS, INC. 0:50:92 RIGAKU INDUSTRIAL CORPORATION 0:50:93 BOEING 0:50:94 PACE MICRO TECHNOLOGY PLC 0:50:95 PERACOM NETWORKS 0:50:96 SALIX TECHNOLOGIES, INC. 0:50:97 MMC-EMBEDDED COMPUTERTECHNIK GmbH 0:50:98 GLOBALOOP, LTD. 0:50:99 3COM EUROPE, LTD. 0:50:9a TAG ELECTRONIC SYSTEMS 0:50:9b SWITCHCORE AB 0:50:9c BETA RESEARCH 0:50:9d THE INDUSTREE B.V. 0:50:9e Les Technologies SoftAcoustik Inc. 0:50:9f HORIZON COMPUTER 0:50:a IRIS TECHNOLOGIES, INC. 0:50:a0 DELTA COMPUTER SYSTEMS, INC. 0:50:a1 CARLO GAVAZZI, INC. 0:50:a2 CISCO SYSTEMS, INC. 0:50:a3 TransMedia Communications, Inc. 0:50:a4 IO TECH, INC. 0:50:a5 CAPITOL BUSINESS SYSTEMS, LTD. 0:50:a6 OPTRONICS 0:50:a7 CISCO SYSTEMS, INC. 0:50:a8 OpenCon Systems, Inc. 0:50:a9 MOLDAT WIRELESS TECHNOLGIES 0:50:aa KONICA MINOLTA HOLDINGS, INC. 0:50:ab NALTEC, INC. 0:50:ac MAPLE COMPUTER CORPORATION 0:50:ad CommUnique Wireless Corp. 0:50:ae IWAKI ELECTRONICS CO., LTD. 0:50:af INTERGON, INC. 0:50:b CISCO SYSTEMS, INC. 0:50:b0 TECHNOLOGY ATLANTA CORPORATION 0:50:b1 GIDDINGS & LEWIS 0:50:b2 BRODEL AUTOMATION 0:50:b3 VOICEBOARD CORPORATION 0:50:b4 SATCHWELL CONTROL SYSTEMS, LTD 0:50:b5 FICHET-BAUCHE 0:50:b6 GOOD WAY IND. CO., LTD. 0:50:b7 BOSER TECHNOLOGY CO., LTD. 0:50:b8 INOVA COMPUTERS GMBH & CO. KG 0:50:b9 XITRON TECHNOLOGIES, INC. 0:50:ba D-LINK 0:50:bb CMS TECHNOLOGIES 0:50:bc HAMMER STORAGE SOLUTIONS 0:50:bd CISCO SYSTEMS, INC. 0:50:be FAST MULTIMEDIA AG 0:50:bf MOTOTECH INC. 0:50:c e-Tek Labs, Inc. 0:50:c0 GATAN, INC. 0:50:c1 GEMFLEX NETWORKS, LTD. 0:50:c2 IEEE REGISTRATION AUTHORITY 0:50:c4 IMD 0:50:c5 ADS TECHNOLOGIES, INC. 0:50:c6 LOOP TELECOMMUNICATION INTERNATIONAL, INC. 0:50:c8 ADDONICS COMMUNICATIONS, INC. 0:50:c9 MASPRO DENKOH CORP. 0:50:ca NET TO NET TECHNOLOGIES 0:50:cb JETTER 0:50:cc XYRATEX 0:50:cd DIGIANSWER A/S 0:50:ce LG INTERNATIONAL CORP. 0:50:cf VANLINK COMMUNICATION TECHNOLOGY RESEARCH INSTITUTE 0:50:d SATORI ELECTORIC CO., LTD. 0:50:d0 MINERVA SYSTEMS 0:50:d1 CISCO SYSTEMS, INC. 0:50:d2 CMC Electronics Inc 0:50:d3 DIGITAL AUDIO PROCESSING PTY. LTD. 0:50:d4 JOOHONG INFORMATION & 0:50:d5 AD SYSTEMS CORP. 0:50:d6 ATLAS COPCO TOOLS AB 0:50:d7 TELSTRAT 0:50:d8 UNICORN COMPUTER CORP. 0:50:d9 ENGETRON-ENGENHARIA ELETRONICA IND. e COM. LTDA 0:50:da 3COM CORPORATION 0:50:db CONTEMPORARY CONTROL 0:50:dc TAS TELEFONBAU A. SCHWABE GMBH & CO. KG 0:50:dd SERRA SOLDADURA, S.A. 0:50:de SIGNUM SYSTEMS CORP. 0:50:df AirFiber, Inc. 0:50:e CHROMATIS NETWORKS, INC. 0:50:e1 NS TECH ELECTRONICS SDN BHD 0:50:e2 CISCO SYSTEMS, INC. 0:50:e3 Terayon Communications Systems 0:50:e4 APPLE COMPUTER, INC. 0:50:e6 HAKUSAN CORPORATION 0:50:e7 PARADISE INNOVATIONS (ASIA) 0:50:e8 NOMADIX INC. 0:50:ea XEL COMMUNICATIONS, INC. 0:50:eb ALPHA-TOP CORPORATION 0:50:ec OLICOM A/S 0:50:ed ANDA NETWORKS 0:50:ee TEK DIGITEL CORPORATION 0:50:ef SPE Systemhaus GmbH 0:50:f CISCO SYSTEMS, INC. 0:50:f0 CISCO SYSTEMS, INC. 0:50:f1 LIBIT SIGNAL PROCESSING, LTD. 0:50:f2 MICROSOFT CORP. 0:50:f3 GLOBAL NET INFORMATION CO., Ltd. 0:50:f4 SIGMATEK GMBH & CO. KG 0:50:f6 PAN-INTERNATIONAL INDUSTRIAL CORP. 0:50:f7 VENTURE MANUFACTURING (SINGAPORE) LTD. 0:50:f8 ENTREGA TECHNOLOGIES, INC. 0:50:f9 SENSORMATIC ACD 0:50:fa OXTEL, LTD. 0:50:fb VSK ELECTRONICS 0:50:fc EDIMAX TECHNOLOGY CO., LTD. 0:50:fd VISIONCOMM CO., LTD. 0:50:fe PCTVnet ASA 0:50:ff HAKKO ELECTRONICS CO., LTD. 0:5:0 Cisco Systems, Inc. 0:5:1 Cisco Systems, Inc. 0:5:10 Infinite Shanghai Communication Terminals Ltd. 0:5:11 Complementary Technologies Ltd 0:5:12 MeshNetworks, Inc. 0:5:13 VTLinx Multimedia Systems, Inc. 0:5:14 KDT Systems Co., Ltd. 0:5:15 Nuark Co., Ltd. 0:5:16 SMART Modular Technologies 0:5:17 Shellcomm, Inc. 0:5:18 Jupiters Technology 0:5:19 Siemens Building Technologies AG, 0:5:1a 3Com Europe Ltd. 0:5:1b Magic Control Technology Corporation 0:5:1c Xnet Technology Corp. 0:5:1d Airocon, Inc. 0:5:1e Brocade Communications Systems, Inc. 0:5:1f Taijin Media Co., Ltd. 0:5:2 APPLE COMPUTER 0:5:20 Smartronix, Inc. 0:5:21 Control Microsystems 0:5:22 LEA*D Corporation, Inc. 0:5:23 AVL List GmbH 0:5:24 BTL System (HK) Limited 0:5:25 Puretek Industrial Co., Ltd. 0:5:26 IPAS GmbH 0:5:27 SJ Tek Co. Ltd 0:5:28 New Focus, Inc. 0:5:29 Shanghai Broadan Communication Technology Co., Ltd 0:5:2a Ikegami Tsushinki Co., Ltd. 0:5:2b HORIBA, Ltd. 0:5:2c Supreme Magic Corporation 0:5:2d Zoltrix International Limited 0:5:2e Cinta Networks 0:5:2f Leviton Voice and Data 0:5:3 ICONAG 0:5:30 Andiamo Systems, Inc. 0:5:31 Cisco Systems, Inc. 0:5:32 Cisco Systems, Inc. 0:5:33 Sanera Systems, Inc. 0:5:34 Northstar Engineering Ltd. 0:5:35 Chip PC Ltd. 0:5:36 Danam Communications, Inc. 0:5:37 Nets Technology Co., Ltd. 0:5:38 Merilus, Inc. 0:5:39 A Brand New World in Sweden AB 0:5:3a Willowglen Services Pte Ltd 0:5:3b Harbour Networks Ltd., Co. Beijing 0:5:3c Xircom 0:5:3d Agere Systems 0:5:3e KID Systeme GmbH 0:5:3f VisionTek, Inc. 0:5:4 Naray Information & Communication Enterprise 0:5:40 FAST Corporation 0:5:41 Advanced Systems Co., Ltd. 0:5:42 Otari, Inc. 0:5:43 IQ Wireless GmbH 0:5:44 Valley Technologies, Inc. 0:5:45 Internet Photonics 0:5:46 KDDI Network & Solultions Inc. 0:5:47 Starent Networks 0:5:48 Disco Corporation 0:5:49 Salira Optical Network Systems 0:5:4a Ario Data Networks, Inc. 0:5:4b Micro Innovation AG 0:5:4c RF Innovations Pty Ltd 0:5:4d Brans Technologies, Inc. 0:5:4e Philips Components 0:5:4f PRIVATE 0:5:5 Systems Integration Solutions, Inc. 0:5:50 Vcomms Limited 0:5:51 F & S Elektronik Systeme GmbH 0:5:52 Xycotec Computer GmbH 0:5:53 DVC Company, Inc. 0:5:54 Rangestar Wireless 0:5:55 Japan Cash Machine Co., Ltd. 0:5:56 360 Systems 0:5:57 Agile TV Corporation 0:5:58 Synchronous, Inc. 0:5:59 Intracom S.A. 0:5:5a Power Dsine Ltd. 0:5:5b Charles Industries, Ltd. 0:5:5c Kowa Company, Ltd. 0:5:5d D-Link Systems, Inc. 0:5:5e Cisco Systems, Inc. 0:5:5f Cisco Systems, Inc. 0:5:6 Reddo Networks AB 0:5:60 LEADER COMM.CO., LTD 0:5:61 nac Image Technology, Inc. 0:5:62 Digital View Limited 0:5:63 J-Works, Inc. 0:5:64 Tsinghua Bitway Co., Ltd. 0:5:65 Tailyn Communication Company Ltd. 0:5:66 Secui.com Corporation 0:5:67 Etymonic Design, Inc. 0:5:68 Piltofish Networks AB 0:5:69 VMWARE, Inc. 0:5:6a Heuft Systemtechnik GmbH 0:5:6b C.P. Technology Co., Ltd. 0:5:6c Hung Chang Co., Ltd. 0:5:6d Pacific Corporation 0:5:6e National Enhance Technology, Inc. 0:5:6f Innomedia Technologies Pvt. Ltd. 0:5:7 Fine Appliance Corp. 0:5:70 Baydel Ltd. 0:5:71 Seiwa Electronics Co. 0:5:72 Deonet Co., Ltd. 0:5:73 Cisco Systems, Inc. 0:5:74 Cisco Systems, Inc. 0:5:75 CDS-Electronics BV 0:5:76 NSM Technology Ltd. 0:5:77 SM Information & Communication 0:5:78 PRIVATE 0:5:79 Universal Control Solution Corp. 0:5:7a Hatteras Networks 0:5:7b Chung Nam Electronic Co., Ltd. 0:5:7c RCO Security AB 0:5:7d Sun Communications, Inc. 0:5:7e Eckelmann Steuerungstechnik GmbH 0:5:7f Acqis Technology 0:5:8 Inetcam, Inc. 0:5:80 Fibrolan Ltd. 0:5:81 Snell & Wilcox Ltd. 0:5:82 ClearCube Technology 0:5:83 ImageCom Limited 0:5:84 AbsoluteValue Systems, Inc. 0:5:85 Juniper Networks, Inc. 0:5:86 Lucent Technologies 0:5:87 Locus, Incorporated 0:5:88 Sensoria Corp. 0:5:89 National Datacomputer 0:5:8a Netcom Co., Ltd. 0:5:8b IPmental, Inc. 0:5:8c Opentech Inc. 0:5:8d Lynx Photonic Networks, Inc. 0:5:8e Flextronics International GmbH & Co. Nfg. KG 0:5:8f CLCsoft co. 0:5:9 AVOC Nishimura Ltd. 0:5:90 Swissvoice Ltd. 0:5:91 Active Silicon Ltd. 0:5:92 Pultek Corp. 0:5:93 Grammar Engine Inc. 0:5:94 IXXAT Automation GmbH 0:5:95 Alesis Corporation 0:5:96 Genotech Co., Ltd. 0:5:97 Eagle Traffic Control Systems 0:5:98 CRONOS S.r.l. 0:5:99 DRS Test and Energy Management or DRS-TEM 0:5:9a Cisco Systems, Inc. 0:5:9b Cisco Systems, Inc. 0:5:9c Kleinknecht GmbH, Ing. Buero 0:5:9d Daniel Computing Systems, Inc. 0:5:9e Zinwell Corporation 0:5:9f Yotta Networks, Inc. 0:5:a ICS Spa 0:5:a0 MOBILINE Kft. 0:5:a1 Zenocom 0:5:a2 CELOX Networks 0:5:a3 QEI, Inc. 0:5:a4 Lucid Voice Ltd. 0:5:a5 KOTT 0:5:a6 Extron Electronics 0:5:a7 Hyperchip, Inc. 0:5:a8 WYLE ELECTRONICS 0:5:a9 Princeton Networks, Inc. 0:5:aa Moore Industries International Inc. 0:5:ab Cyber Fone, Inc. 0:5:ac Northern Digital, Inc. 0:5:ad Topspin Communications, Inc. 0:5:ae Mediaport USA 0:5:af InnoScan Computing A/S 0:5:b SICOM Systems, Inc. 0:5:b0 Korea Computer Technology Co., Ltd. 0:5:b1 ASB Technology BV 0:5:b2 Medison Co., Ltd. 0:5:b3 Asahi-Engineering Co., Ltd. 0:5:b4 Aceex Corporation 0:5:b5 Broadcom Technologies 0:5:b6 INSYS Microelectronics GmbH 0:5:b7 Arbor Technology Corp. 0:5:b8 Electronic Design Associates, Inc. 0:5:b9 Airvana, Inc. 0:5:ba Area Netwoeks, Inc. 0:5:bb Myspace AB 0:5:bc Resorsys Ltd. 0:5:bd ROAX BV 0:5:be Kongsberg Seatex AS 0:5:bf JustEzy Technology, Inc. 0:5:c Network Photonics, Inc. 0:5:c0 Digital Network Alacarte Co., Ltd. 0:5:c1 A-Kyung Motion, Inc. 0:5:c2 Soronti, Inc. 0:5:c3 Pacific Instruments, Inc. 0:5:c4 Telect, Inc. 0:5:c5 Flaga HF 0:5:c6 Triz Communications 0:5:c7 I/F-COM A/S 0:5:c8 VERYTECH 0:5:c9 LG Innotek 0:5:ca Hitron Technology, Inc. 0:5:cb ROIS Technologies, Inc. 0:5:cc Sumtel Communications, Inc. 0:5:cd Denon, Ltd. 0:5:ce Prolink Microsystems Corporation 0:5:cf Thunder River Technologies, Inc. 0:5:d Midstream Technologies, Inc. 0:5:d0 Solinet Systems 0:5:d1 Metavector Technologies 0:5:d2 DAP Technologies 0:5:d3 eProduction Solutions, Inc. 0:5:d4 FutureSmart Networks, Inc. 0:5:d5 Speedcom Wireless 0:5:d6 Titan Wireless 0:5:d7 Vista Imaging, Inc. 0:5:d8 Arescom, Inc. 0:5:d9 Techno Valley, Inc. 0:5:da Apex Automationstechnik 0:5:db Nentec GmbH 0:5:dc Cisco Systems, Inc. 0:5:dd Cisco Systems, Inc. 0:5:de Gi Fone Korea, Inc. 0:5:df Electronic Innovation, Inc. 0:5:e 3ware, Inc. 0:5:e0 Empirix Corp. 0:5:e1 Trellis Photonics, Ltd. 0:5:e2 Creativ Network Technologies 0:5:e3 LightSand Communications, Inc. 0:5:e4 Red Lion Controls L.P. 0:5:e5 Renishaw PLC 0:5:e6 Egenera, Inc. 0:5:e7 Netrake Corp. 0:5:e8 TurboWave, Inc. 0:5:e9 Unicess Network, Inc. 0:5:ea Rednix 0:5:eb Blue Ridge Networks, Inc. 0:5:ec Mosaic Systems Inc. 0:5:ed Technikum Joanneum GmbH 0:5:ee BEWATOR Group 0:5:ef ADOIR Digital Technology 0:5:f Tanaka S/S Ltd. 0:5:f0 SATEC 0:5:f1 Vrcom, Inc. 0:5:f2 Power R, Inc. 0:5:f3 Weboyn 0:5:f4 System Base Co., Ltd. 0:5:f5 OYO Geospace Corp. 0:5:f6 Young Chang Co. Ltd. 0:5:f7 Analog Devices, Inc. 0:5:f8 Real Time Access, Inc. 0:5:f9 TOA Corporation 0:5:fa IPOptical, Inc. 0:5:fb ShareGate, Inc. 0:5:fc Schenck Pegasus Corp. 0:5:fd PacketLight Networks Ltd. 0:5:fe Traficon N.V. 0:5:ff SNS Solutions, Inc. 0:60:0 XYCOM INC. 0:60:1 InnoSys, Inc. 0:60:10 NETWORK MACHINES, INC. 0:60:11 CRYSTAL SEMICONDUCTOR CORP. 0:60:12 POWER COMPUTING CORPORATION 0:60:13 NETSTAL MASCHINEN AG 0:60:14 EDEC CO., LTD. 0:60:15 NET2NET CORPORATION 0:60:16 CLARIION 0:60:17 TOKIMEC INC. 0:60:18 STELLAR ONE CORPORATION 0:60:19 Roche Diagnostics 0:60:1a KEITHLEY INSTRUMENTS 0:60:1b MESA ELECTRONICS 0:60:1c TELXON CORPORATION 0:60:1d LUCENT TECHNOLOGIES 0:60:1e SOFTLAB, INC. 0:60:1f STALLION TECHNOLOGIES 0:60:2 SCREEN SUBTITLING SYSTEMS, LTD 0:60:20 PIVOTAL NETWORKING, INC. 0:60:21 DSC CORPORATION 0:60:22 VICOM SYSTEMS, INC. 0:60:23 PERICOM SEMICONDUCTOR CORP. 0:60:24 GRADIENT TECHNOLOGIES, INC. 0:60:25 ACTIVE IMAGING PLC 0:60:26 VIKING COMPONENTS, INC. 0:60:27 Superior Modular Products 0:60:28 MACROVISION CORPORATION 0:60:29 CARY PERIPHERALS INC. 0:60:2a SYMICRON COMPUTER COMMUNICATIONS, LTD. 0:60:2b PEAK AUDIO 0:60:2c LINX Data Terminals, Inc. 0:60:2d ALERTON TECHNOLOGIES, INC. 0:60:2e CYCLADES CORPORATION 0:60:2f CISCO SYSTEMS, INC. 0:60:3 TERAOKA WEIGH SYSTEM PTE, LTD. 0:60:30 VILLAGE TRONIC ENTWICKLUNG 0:60:31 HRK SYSTEMS 0:60:32 I-CUBE, INC. 0:60:33 ACUITY IMAGING, INC. 0:60:34 ROBERT BOSCH GmbH 0:60:35 DALLAS SEMICONDUCTOR, INC. 0:60:36 AUSTRIAN RESEARCH CENTER SEIBERSDORF 0:60:37 PHILIPS SEMICONDUCTORS 0:60:38 Nortel Networks 0:60:39 SanCom Technology, Inc. 0:60:3a QUICK CONTROLS LTD. 0:60:3b AMTEC spa 0:60:3c HAGIWARA SYS-COM CO., LTD. 0:60:3d 3CX 0:60:3e CISCO SYSTEMS, INC. 0:60:3f PATAPSCO DESIGNS 0:60:4 COMPUTADORES MODULARES SA 0:60:40 NETRO CORP. 0:60:41 Yokogawa Electric Corporation 0:60:42 TKS (USA), INC. 0:60:43 ComSoft Systems, Inc. 0:60:44 LITTON/POLY-SCIENTIFIC 0:60:45 PATHLIGHT TECHNOLOGIES 0:60:46 VMETRO, INC. 0:60:47 CISCO SYSTEMS, INC. 0:60:48 EMC CORPORATION 0:60:49 VINA TECHNOLOGIES 0:60:4a SAIC IDEAS GROUP 0:60:4b Safe-com GmbH & Co. KG 0:60:4c SAGEM SA 0:60:4d MMC NETWORKS, INC. 0:60:4e CYCLE COMPUTER CORPORATION, INC. 0:60:4f SUZUKI MFG. CO., LTD. 0:60:5 FEEDBACK DATA LTD. 0:60:50 INTERNIX INC. 0:60:51 QUALITY SEMICONDUCTOR 0:60:52 PERIPHERALS ENTERPRISE CO., Ltd. 0:60:53 TOYODA MACHINE WORKS, LTD. 0:60:54 CONTROLWARE GMBH 0:60:55 CORNELL UNIVERSITY 0:60:56 NETWORK TOOLS, INC. 0:60:57 MURATA MANUFACTURING CO., LTD. 0:60:58 COPPER MOUNTAIN COMMUNICATIONS, INC. 0:60:59 TECHNICAL COMMUNICATIONS CORP. 0:60:5a CELCORE, INC. 0:60:5b IntraServer Technology, Inc. 0:60:5c CISCO SYSTEMS, INC. 0:60:5d SCANIVALVE CORP. 0:60:5e LIBERTY TECHNOLOGY NETWORKING 0:60:5f NIPPON UNISOFT CORPORATION 0:60:6 SOTEC CO., LTD 0:60:60 DAWNING TECHNOLOGIES, INC. 0:60:61 WHISTLE COMMUNICATIONS CORP. 0:60:62 TELESYNC, INC. 0:60:63 PSION DACOM PLC. 0:60:64 NETCOMM LIMITED 0:60:65 BERNECKER & RAINER INDUSTRIE-ELEKTRONIC GmbH 0:60:66 LACROIX TECHNOLGIE 0:60:67 ACER NETXUS INC. 0:60:68 EICON TECHNOLOGY CORPORATION 0:60:69 BROCADE COMMUNICATIONS SYSTEMS, Inc. 0:60:6a MITSUBISHI WIRELESS COMMUNICATIONS. INC. 0:60:6b Synclayer Inc. 0:60:6c ARESCOM 0:60:6d DIGITAL EQUIPMENT CORP. 0:60:6e DAVICOM SEMICONDUCTOR, INC. 0:60:6f CLARION CORPORATION OF AMERICA 0:60:7 ACRES GAMING, INC. 0:60:70 CISCO SYSTEMS, INC. 0:60:71 MIDAS LAB, INC. 0:60:72 VXL INSTRUMENTS, LIMITED 0:60:73 REDCREEK COMMUNICATIONS, INC. 0:60:74 QSC AUDIO PRODUCTS 0:60:75 PENTEK, INC. 0:60:76 SCHLUMBERGER TECHNOLOGIES RETAIL PETROLEUM SYSTEMS 0:60:77 PRISA NETWORKS 0:60:78 POWER MEASUREMENT LTD. 0:60:79 Mainstream Data, Inc. 0:60:7a DVS GmbH 0:60:7b FORE SYSTEMS, INC. 0:60:7c WaveAccess, Ltd. 0:60:7d SENTIENT NETWORKS INC. 0:60:7e GIGALABS, INC. 0:60:7f AURORA TECHNOLOGIES, INC. 0:60:8 3COM CORPORATION 0:60:80 MICROTRONIX DATACOM LTD. 0:60:81 TV/COM INTERNATIONAL 0:60:82 NOVALINK TECHNOLOGIES, INC. 0:60:83 CISCO SYSTEMS, INC. 0:60:84 DIGITAL VIDEO 0:60:85 Storage Concepts 0:60:86 LOGIC REPLACEMENT TECH. LTD. 0:60:87 KANSAI ELECTRIC CO., LTD. 0:60:88 WHITE MOUNTAIN DSP, INC. 0:60:89 XATA 0:60:8a CITADEL COMPUTER 0:60:8b ConferTech International 0:60:8c 3COM CORPORATION 0:60:8d UNIPULSE CORP. 0:60:8e HE ELECTRONICS, TECHNOLOGIE & SYSTEMTECHNIK GmbH 0:60:8f TEKRAM TECHNOLOGY CO., LTD. 0:60:9 CISCO SYSTEMS, INC. 0:60:90 ABLE COMMUNICATIONS, INC. 0:60:91 FIRST PACIFIC NETWORKS, INC. 0:60:92 MICRO/SYS, INC. 0:60:93 VARIAN 0:60:94 IBM CORP. 0:60:95 ACCU-TIME SYSTEMS, INC. 0:60:96 T.S. MICROTECH INC. 0:60:97 3COM CORPORATION 0:60:98 HT COMMUNICATIONS 0:60:99 SBE, Inc. 0:60:9a NJK TECHNO CO. 0:60:9b ASTRO-MED, INC. 0:60:9c Perkin-Elmer Incorporated 0:60:9d PMI FOOD EQUIPMENT GROUP 0:60:9e ASC X3 - INFORMATION TECHNOLOGY STANDARDS SECRETARIATS 0:60:9f PHAST CORPORATION 0:60:a SORD COMPUTER CORPORATION 0:60:a0 SWITCHED NETWORK TECHNOLOGIES, INC. 0:60:a1 VPNet, Inc. 0:60:a2 NIHON UNISYS LIMITED CO. 0:60:a3 CONTINUUM TECHNOLOGY CORP. 0:60:a4 GRINAKER SYSTEM TECHNOLOGIES 0:60:a5 PERFORMANCE TELECOM CORP. 0:60:a6 PARTICLE MEASURING SYSTEMS 0:60:a7 MICROSENS GmbH & CO. KG 0:60:a8 TIDOMAT AB 0:60:a9 GESYTEC MbH 0:60:aa INTELLIGENT DEVICES INC. (IDI) 0:60:ab LARSCOM INCORPORATED 0:60:ac RESILIENCE CORPORATION 0:60:ad MegaChips Corporation 0:60:ae TRIO INFORMATION SYSTEMS AB 0:60:af PACIFIC MICRO DATA, INC. 0:60:b LOGWARE GmbH 0:60:b0 HEWLETT-PACKARD CO. 0:60:b1 INPUT/OUTPUT, INC. 0:60:b2 PROCESS CONTROL CORP. 0:60:b3 Z-COM, INC. 0:60:b4 GLENAYRE R&D INC. 0:60:b5 KEBA GmbH 0:60:b6 LAND COMPUTER CO., LTD. 0:60:b7 CHANNELMATIC, INC. 0:60:b8 CORELIS INC. 0:60:b9 NITSUKO CORPORATION 0:60:ba SAHARA NETWORKS, INC. 0:60:bb CABLETRON - NETLINK, INC. 0:60:bc KeunYoung Electronics & Communication Co., Ltd. 0:60:bd HUBBELL-PULSECOM 0:60:be WEBTRONICS 0:60:bf MACRAIGOR SYSTEMS, INC. 0:60:c APPLIED DATA SYSTEMS, INC. 0:60:c0 NERA AS 0:60:c1 WaveSpan Corporation 0:60:c2 MPL AG 0:60:c3 NETVISION CORPORATION 0:60:c4 SOLITON SYSTEMS K.K. 0:60:c5 ANCOT CORP. 0:60:c6 DCS AG 0:60:c7 AMATI COMMUNICATIONS CORP. 0:60:c8 KUKA WELDING SYSTEMS & ROBOTS 0:60:c9 ControlNet, Inc. 0:60:ca HARMONIC SYSTEMS INCORPORATED 0:60:cb HITACHI ZOSEN CORPORATION 0:60:cc EMTRAK, INCORPORATED 0:60:cd VideoServer, Inc. 0:60:ce ACCLAIM COMMUNICATIONS 0:60:cf ALTEON NETWORKS, INC. 0:60:d Digital Logic GmbH 0:60:d0 SNMP RESEARCH INCORPORATED 0:60:d1 CASCADE COMMUNICATIONS 0:60:d2 LUCENT TECHNOLOGIES TAIWAN TELECOMMUNICATIONS CO., LTD. 0:60:d3 AT&T 0:60:d4 ELDAT COMMUNICATION LTD. 0:60:d5 MIYACHI TECHNOS CORP. 0:60:d6 NovAtel Wireless Technologies Ltd. 0:60:d7 ECOLE POLYTECHNIQUE FEDERALE DE LAUSANNE (EPFL) 0:60:d8 ELMIC SYSTEMS, INC. 0:60:d9 TRANSYS NETWORKS INC. 0:60:da JBM ELECTRONICS CO. 0:60:db NTP ELEKTRONIK A/S 0:60:dc Toyo Network Systems Co, Ltd. 0:60:dd MYRICOM, INC. 0:60:de KAYSER-THREDE GmbH 0:60:df CNT Corporation 0:60:e WAVENET INTERNATIONAL, INC. 0:60:e0 AXIOM TECHNOLOGY CO., LTD. 0:60:e1 ORCKIT COMMUNICATIONS LTD. 0:60:e2 QUEST ENGINEERING & DEVELOPMENT 0:60:e3 ARBIN INSTRUMENTS 0:60:e4 COMPUSERVE, INC. 0:60:e5 FUJI AUTOMATION CO., LTD. 0:60:e6 SHOMITI SYSTEMS INCORPORATED 0:60:e7 RANDATA 0:60:e8 HITACHI COMPUTER PRODUCTS (AMERICA), INC. 0:60:e9 ATOP TECHNOLOGIES, INC. 0:60:ea StreamLogic 0:60:eb FOURTHTRACK SYSTEMS 0:60:ec HERMARY OPTO ELECTRONICS INC. 0:60:ed RICARDO TEST AUTOMATION LTD. 0:60:ee APOLLO 0:60:ef FLYTECH TECHNOLOGY CO., LTD. 0:60:f WESTELL, INC. 0:60:f0 JOHNSON & JOHNSON MEDICAL, INC 0:60:f1 EXP COMPUTER, INC. 0:60:f2 LASERGRAPHICS, INC. 0:60:f3 Performance Analysis Broadband, Spirent plc 0:60:f4 ADVANCED COMPUTER SOLUTIONS, Inc. 0:60:f5 ICON WEST, INC. 0:60:f6 NEXTEST COMMUNICATIONS PRODUCTS, INC. 0:60:f7 DATAFUSION SYSTEMS 0:60:f8 Loran International Technologies Inc. 0:60:f9 DIAMOND LANE COMMUNICATIONS 0:60:fa EDUCATIONAL TECHNOLOGY RESOURCES, INC. 0:60:fb PACKETEER, INC. 0:60:fc CONSERVATION THROUGH INNOVATION LTD. 0:60:fd NetICs, Inc. 0:60:fe LYNX SYSTEM DEVELOPERS, INC. 0:60:ff QuVis, Inc. 0:6:0 Toshiba Teli Corporation 0:6:1 Otanikeiki Co., Ltd. 0:6:10 Abeona Networks Inc 0:6:11 Zeus Wireless, Inc. 0:6:12 Accusys, Inc. 0:6:13 Kawasaki Microelectronics Incorporated 0:6:14 Prism Holdings 0:6:15 Kimoto Electric Co., Ltd. 0:6:16 Tel Net Co., Ltd. 0:6:17 Redswitch Inc. 0:6:18 DigiPower Manufacturing Inc. 0:6:19 Connection Technology Systems 0:6:1a Zetari Inc. 0:6:1b Portable Systems, IBM Japan Co, Ltd 0:6:1c Hoshino Metal Industries, Ltd. 0:6:1d MIP Telecom, Inc. 0:6:1e Maxan Systems 0:6:1f Vision Components GmbH 0:6:2 Cirkitech Electronics Co. 0:6:20 Serial System Ltd. 0:6:21 Hinox, Co., Ltd. 0:6:22 Chung Fu Chen Yeh Enterprise Corp. 0:6:23 MGE UPS Systems France 0:6:24 Gentner Communications Corp. 0:6:25 The Linksys Group, Inc. 0:6:26 MWE GmbH 0:6:27 Uniwide Technologies, Inc. 0:6:28 Cisco Systems, Inc. 0:6:29 IBM CORPORATION 0:6:2a Cisco Systems, Inc. 0:6:2b INTRASERVER TECHNOLOGY 0:6:2c Network Robots, Inc. 0:6:2d TouchStar Technologies, L.L.C. 0:6:2e Aristos Logic Corp. 0:6:2f Pivotech Systems Inc. 0:6:3 Baker Hughes Inc. 0:6:30 Adtranz Sweden 0:6:31 Optical Solutions, Inc. 0:6:32 Mesco Engineering GmbH 0:6:33 Smiths Heimann Biometric Systems 0:6:34 GTE Airfone Inc. 0:6:35 PacketAir Networks, Inc. 0:6:36 Jedai Broadband Networks 0:6:37 Toptrend-Meta Information (ShenZhen) Inc. 0:6:38 Sungjin C&C Co., Ltd. 0:6:39 Newtec 0:6:3a Dura Micro, Inc. 0:6:3b Arcturus Networks, Inc. 0:6:3c NMI Electronics Ltd 0:6:3d Microwave Data Systems Inc. 0:6:3e Opthos Inc. 0:6:3f Everex Communications Inc. 0:6:4 @Track Communications, Inc. 0:6:40 White Rock Networks 0:6:41 ITCN 0:6:42 Genetel Systems Inc. 0:6:43 SONO Computer Co., Ltd. 0:6:44 NEIX Inc. 0:6:45 Meisei Electric Co. Ltd. 0:6:46 ShenZhen XunBao Network Technology Co Ltd 0:6:47 Etrali S.A. 0:6:48 Seedsware, Inc. 0:6:49 Quante 0:6:4a Honeywell Co., Ltd. (KOREA) 0:6:4b Alexon Co., Ltd. 0:6:4c Invicta Networks, Inc. 0:6:4d Sencore 0:6:4e Broad Net Technology Inc. 0:6:4f PRO-NETS Technology Corporation 0:6:5 Inncom International, Inc. 0:6:50 Tiburon Networks, Inc. 0:6:51 Aspen Networks Inc. 0:6:52 Cisco Systems, Inc. 0:6:53 Cisco Systems, Inc. 0:6:54 Maxxio Technologies 0:6:55 Yipee, Inc. 0:6:56 Tactel AB 0:6:57 Market Central, Inc. 0:6:58 Helmut Fischer GmbH & Co. KG 0:6:59 EAL (Apeldoorn) B.V. 0:6:5a Strix Systems 0:6:5b Dell Computer Corp. 0:6:5c Malachite Technologies, Inc. 0:6:5d Heidelberg Web Systems 0:6:5e Photuris, Inc. 0:6:5f ECI Telecom - NGTS Ltd. 0:6:6 RapidWAN, Inc. 0:6:60 NADEX Co., Ltd. 0:6:61 NIA Home Technologies Corp. 0:6:62 MBM Technology Ltd. 0:6:63 Human Technology Co., Ltd. 0:6:64 Fostex Corporation 0:6:65 Sunny Giken, Inc. 0:6:66 Roving Networks 0:6:67 Tripp Lite 0:6:68 Vicon Industries Inc. 0:6:69 Datasound Laboratories Ltd 0:6:6a InfiniCon Systems, Inc. 0:6:6b Sysmex Corporation 0:6:6c Robinson Corporation 0:6:6d Compuprint S.P.A. 0:6:6e Delta Electronics, Inc. 0:6:6f Korea Data Systems 0:6:7 Omni Directional Control Technology Inc. 0:6:70 Upponetti Oy 0:6:71 Softing AG 0:6:72 Netezza 0:6:73 Optelecom-nkf 0:6:74 Spectrum Control, Inc. 0:6:75 Banderacom, Inc. 0:6:76 Novra Technologies Inc. 0:6:77 SICK AG 0:6:78 Marantz Japan, Inc. 0:6:79 Konami Corporation 0:6:7a JMP Systems 0:6:7b Toplink C&C Corporation 0:6:7c CISCO SYSTEMS, INC. 0:6:7d Takasago Ltd. 0:6:7e WinCom Systems, Inc. 0:6:7f Rearden Steel Technologies 0:6:8 At-Sky SAS 0:6:80 Card Access, Inc. 0:6:81 Goepel Electronic GmbH 0:6:82 Convedia 0:6:83 Bravara Communications, Inc. 0:6:84 Biacore AB 0:6:85 NetNearU Corporation 0:6:86 ZARDCOM Co., Ltd. 0:6:87 Omnitron Systems Technology, Inc. 0:6:88 Telways Communication Co., Ltd. 0:6:89 yLez Technologies Pte Ltd 0:6:8a NeuronNet Co. Ltd. R&D Center 0:6:8b AirRunner Technologies, Inc. 0:6:8c 3Com Corporation 0:6:8d SEPATON, Inc. 0:6:8e HID Corporation 0:6:8f Telemonitor, Inc. 0:6:9 Crossport Systems 0:6:90 Euracom Communication GmbH 0:6:91 PT Inovacao 0:6:92 Intruvert Networks, Inc. 0:6:93 Flexus Computer Technology, Inc. 0:6:94 Mobillian Corporation 0:6:95 Ensure Technologies, Inc. 0:6:96 Advent Networks 0:6:97 R & D Center 0:6:98 egnite Software GmbH 0:6:99 Vida Design Co. 0:6:9a e & Tel 0:6:9b AVT Audio Video Technologies GmbH 0:6:9c Transmode Systems AB 0:6:9d Petards Mobile Intelligence 0:6:9e UNIQA, Inc. 0:6:9f Kuokoa Networks 0:6:a Blue2space 0:6:a0 Mx Imaging 0:6:a1 Celsian Technologies, Inc. 0:6:a2 Microtune, Inc. 0:6:a3 Bitran Corporation 0:6:a4 INNOWELL Corp. 0:6:a5 PINON Corp. 0:6:a6 Artistic Licence (UK) Ltd 0:6:a7 Primarion 0:6:a8 KC Technology, Inc. 0:6:a9 Universal Instruments Corp. 0:6:aa Miltope Corporation 0:6:ab W-Link Systems, Inc. 0:6:ac Intersoft Co. 0:6:ad KB Electronics Ltd. 0:6:ae Himachal Futuristic Communications Ltd 0:6:af PRIVATE 0:6:b Paceline Systems Corporation 0:6:b0 Comtech EF Data Corp. 0:6:b1 Sonicwall 0:6:b2 Linxtek Co. 0:6:b3 Diagraph Corporation 0:6:b4 Vorne Industries, Inc. 0:6:b5 Luminent, Inc. 0:6:b6 Nir-Or Israel Ltd. 0:6:b7 TELEM GmbH 0:6:b8 Bandspeed Pty Ltd 0:6:b9 A5TEK Corp. 0:6:ba Westwave Communications 0:6:bb ATI Technologies Inc. 0:6:bc Macrolink, Inc. 0:6:bd BNTECHNOLOGY Co., Ltd. 0:6:be Baumer Optronic GmbH 0:6:bf Accella Technologies Co., Ltd. 0:6:c Melco Industries, Inc. 0:6:c0 United Internetworks, Inc. 0:6:c1 CISCO SYSTEMS, INC. 0:6:c2 Smartmatic Corporation 0:6:c3 Schindler Elevators Ltd. 0:6:c4 Piolink Inc. 0:6:c5 INNOVI Technologies Limited 0:6:c6 lesswire AG 0:6:c7 RFNET Technologies Pte Ltd (S) 0:6:c8 Sumitomo Metal Micro Devices, Inc. 0:6:c9 Technical Marketing Research, Inc. 0:6:ca American Computer & Digital Components, Inc. (ACDC) 0:6:cb Jotron Electronics A/S 0:6:cc JMI Electronics Co., Ltd. 0:6:cd Creo IL. Ltd. 0:6:ce DATENO 0:6:cf Thales Avionics In-Flight Systems, LLC 0:6:d Wave7 Optics 0:6:d0 Elgar Electronics Corp. 0:6:d1 Tahoe Networks, Inc. 0:6:d2 Tundra Semiconductor Corp. 0:6:d3 Alpha Telecom, Inc. U.S.A. 0:6:d4 Interactive Objects, Inc. 0:6:d5 Diamond Systems Corp. 0:6:d6 Cisco Systems, Inc. 0:6:d7 Cisco Systems, Inc. 0:6:d8 Maple Optical Systems 0:6:d9 IPM-Net S.p.A. 0:6:da ITRAN Communications Ltd. 0:6:db ICHIPS Co., Ltd. 0:6:dc Syabas Technology (Amquest) 0:6:dd AT & T Laboratories - Cambridge Ltd 0:6:de Flash Technology 0:6:df AIDONIC Corporation 0:6:e IGYS Systems, Inc. 0:6:e0 MAT Co., Ltd. 0:6:e1 Techno Trade s.a 0:6:e2 Ceemax Technology Co., Ltd. 0:6:e3 Quantitative Imaging Corporation 0:6:e4 Citel Technologies Ltd. 0:6:e5 Fujian Newland Computer Ltd. Co. 0:6:e6 DongYang Telecom Co., Ltd. 0:6:e7 Bit Blitz Communications Inc. 0:6:e8 Optical Network Testing, Inc. 0:6:e9 Intime Corp. 0:6:ea ELZET80 Mikrocomputer GmbH&Co. KG 0:6:eb Global Data 0:6:ec M/A COM Private Radio System Inc. 0:6:ed Inara Networks 0:6:ee Shenyang Neu-era Information & Technology Stock Co., Ltd 0:6:ef Maxxan Systems, Inc. 0:6:f Narad Networks Inc 0:6:f0 Digeo, Inc. 0:6:f1 Optillion 0:6:f2 Platys Communications 0:6:f3 AcceLight Networks 0:6:f4 Prime Electronics & Satellitics Inc. 0:6:f8 CPU Technology, Inc. 0:6:f9 Mitsui Zosen Systems Research Inc. 0:6:fa IP SQUARE Co, Ltd. 0:6:fb Hitachi Printing Solutions, Ltd. 0:6:fc Fnet Co., Ltd. 0:6:fd Comjet Information Systems Corp. 0:6:fe Celion Networks, Inc. 0:6:ff Sheba Systems Co., Ltd. 0:70:b0 M/A-COM INC. COMPANIES 0:70:b3 DATA RECALL LTD. 0:7:0 Zettamedia Korea 0:7:1 RACAL-DATACOM 0:7:10 Adax, Inc. 0:7:11 Acterna 0:7:12 JAL Information Technology 0:7:13 IP One, Inc. 0:7:14 Brightcom 0:7:15 General Research of Electronics, Inc. 0:7:16 J & S Marine Ltd. 0:7:17 Wieland Electric GmbH 0:7:18 iCanTek Co., Ltd. 0:7:19 Mobiis Co., Ltd. 0:7:1a Finedigital Inc. 0:7:1b Position Technology Inc. 0:7:1c AT&T Fixed Wireless Services 0:7:1d Satelsa Sistemas Y Aplicaciones De Telecomunicaciones, S.A. 0:7:1e Tri-M Engineering / Nupak Dev. Corp. 0:7:1f European Systems Integration 0:7:2 Varian Medical Systems 0:7:20 Trutzschler GmbH & Co. KG 0:7:21 Formac Elektronik GmbH 0:7:22 Nielsen Media Research 0:7:23 ELCON Systemtechnik GmbH 0:7:24 Telemax Co., Ltd. 0:7:25 Bematech International Corp. 0:7:27 Zi Corporation (HK) Ltd. 0:7:28 Neo Telecom 0:7:29 Kistler Instrumente AG 0:7:2a Innovance Networks 0:7:2b Jung Myung Telecom Co., Ltd. 0:7:2c Fabricom 0:7:2d CNSystems 0:7:2e North Node AB 0:7:2f Intransa, Inc. 0:7:3 CSEE Transport 0:7:30 Hutchison OPTEL Telecom Technology Co., Ltd. 0:7:31 Spiricon, Inc. 0:7:32 AAEON Technology Inc. 0:7:33 DANCONTROL Engineering 0:7:34 ONStor, Inc. 0:7:35 Flarion Technologies, Inc. 0:7:36 Data Video Technologies Co., Ltd. 0:7:37 Soriya Co. Ltd. 0:7:38 Young Technology Co., Ltd. 0:7:39 Motion Media Technology Ltd. 0:7:3a Inventel Systemes 0:7:3b Tenovis GmbH & Co KG 0:7:3c Telecom Design 0:7:3d Nanjing Postel Telecommunications Co., Ltd. 0:7:3e China Great-Wall Computer Shenzhen Co., Ltd. 0:7:3f Woojyun Systec Co., Ltd. 0:7:40 Melco Inc. 0:7:41 Sierra Automated Systems 0:7:42 Current Technologies 0:7:43 Chelsio Communications 0:7:44 Unico, Inc. 0:7:45 Radlan Computer Communications Ltd. 0:7:46 Interlink BT, LLC 0:7:47 Mecalc 0:7:48 The Imaging Source Europe 0:7:49 CENiX Inc. 0:7:4a Carl Valentin GmbH 0:7:4b Daihen Corporation 0:7:4c Beicom Inc. 0:7:4d Zebra Technologies Corp. 0:7:4e Naughty boy co., Ltd. 0:7:4f Cisco Systems, Inc. 0:7:5 Endress & Hauser GmbH & Co 0:7:50 Cisco Systems, Inc. 0:7:51 m.u.t. - GmbH 0:7:52 Rhythm Watch Co., Ltd. 0:7:53 Beijing Qxcomm Technology Co., Ltd. 0:7:54 Xyterra Computing, Inc. 0:7:55 Lafon SA 0:7:56 Juyoung Telecom 0:7:57 Topcall International AG 0:7:58 Dragonwave 0:7:59 Boris Manufacturing Corp. 0:7:5a Air Products and Chemicals, Inc. 0:7:5b Gibson Guitars 0:7:5c Eastman Kodak Company 0:7:5d Celleritas Inc. 0:7:5e Pulsar Technologies, Inc. 0:7:5f VCS Video Communication Systems AG 0:7:6 Sanritz Corporation 0:7:60 TOMIS Information & Telecom Corp. 0:7:61 Logitech SA 0:7:62 Group Sense Limited 0:7:63 Sunniwell Cyber Tech. Co., Ltd. 0:7:64 YoungWoo Telecom Co. Ltd. 0:7:65 Jade Quantum Technologies, Inc. 0:7:66 Chou Chin Industrial Co., Ltd. 0:7:67 Yuxing Electronics Company Limited 0:7:68 Danfoss A/S 0:7:69 Italiana Macchi SpA 0:7:6a NEXTEYE Co., Ltd. 0:7:6b Stralfors AB 0:7:6c Daehanet, Inc. 0:7:6d Flexlight Networks 0:7:6e Sinetica Corporation Limited 0:7:6f Synoptics Limited 0:7:7 Interalia Inc. 0:7:70 Locusnetworks Corporation 0:7:71 Embedded System Corporation 0:7:72 Alcatel Shanghai Bell Co., Ltd. 0:7:73 Ascom Powerline Communications Ltd. 0:7:74 GuangZhou Thinker Technology Co. Ltd. 0:7:75 Valence Semiconductor, Inc. 0:7:76 Federal APD 0:7:77 Motah Ltd. 0:7:78 GERSTEL GmbH & Co. KG 0:7:79 Sungil Telecom Co., Ltd. 0:7:7a Infoware System Co., Ltd. 0:7:7b Millimetrix Broadband Networks 0:7:7c OnTime Networks 0:7:7e Elrest GmbH 0:7:7f J Communications Co., Ltd. 0:7:8 Bitrage Inc. 0:7:80 Bluegiga Technologies OY 0:7:81 Itron Inc. 0:7:82 Nauticus Networks, Inc. 0:7:83 SynCom Network, Inc. 0:7:84 Cisco Systems Inc. 0:7:85 Cisco Systems Inc. 0:7:86 Wireless Networks Inc. 0:7:87 Idea System Co., Ltd. 0:7:88 Clipcomm, Inc. 0:7:89 Eastel Systems Corporation 0:7:8a Mentor Data System Inc. 0:7:8b Wegener Communications, Inc. 0:7:8c Elektronikspecialisten i Borlange AB 0:7:8d NetEngines Ltd. 0:7:8e Garz & Friche GmbH 0:7:8f Emkay Innovative Products 0:7:9 Westerstrand Urfabrik AB 0:7:90 Tri-M Technologies (s) Limited 0:7:91 International Data Communications, Inc. 0:7:92 Suetron Electronic GmbH 0:7:93 Shin Satellite Public Company Limited 0:7:94 Simple Devices, Inc. 0:7:95 Elitegroup Computer System Co. (ECS) 0:7:96 LSI Systems, Inc. 0:7:97 Netpower Co., Ltd. 0:7:98 Selea SRL 0:7:99 Tipping Point Technologies, Inc. 0:7:9a SmartSight Networks Inc. 0:7:9b Aurora Networks 0:7:9c Golden Electronics Technology Co., Ltd. 0:7:9d Musashi Co., Ltd. 0:7:9e Ilinx Co., Ltd. 0:7:9f Action Digital Inc. 0:7:a Unicom Automation Co., Ltd. 0:7:a0 e-Watch Inc. 0:7:a1 VIASYS Healthcare GmbH 0:7:a2 Opteon Corporation 0:7:a3 Ositis Software, Inc. 0:7:a4 GN Netcom Ltd. 0:7:a5 Y.D.K Co. Ltd. 0:7:a6 Home Automation, Inc. 0:7:a7 A-Z Inc. 0:7:a8 Haier Group Technologies Ltd. 0:7:a9 Novasonics 0:7:aa Quantum Data Inc. 0:7:ac Eolring 0:7:ad Pentacon GmbH Foto-und Feinwerktechnik 0:7:ae Britestream Networks, Inc. 0:7:af N-Tron Corp. 0:7:b Octal, SA 0:7:b0 Office Details, Inc. 0:7:b1 Equator Technologies 0:7:b2 Transaccess S.A. 0:7:b3 Cisco Systems Inc. 0:7:b4 Cisco Systems Inc. 0:7:b5 Any One Wireless Ltd. 0:7:b6 Telecom Technology Ltd. 0:7:b7 Samurai Ind. Prods Eletronicos Ltda 0:7:b8 American Predator Corp. 0:7:b9 Ginganet Corporation 0:7:ba UTStarcom, Inc. 0:7:bb Candera Inc. 0:7:bc Identix Inc. 0:7:bd Radionet Ltd. 0:7:be DataLogic SpA 0:7:bf Armillaire Technologies, Inc. 0:7:c SVA-Intrusion.com Co. Ltd. 0:7:c0 NetZerver Inc. 0:7:c1 Overture Networks, Inc. 0:7:c2 Netsys Telecom 0:7:c3 Cirpack 0:7:c4 JEAN Co. Ltd. 0:7:c5 Gcom, Inc. 0:7:c6 VDS Vosskuhler GmbH 0:7:c7 Synectics Systems Limited 0:7:c8 Brain21, Inc. 0:7:c9 Technol Seven Co., Ltd. 0:7:ca Creatix Polymedia Ges Fur Kommunikaitonssysteme 0:7:cb Freebox SA 0:7:cc Kaba Benzing GmbH 0:7:cd NMTEL Co., Ltd. 0:7:ce Cabletime Limited 0:7:cf Anoto AB 0:7:d Cisco Systems Inc. 0:7:d0 Automat Engenharia de Automaoa Ltda. 0:7:d1 Spectrum Signal Processing Inc. 0:7:d2 Logopak Systeme 0:7:d3 Stork Digital Imaging B.V. 0:7:d4 Zhejiang Yutong Network Communication Co Ltd. 0:7:d5 3e Technologies Int;., Inc. 0:7:d6 Commil Ltd. 0:7:d7 Caporis Networks AG 0:7:d8 Hitron Systems Inc. 0:7:d9 Splicecom 0:7:da Neuro Telecom Co., Ltd. 0:7:db Kirana Networks, Inc. 0:7:dc Atek Co, Ltd. 0:7:dd Cradle Technologies 0:7:de eCopilt AB 0:7:df Vbrick Systems Inc. 0:7:e Cisco Systems Inc. 0:7:e0 Palm Inc. 0:7:e1 WIS Communications Co. Ltd. 0:7:e2 Bitworks, Inc. 0:7:e3 Navcom Technology, Inc. 0:7:e4 SoftRadio Co., Ltd. 0:7:e5 Coup Corporation 0:7:e6 edgeflow Canada Inc. 0:7:e7 FreeWave Technologies 0:7:e8 St. Bernard Software 0:7:e9 Intel Corporation 0:7:ea Massana, Inc. 0:7:eb Cisco Systems Inc. 0:7:ec Cisco Systems Inc. 0:7:ed Altera Corporation 0:7:ee telco Informationssysteme GmbH 0:7:ef Lockheed Martin Tactical Systems 0:7:f Fujant, Inc. 0:7:f0 LogiSync Corporation 0:7:f1 TeraBurst Networks Inc. 0:7:f2 IOA Corporation 0:7:f3 Thinkengine Networks 0:7:f4 Eletex Co., Ltd. 0:7:f5 Bridgeco Co AG 0:7:f6 Qqest Software Systems 0:7:f7 Galtronics 0:7:f8 ITDevices, Inc. 0:7:f9 Phonetics, Inc. 0:7:fa ITT Co., Ltd. 0:7:fb Giga Stream UMTS Technologies GmbH 0:7:fc Adept Systems Inc. 0:7:fd LANergy Ltd. 0:7:fe Rigaku Corporation 0:7:ff Gluon Networks 0:80:0 MULTITECH SYSTEMS, INC. 0:80:1 PERIPHONICS CORPORATION 0:80:10 COMMODORE INTERNATIONAL 0:80:11 DIGITAL SYSTEMS INT'L. INC. 0:80:12 INTEGRATED MEASUREMENT SYSTEMS 0:80:13 THOMAS-CONRAD CORPORATION 0:80:14 ESPRIT SYSTEMS 0:80:15 SEIKO SYSTEMS, INC. 0:80:16 WANDEL AND GOLTERMANN 0:80:17 PFU LIMITED 0:80:18 KOBE STEEL, LTD. 0:80:19 DAYNA COMMUNICATIONS, INC. 0:80:1a BELL ATLANTIC 0:80:1b KODIAK TECHNOLOGY 0:80:1c NEWPORT SYSTEMS SOLUTIONS 0:80:1d INTEGRATED INFERENCE MACHINES 0:80:1e XINETRON, INC. 0:80:1f KRUPP ATLAS ELECTRONIK GMBH 0:80:2 SATELCOM (UK) LTD 0:80:20 NETWORK PRODUCTS 0:80:21 Alcatel Canada Inc. 0:80:22 SCAN-OPTICS 0:80:23 INTEGRATED BUSINESS NETWORKS 0:80:24 KALPANA, INC. 0:80:25 STOLLMANN GMBH 0:80:26 NETWORK PRODUCTS CORPORATION 0:80:27 ADAPTIVE SYSTEMS, INC. 0:80:28 TRADPOST (HK) LTD 0:80:29 EAGLE TECHNOLOGY, INC. 0:80:2a TEST SYSTEMS & SIMULATIONS INC 0:80:2b INTEGRATED MARKETING CO 0:80:2c THE SAGE GROUP PLC 0:80:2d XYLOGICS INC 0:80:2e CASTLE ROCK COMPUTING 0:80:2f NATIONAL INSTRUMENTS CORP. 0:80:3 HYTEC ELECTRONICS LTD. 0:80:30 NEXUS ELECTRONICS 0:80:31 BASYS, CORP. 0:80:32 ACCESS CO., LTD. 0:80:33 FORMATION, INC. 0:80:34 SMT GOUPIL 0:80:35 TECHNOLOGY WORKS, INC. 0:80:36 REFLEX MANUFACTURING SYSTEMS 0:80:37 Ericsson Group 0:80:38 DATA RESEARCH & APPLICATIONS 0:80:39 ALCATEL STC AUSTRALIA 0:80:3a VARITYPER, INC. 0:80:3b APT COMMUNICATIONS, INC. 0:80:3c TVS ELECTRONICS LTD 0:80:3d SURIGIKEN CO., LTD. 0:80:3e SYNERNETICS 0:80:3f TATUNG COMPANY 0:80:4 ANTLOW COMMUNICATIONS, LTD. 0:80:40 JOHN FLUKE MANUFACTURING CO. 0:80:41 VEB KOMBINAT ROBOTRON 0:80:42 FORCE COMPUTERS 0:80:43 NETWORLD, INC. 0:80:44 SYSTECH COMPUTER CORP. 0:80:45 MATSUSHITA ELECTRIC IND. CO 0:80:46 UNIVERSITY OF TORONTO 0:80:47 IN-NET CORP. 0:80:48 COMPEX INCORPORATED 0:80:49 NISSIN ELECTRIC CO., LTD. 0:80:4a PRO-LOG 0:80:4b EAGLE TECHNOLOGIES PTY.LTD. 0:80:4c CONTEC CO., LTD. 0:80:4d CYCLONE MICROSYSTEMS, INC. 0:80:4e APEX COMPUTER COMPANY 0:80:4f DAIKIN INDUSTRIES, LTD. 0:80:5 CACTUS COMPUTER INC. 0:80:50 ZIATECH CORPORATION 0:80:51 FIBERMUX 0:80:52 TECHNICALLY ELITE CONCEPTS 0:80:53 INTELLICOM, INC. 0:80:54 FRONTIER TECHNOLOGIES CORP. 0:80:55 FERMILAB 0:80:56 SPHINX ELEKTRONIK GMBH 0:80:57 ADSOFT, LTD. 0:80:58 PRINTER SYSTEMS CORPORATION 0:80:59 STANLEY ELECTRIC CO., LTD 0:80:5a TULIP COMPUTERS INTERNAT'L B.V 0:80:5b CONDOR SYSTEMS, INC. 0:80:5c AGILIS CORPORATION 0:80:5d CANSTAR 0:80:5e LSI LOGIC CORPORATION 0:80:5f COMPAQ COMPUTER CORPORATION 0:80:6 COMPUADD CORPORATION 0:80:60 NETWORK INTERFACE CORPORATION 0:80:61 LITTON SYSTEMS, INC. 0:80:62 INTERFACE CO. 0:80:63 RICHARD HIRSCHMANN GMBH & CO. 0:80:64 WYSE TECHNOLOGY 0:80:65 CYBERGRAPHIC SYSTEMS PTY LTD. 0:80:66 ARCOM CONTROL SYSTEMS, LTD. 0:80:67 SQUARE D COMPANY 0:80:68 YAMATECH SCIENTIFIC LTD. 0:80:69 COMPUTONE SYSTEMS 0:80:6a ERI (EMPAC RESEARCH INC.) 0:80:6b SCHMID TELECOMMUNICATION 0:80:6c CEGELEC PROJECTS LTD 0:80:6d CENTURY SYSTEMS CORP. 0:80:6e NIPPON STEEL CORPORATION 0:80:6f ONELAN LTD. 0:80:7 DLOG NC-SYSTEME 0:80:70 COMPUTADORAS MICRON 0:80:71 SAI TECHNOLOGY 0:80:72 MICROPLEX SYSTEMS LTD. 0:80:73 DWB ASSOCIATES 0:80:74 FISHER CONTROLS 0:80:75 PARSYTEC GMBH 0:80:76 MCNC 0:80:77 BROTHER INDUSTRIES, LTD. 0:80:78 PRACTICAL PERIPHERALS, INC. 0:80:79 MICROBUS DESIGNS LTD. 0:80:7a AITECH SYSTEMS LTD. 0:80:7b ARTEL COMMUNICATIONS CORP. 0:80:7c FIBERCOM, INC. 0:80:7d EQUINOX SYSTEMS INC. 0:80:7e SOUTHERN PACIFIC LTD. 0:80:7f DY-4 INCORPORATED 0:80:8 DYNATECH COMPUTER SYSTEMS 0:80:80 DATAMEDIA CORPORATION 0:80:81 KENDALL SQUARE RESEARCH CORP. 0:80:82 PEP MODULAR COMPUTERS GMBH 0:80:83 AMDAHL 0:80:84 THE CLOUD INC. 0:80:85 H-THREE SYSTEMS CORPORATION 0:80:86 COMPUTER GENERATION INC. 0:80:87 OKI ELECTRIC INDUSTRY CO., LTD 0:80:88 VICTOR COMPANY OF JAPAN, LTD. 0:80:89 TECNETICS (PTY) LTD. 0:80:8a SUMMIT MICROSYSTEMS CORP. 0:80:8b DACOLL LIMITED 0:80:8c NetScout Systems, Inc. 0:80:8d WESTCOAST TECHNOLOGY B.V. 0:80:8e RADSTONE TECHNOLOGY 0:80:8f C. ITOH ELECTRONICS, INC. 0:80:9 JUPITER SYSTEMS, INC. 0:80:90 MICROTEK INTERNATIONAL, INC. 0:80:91 TOKYO ELECTRIC CO.,LTD 0:80:92 JAPAN COMPUTER INDUSTRY, INC. 0:80:93 XYRON CORPORATION 0:80:94 ALFA LAVAL AUTOMATION AB 0:80:95 BASIC MERTON HANDELSGES.M.B.H. 0:80:96 HUMAN DESIGNED SYSTEMS, INC. 0:80:97 CENTRALP AUTOMATISMES 0:80:98 TDK CORPORATION 0:80:99 KLOCKNER MOELLER IPC 0:80:9a NOVUS NETWORKS LTD 0:80:9b JUSTSYSTEM CORPORATION 0:80:9c LUXCOM, INC. 0:80:9d Commscraft Ltd. 0:80:9e DATUS GMBH 0:80:9f ALCATEL BUSINESS SYSTEMS 0:80:a JAPAN COMPUTER CORP. 0:80:a0 EDISA HEWLETT PACKARD S/A 0:80:a1 MICROTEST, INC. 0:80:a2 CREATIVE ELECTRONIC SYSTEMS 0:80:a3 LANTRONIX 0:80:a4 LIBERTY ELECTRONICS 0:80:a5 SPEED INTERNATIONAL 0:80:a6 REPUBLIC TECHNOLOGY, INC. 0:80:a7 MEASUREX CORP. 0:80:a8 VITACOM CORPORATION 0:80:a9 CLEARPOINT RESEARCH 0:80:aa MAXPEED 0:80:ab DUKANE NETWORK INTEGRATION 0:80:ac IMLOGIX, DIVISION OF GENESYS 0:80:ad CNET TECHNOLOGY, INC. 0:80:ae HUGHES NETWORK SYSTEMS 0:80:af ALLUMER CO., LTD. 0:80:b CSK CORPORATION 0:80:b0 ADVANCED INFORMATION 0:80:b1 SOFTCOM A/S 0:80:b2 NETWORK EQUIPMENT TECHNOLOGIES 0:80:b3 AVAL DATA CORPORATION 0:80:b4 SOPHIA SYSTEMS 0:80:b5 UNITED NETWORKS INC. 0:80:b6 THEMIS COMPUTER 0:80:b7 STELLAR COMPUTER 0:80:b8 BUG, INCORPORATED 0:80:b9 ARCHE TECHNOLIGIES INC. 0:80:ba SPECIALIX (ASIA) PTE, LTD 0:80:bb HUGHES LAN SYSTEMS 0:80:bc HITACHI ENGINEERING CO., LTD 0:80:bd THE FURUKAWA ELECTRIC CO., LTD 0:80:be ARIES RESEARCH 0:80:bf TAKAOKA ELECTRIC MFG. CO. LTD. 0:80:c VIDECOM LIMITED 0:80:c0 PENRIL DATACOMM 0:80:c1 LANEX CORPORATION 0:80:c2 IEEE 802.1 COMMITTEE 0:80:c3 BICC INFORMATION SYSTEMS & SVC 0:80:c4 DOCUMENT TECHNOLOGIES, INC. 0:80:c5 NOVELLCO DE MEXICO 0:80:c6 NATIONAL DATACOMM CORPORATION 0:80:c7 XIRCOM 0:80:c8 D-LINK SYSTEMS, INC. 0:80:c9 ALBERTA MICROELECTRONIC CENTRE 0:80:ca NETCOM RESEARCH INCORPORATED 0:80:cb FALCO DATA PRODUCTS 0:80:cc MICROWAVE BYPASS SYSTEMS 0:80:cd MICRONICS COMPUTER, INC. 0:80:ce BROADCAST TELEVISION SYSTEMS 0:80:cf EMBEDDED PERFORMANCE INC. 0:80:d VOSSWINKEL F.U. 0:80:d0 COMPUTER PERIPHERALS, INC. 0:80:d1 KIMTRON CORPORATION 0:80:d2 SHINNIHONDENKO CO., LTD. 0:80:d3 SHIVA CORP. 0:80:d4 CHASE RESEARCH LTD. 0:80:d5 CADRE TECHNOLOGIES 0:80:d6 NUVOTECH, INC. 0:80:d7 Fantum Engineering 0:80:d8 NETWORK PERIPHERALS INC. 0:80:d9 EMK ELEKTRONIK 0:80:da BRUEL & KJAER 0:80:db GRAPHON CORPORATION 0:80:dc PICKER INTERNATIONAL 0:80:dd GMX INC/GIMIX 0:80:de GIPSI S.A. 0:80:df ADC CODENOLL TECHNOLOGY CORP. 0:80:e ATLANTIX CORPORATION 0:80:e0 XTP SYSTEMS, INC. 0:80:e1 STMICROELECTRONICS 0:80:e2 T.D.I. CO., LTD. 0:80:e3 CORAL NETWORK CORPORATION 0:80:e4 NORTHWEST DIGITAL SYSTEMS, INC 0:80:e5 LSI Logic Corporation 0:80:e6 PEER NETWORKS, INC. 0:80:e7 LYNWOOD SCIENTIFIC DEV. LTD. 0:80:e8 CUMULUS CORPORATIION 0:80:e9 Madge Ltd. 0:80:ea ADVA Optical Networking Ltd. 0:80:eb COMPCONTROL B.V. 0:80:ec SUPERCOMPUTING SOLUTIONS, INC. 0:80:ed IQ TECHNOLOGIES, INC. 0:80:ee THOMSON CSF 0:80:ef RATIONAL 0:80:f STANDARD MICROSYSTEMS 0:80:f0 Panasonic Communications Co., Ltd. 0:80:f1 OPUS SYSTEMS 0:80:f2 RAYCOM SYSTEMS INC 0:80:f3 SUN ELECTRONICS CORP. 0:80:f4 TELEMECANIQUE ELECTRIQUE 0:80:f5 QUANTEL LTD 0:80:f6 SYNERGY MICROSYSTEMS 0:80:f7 ZENITH ELECTRONICS 0:80:f8 MIZAR, INC. 0:80:f9 HEURIKON CORPORATION 0:80:fa RWT GMBH 0:80:fb BVM LIMITED 0:80:fc AVATAR CORPORATION 0:80:fd EXSCEED CORPRATION 0:80:fe AZURE TECHNOLOGIES, INC. 0:80:ff SOC. DE TELEINFORMATIQUE RTC 0:8:0 MULTITECH SYSTEMS, INC. 0:8:1 HighSpeed Surfing Inc. 0:8:10 Key Technology, Inc. 0:8:11 VOIX Corporation 0:8:12 GM-2 Corporation 0:8:13 Diskbank, Inc. 0:8:14 TIL Technologies 0:8:15 CATS Co., Ltd. 0:8:16 Bluetags A/S 0:8:17 EmergeCore Networks LLC 0:8:18 Pixelworks, Inc. 0:8:19 Banksys 0:8:1a Sanrad Intelligence Storage Communications (2000) Ltd. 0:8:1b Windigo Systems 0:8:1c @pos.com 0:8:1d Ipsil, Incorporated 0:8:1e Repeatit AB 0:8:1f Pou Yuen Tech Corp. Ltd. 0:8:2 Compaq Computer Corporation 0:8:20 Cisco Systems Inc. 0:8:21 Cisco Systems Inc. 0:8:22 InPro Comm 0:8:23 Texa Corp. 0:8:24 Promatek Industries Ltd. 0:8:25 Acme Packet 0:8:26 Colorado Med Tech 0:8:27 Pirelli Broadband Solutions 0:8:28 Koei Engineering Ltd. 0:8:29 Aval Nagasaki Corporation 0:8:2a Powerwallz Network Security 0:8:2b Wooksung Electronics, Inc. 0:8:2c Homag AG 0:8:2d Indus Teqsite Private Limited 0:8:2e Multitone Electronics PLC 0:8:3 Cos Tron 0:8:4 ICA Inc. 0:8:4e DivergeNet, Inc. 0:8:4f Qualstar Corporation 0:8:5 Techno-Holon Corporation 0:8:50 Arizona Instrument Corp. 0:8:51 Canadian Bank Note Company, Ltd. 0:8:52 Davolink Co. Inc. 0:8:53 Schleicher GmbH & Co. Relaiswerke KG 0:8:54 Netronix, Inc. 0:8:55 NASA-Goddard Space Flight Center 0:8:56 Gamatronic Electronic Industries Ltd. 0:8:57 Polaris Networks, Inc. 0:8:58 Novatechnology Inc. 0:8:59 ShenZhen Unitone Electronics Co., Ltd. 0:8:5a IntiGate Inc. 0:8:5b Hanbit Electronics Co., Ltd. 0:8:5c Shanghai Dare Technologies Co. Ltd. 0:8:5d Aastra 0:8:5e PCO AG 0:8:5f Picanol N.V. 0:8:6 Raonet Systems, Inc. 0:8:60 LodgeNet Entertainment Corp. 0:8:61 SoftEnergy Co., Ltd. 0:8:62 NEC Eluminant Technologies, Inc. 0:8:63 Entrisphere Inc. 0:8:64 Fasy S.p.A. 0:8:65 JASCOM CO., LTD 0:8:66 DSX Access Systems, Inc. 0:8:67 Uptime Devices 0:8:68 PurOptix 0:8:69 Command-e Technology Co.,Ltd. 0:8:6a Industrie Technik IPS GmbH 0:8:6b MIPSYS 0:8:6c Plasmon LMS 0:8:6d Missouri FreeNet 0:8:6e Hyglo AB 0:8:6f Resources Computer Network Ltd. 0:8:7 Access Devices Limited 0:8:70 Rasvia Systems, Inc. 0:8:71 NORTHDATA Co., Ltd. 0:8:72 Sorenson Technologies, Inc. 0:8:73 DAP Design B.V. 0:8:74 Dell Computer Corp. 0:8:75 Acorp Electronics Corp. 0:8:76 SDSystem 0:8:77 Liebert HIROSS S.p.A. 0:8:78 Benchmark Storage Innovations 0:8:79 CEM Corporation 0:8:7a Wipotec GmbH 0:8:7b RTX Telecom A/S 0:8:7c Cisco Systems, Inc. 0:8:7d Cisco Systems Inc. 0:8:7e Bon Electro-Telecom Inc. 0:8:7f SPAUN electronic GmbH & Co. KG 0:8:8 PPT Vision, Inc. 0:8:80 BroadTel Canada Communications inc. 0:8:81 DIGITAL HANDS CO.,LTD. 0:8:82 SIGMA CORPORATION 0:8:83 Hewlett-Packard Company 0:8:84 Index Braille AB 0:8:85 EMS Dr. Thomas Wuensche 0:8:86 Hansung Teliann, Inc. 0:8:87 Maschinenfabrik Reinhausen GmbH 0:8:88 OULLIM Information Technology Inc,. 0:8:89 Echostar Technologies Corp 0:8:8a Minds@Work 0:8:8b Tropic Networks Inc. 0:8:8c Quanta Network Systems Inc. 0:8:8d Sigma-Links Inc. 0:8:8e Nihon Computer Co., Ltd. 0:8:8f ADVANCED DIGITAL TECHNOLOGY 0:8:9 Systemonic AG 0:8:90 AVILINKS SA 0:8:91 Lyan Inc. 0:8:92 EM Solutions 0:8:93 LE INFORMATION COMMUNICATION INC. 0:8:94 InnoVISION Multimedia Ltd. 0:8:95 DIRC Technologie GmbH & Co.KG 0:8:96 Printronix, Inc. 0:8:97 Quake Technologies 0:8:98 Gigabit Optics Corporation 0:8:99 Netbind, Inc. 0:8:9a Alcatel Microelectronics 0:8:9b ICP Electronics Inc. 0:8:9c Elecs Industry Co., Ltd. 0:8:9d UHD-Elektronik 0:8:9e Beijing Enter-Net co.LTD 0:8:9f EFM Networks 0:8:a Espera-Werke GmbH 0:8:a0 Stotz Feinmesstechnik GmbH 0:8:a1 CNet Technology Inc. 0:8:a2 ADI Engineering, Inc. 0:8:a3 Cisco Systems 0:8:a4 Cisco Systems 0:8:a5 Peninsula Systems Inc. 0:8:a6 Multiware & Image Co., Ltd. 0:8:a7 iLogic Inc. 0:8:a8 Systec Co., Ltd. 0:8:a9 SangSang Technology, Inc. 0:8:aa KARAM 0:8:ab EnerLinx.com, Inc. 0:8:ac PRIVATE 0:8:ad Toyo-Linx Co., Ltd. 0:8:ae PacketFront Sweden AB 0:8:af Novatec Corporation 0:8:b Birka BPA Informationssystem AB 0:8:b0 BKtel communications GmbH 0:8:b1 ProQuent Systems 0:8:b2 SHENZHEN COMPASS TECHNOLOGY DEVELOPMENT CO.,LTD 0:8:b3 Fastwel 0:8:b4 SYSPOL 0:8:b5 TAI GUEN ENTERPRISE CO., LTD 0:8:b6 RouteFree, Inc. 0:8:b7 HIT Incorporated 0:8:b8 E.F. Johnson 0:8:b9 KAON MEDIA Co., Ltd. 0:8:ba Erskine Systems Ltd 0:8:bb NetExcell 0:8:bc Ilevo AB 0:8:bd TEPG-US 0:8:be XENPAK MSA Group 0:8:bf Aptus Elektronik AB 0:8:c VDA elettronica SrL 0:8:c0 ASA SYSTEMS 0:8:c1 Avistar Communications Corporation 0:8:c2 Cisco Systems 0:8:c3 Contex A/S 0:8:c4 Hikari Co.,Ltd. 0:8:c5 Liontech Co., Ltd. 0:8:c6 Philips Consumer Communications 0:8:c7 COMPAQ COMPUTER CORPORATION 0:8:c8 Soneticom, Inc. 0:8:c9 TechniSat Digital GmbH 0:8:ca TwinHan Technology Co.,Ltd 0:8:cb Zeta Broadband Inc. 0:8:cc Remotec, Inc. 0:8:cd With-Net Inc 0:8:ce IPMobileNet Inc. 0:8:cf Nippon Koei Power Systems Co., Ltd. 0:8:d Toshiba 0:8:d0 Musashi Engineering Co., LTD. 0:8:d1 KAREL INC. 0:8:d2 ZOOM Networks Inc. 0:8:d3 Hercules Technologies S.A. 0:8:d4 IneoQuest Technologies, Inc 0:8:d5 Vanguard Managed Solutions 0:8:d6 HASSNET Inc. 0:8:d7 HOW CORPORATION 0:8:d8 Dowkey Microwave 0:8:d9 Mitadenshi Co.,LTD 0:8:da SofaWare Technologies Ltd. 0:8:db Corrigent Systems 0:8:dc Wiznet 0:8:dd Telena Communications, Inc. 0:8:de 3UP Systems 0:8:df Alistel Inc. 0:8:e Motorola, BCS 0:8:e0 ATO Technology Ltd. 0:8:e1 Barix AG 0:8:e2 Cisco Systems 0:8:e3 Cisco Systems 0:8:e4 Envenergy Inc 0:8:e5 IDK Corporation 0:8:e6 Littlefeet 0:8:e7 SHI ControlSystems,Ltd. 0:8:e8 Excel Master Ltd. 0:8:e9 NextGig 0:8:ea Motion Control Engineering, Inc 0:8:eb ROMWin Co.,Ltd. 0:8:ec Zonu, Inc. 0:8:ed ST&T Instrument Corp. 0:8:ee Logic Product Development 0:8:ef DIBAL,S.A. 0:8:f Proximion Fiber Optics AB 0:8:f0 Next Generation Systems, Inc. 0:8:f1 Voltaire 0:8:f2 C&S Technology 0:8:f3 WANY 0:8:f4 Bluetake Technology Co., Ltd. 0:8:f5 YESTECHNOLOGY Co.,Ltd. 0:8:f6 SUMITOMO ELECTRIC HIGHTECHS.co.,ltd. 0:8:f7 Hitachi Ltd, Semiconductor & Integrated Circuits Gr 0:8:f8 Guardall Ltd 0:8:f9 Padcom, Inc. 0:8:fa Karl E.Brinkmann GmbH 0:8:fb SonoSite, Inc. 0:8:fc Gigaphoton Inc. 0:8:fd BlueKorea Co., Ltd. 0:8:fe UNIK C&C Co.,Ltd. 0:8:ff Trilogy Broadcast (Holdings) Ltd 0:90:0 DIAMOND MULTIMEDIA 0:90:1 NISHIMU ELECTRONICS INDUSTRIES CO., LTD. 0:90:10 SIMULATION LABORATORIES, INC. 0:90:11 WAVTrace, Inc. 0:90:12 GLOBESPAN SEMICONDUCTOR, INC. 0:90:13 SAMSAN CORP. 0:90:14 ROTORK INSTRUMENTS, LTD. 0:90:15 CENTIGRAM COMMUNICATIONS CORP. 0:90:16 ZAC 0:90:17 ZYPCOM, INC. 0:90:18 ITO ELECTRIC INDUSTRY CO, LTD. 0:90:19 HERMES ELECTRONICS CO., LTD. 0:90:1a UNISPHERE SOLUTIONS 0:90:1b DIGITAL CONTROLS 0:90:1c mps Software Gmbh 0:90:1d PEC (NZ) LTD. 0:90:1e SELESTA INGEGNE RIA S.P.A. 0:90:1f ADTEC PRODUCTIONS, INC. 0:90:2 ALLGON AB 0:90:20 PHILIPS ANALYTICAL X-RAY B.V. 0:90:21 CISCO SYSTEMS, INC. 0:90:22 IVEX 0:90:23 ZILOG INC. 0:90:24 PIPELINKS, INC. 0:90:25 VISION SYSTEMS LTD. PTY 0:90:26 ADVANCED SWITCHING COMMUNICATIONS, INC. 0:90:27 INTEL CORPORATION 0:90:28 NIPPON SIGNAL CO., LTD. 0:90:29 CRYPTO AG 0:90:2a COMMUNICATION DEVICES, INC. 0:90:2b CISCO SYSTEMS, INC. 0:90:2c DATA & CONTROL EQUIPMENT LTD. 0:90:2d DATA ELECTRONICS (AUST.) PTY, LTD. 0:90:2e NAMCO LIMITED 0:90:2f NETCORE SYSTEMS, INC. 0:90:3 APLIO 0:90:30 HONEYWELL-DATING 0:90:31 MYSTICOM, LTD. 0:90:32 PELCOMBE GROUP LTD. 0:90:33 INNOVAPHONE AG 0:90:34 IMAGIC, INC. 0:90:35 ALPHA TELECOM, INC. 0:90:36 ens, inc. 0:90:37 ACUCOMM, INC. 0:90:38 FOUNTAIN TECHNOLOGIES, INC. 0:90:39 SHASTA NETWORKS 0:90:3a NIHON MEDIA TOOL INC. 0:90:3b TriEMS Research Lab, Inc. 0:90:3c ATLANTIC NETWORK SYSTEMS 0:90:3d BIOPAC SYSTEMS, INC. 0:90:3e N.V. PHILIPS INDUSTRIAL ACTIVITIES 0:90:3f AZTEC RADIOMEDIA 0:90:4 3COM EUROPE LTD. 0:90:40 Siemens Network Convergence LLC 0:90:41 APPLIED DIGITAL ACCESS 0:90:42 ECCS, Inc. 0:90:43 NICHIBEI DENSHI CO., LTD. 0:90:44 ASSURED DIGITAL, INC. 0:90:45 Marconi Communications 0:90:46 DEXDYNE, LTD. 0:90:47 GIGA FAST E. LTD. 0:90:48 ZEAL CORPORATION 0:90:49 ENTRIDIA CORPORATION 0:90:4a CONCUR SYSTEM TECHNOLOGIES 0:90:4b GemTek Technology Co., Ltd. 0:90:4c EPIGRAM, INC. 0:90:4d SPEC S.A. 0:90:4e DELEM BV 0:90:4f ABB POWER T&D COMPANY, INC. 0:90:5 PROTECH SYSTEMS CO., LTD. 0:90:50 TELESTE OY 0:90:51 ULTIMATE TECHNOLOGY CORP. 0:90:52 SELCOM ELETTRONICA S.R.L. 0:90:53 DAEWOO ELECTRONICS CO., LTD. 0:90:54 INNOVATIVE SEMICONDUCTORS, INC 0:90:55 PARKER HANNIFIN CORPORATION COMPUMOTOR DIVISION 0:90:56 TELESTREAM, INC. 0:90:57 AANetcom, Inc. 0:90:58 Ultra Electronics Ltd., Command and Control Systems 0:90:59 TELECOM DEVICE K.K. 0:90:5a DEARBORN GROUP, INC. 0:90:5b RAYMOND AND LAE ENGINEERING 0:90:5c EDMI 0:90:5d NETCOM SICHERHEITSTECHNIK GmbH 0:90:5e RAULAND-BORG CORPORATION 0:90:5f CISCO SYSTEMS, INC. 0:90:6 HAMAMATSU PHOTONICS K.K. 0:90:60 SYSTEM CREATE CORP. 0:90:61 PACIFIC RESEARCH & ENGINEERING CORPORATION 0:90:62 ICP VORTEX COMPUTERSYSTEME GmbH 0:90:63 COHERENT COMMUNICATIONS SYSTEMS CORPORATION 0:90:64 THOMSON BROADCAST SYSTEMS 0:90:65 FINISAR CORPORATION 0:90:66 Troika Networks, Inc. 0:90:67 WalkAbout Computers, Inc. 0:90:68 DVT CORP. 0:90:69 JUNIPER NETWORKS, INC. 0:90:6a TURNSTONE SYSTEMS, INC. 0:90:6b APPLIED RESOURCES, INC. 0:90:6c Sartorius Hamburg GmbH 0:90:6d CISCO SYSTEMS, INC. 0:90:6e PRAXON, INC. 0:90:6f CISCO SYSTEMS, INC. 0:90:7 DOMEX TECHNOLOGY CORP. 0:90:70 NEO NETWORKS, INC. 0:90:71 Applied Innovation Inc. 0:90:72 SIMRAD AS 0:90:73 GAIO TECHNOLOGY 0:90:74 ARGON NETWORKS, INC. 0:90:75 NEC DO BRASIL S.A. 0:90:76 FMT AIRCRAFT GATE SUPPORT SYSTEMS AB 0:90:77 ADVANCED FIBRE COMMUNICATIONS 0:90:78 MER TELEMANAGEMENT SOLUTIONS, LTD. 0:90:79 ClearOne, Inc. 0:90:7a SPECTRALINK CORP. 0:90:7b E-TECH, INC. 0:90:7c DIGITALCAST, INC. 0:90:7d Lake Communications 0:90:7e VETRONIX CORP. 0:90:7f WatchGuard Technologies, Inc. 0:90:8 HanA Systems Inc. 0:90:80 NOT LIMITED, INC. 0:90:81 ALOHA NETWORKS, INC. 0:90:82 FORCE INSTITUTE 0:90:83 TURBO COMMUNICATION, INC. 0:90:84 ATECH SYSTEM 0:90:85 GOLDEN ENTERPRISES, INC. 0:90:86 CISCO SYSTEMS, INC. 0:90:87 ITIS 0:90:88 BAXALL SECURITY LTD. 0:90:89 SOFTCOM MICROSYSTEMS, INC. 0:90:8a BAYLY COMMUNICATIONS, INC. 0:90:8b PFU Systems, Inc. 0:90:8c ETREND ELECTRONICS, INC. 0:90:8d VICKERS ELECTRONICS SYSTEMS 0:90:8e Nortel Networks Broadband Access 0:90:8f AUDIO CODES LTD. 0:90:9 i Controls, Inc. 0:90:90 I-BUS 0:90:91 DigitalScape, Inc. 0:90:92 CISCO SYSTEMS, INC. 0:90:93 NANAO CORPORATION 0:90:94 OSPREY TECHNOLOGIES, INC. 0:90:95 UNIVERSAL AVIONICS 0:90:96 ASKEY COMPUTER CORP. 0:90:97 SYCAMORE NETWORKS 0:90:98 SBC DESIGNS, INC. 0:90:99 ALLIED TELESIS, K.K. 0:90:9a ONE WORLD SYSTEMS, INC. 0:90:9b MARKPOINT AB 0:90:9c Terayon Communications Systems 0:90:9d NovaTech Process Solutions, LLC 0:90:9e Critical IO, LLC 0:90:9f DIGI-DATA CORPORATION 0:90:a PROTON ELECTRONIC INDUSTRIAL CO., LTD. 0:90:a0 8X8 INC. 0:90:a1 FLYING PIG SYSTEMS, LTD. 0:90:a2 CYBERTAN TECHNOLOGY, INC. 0:90:a3 Corecess Inc. 0:90:a4 ALTIGA NETWORKS 0:90:a5 SPECTRA LOGIC 0:90:a6 CISCO SYSTEMS, INC. 0:90:a7 CLIENTEC CORPORATION 0:90:a8 NineTiles Networks, Ltd. 0:90:a9 WESTERN DIGITAL 0:90:aa INDIGO ACTIVE VISION SYSTEMS LIMITED 0:90:ab CISCO SYSTEMS, INC. 0:90:ac OPTIVISION, INC. 0:90:ad ASPECT ELECTRONICS, INC. 0:90:ae ITALTEL S.p.A. 0:90:af J. MORITA MFG. CORP. 0:90:b LANNER ELECTRONICS, INC. 0:90:b0 VADEM 0:90:b1 CISCO SYSTEMS, INC. 0:90:b2 AVICI SYSTEMS INC. 0:90:b3 AGRANAT SYSTEMS 0:90:b4 WILLOWBROOK TECHNOLOGIES 0:90:b5 NIKON CORPORATION 0:90:b6 FIBEX SYSTEMS 0:90:b7 DIGITAL LIGHTWAVE, INC. 0:90:b8 ROHDE & SCHWARZ GMBH & CO. KG 0:90:b9 BERAN INSTRUMENTS LTD. 0:90:ba VALID NETWORKS, INC. 0:90:bb TAINET COMMUNICATION SYSTEM Corp. 0:90:bc TELEMANN CO., LTD. 0:90:bd OMNIA COMMUNICATIONS, INC. 0:90:be IBC/INTEGRATED BUSINESS COMPUTERS 0:90:bf CISCO SYSTEMS, INC. 0:90:c CISCO SYSTEMS, INC. 0:90:c0 K.J. LAW ENGINEERS, INC. 0:90:c1 Peco II, Inc. 0:90:c2 JK microsystems, Inc. 0:90:c3 TOPIC SEMICONDUCTOR CORP. 0:90:c4 JAVELIN SYSTEMS, INC. 0:90:c5 INTERNET MAGIC, INC. 0:90:c6 OPTIM SYSTEMS, INC. 0:90:c7 ICOM INC. 0:90:c8 WAVERIDER COMMUNICATIONS (CANADA) INC. 0:90:c9 DPAC Technologies 0:90:ca ACCORD VIDEO TELECOMMUNICATIONS, LTD. 0:90:cb Wireless OnLine, Inc. 0:90:cc PLANET COMMUNICATIONS, INC. 0:90:cd ENT-EMPRESA NACIONAL DE TELECOMMUNICACOES, S.A. 0:90:ce TETRA GmbH 0:90:cf NORTEL 0:90:d OVERLAND DATA INC. 0:90:d0 Thomson Telecom Belgium 0:90:d1 LEICHU ENTERPRISE CO., LTD. 0:90:d2 ARTEL VIDEO SYSTEMS 0:90:d3 GIESECKE & DEVRIENT GmbH 0:90:d4 BindView Development Corp. 0:90:d5 EUPHONIX, INC. 0:90:d6 CRYSTAL GROUP 0:90:d7 NetBoost Corp. 0:90:d8 WHITECROSS SYSTEMS 0:90:d9 CISCO SYSTEMS, INC. 0:90:da DYNARC, INC. 0:90:db NEXT LEVEL COMMUNICATIONS 0:90:dc TECO INFORMATION SYSTEMS 0:90:dd THE MIHARU COMMUNICATIONS CO., LTD. 0:90:de CARDKEY SYSTEMS, INC. 0:90:df MITSUBISHI CHEMICAL AMERICA, INC. 0:90:e HANDLINK TECHNOLOGIES, INC. 0:90:e0 SYSTRAN CORP. 0:90:e1 TELENA S.P.A. 0:90:e2 DISTRIBUTED PROCESSING TECHNOLOGY 0:90:e3 AVEX ELECTRONICS INC. 0:90:e4 NEC AMERICA, INC. 0:90:e5 TEKNEMA, INC. 0:90:e6 ACER LABORATORIES, INC. 0:90:e7 HORSCH ELEKTRONIK AG 0:90:e8 MOXA TECHNOLOGIES CORP., LTD. 0:90:e9 JANZ COMPUTER AG 0:90:ea ALPHA TECHNOLOGIES, INC. 0:90:eb SENTRY TELECOM SYSTEMS 0:90:ec PYRESCOM 0:90:ed CENTRAL SYSTEM RESEARCH CO., LTD. 0:90:ee PERSONAL COMMUNICATIONS TECHNOLOGIES 0:90:ef INTEGRIX, INC. 0:90:f KAWASAKI HEAVY INDUSTRIES, LTD 0:90:f0 Harmonic Video Systems Ltd. 0:90:f1 DOT HILL SYSTEMS CORPORATION 0:90:f2 CISCO SYSTEMS, INC. 0:90:f3 ASPECT COMMUNICATIONS 0:90:f4 LIGHTNING INSTRUMENTATION 0:90:f5 CLEVO CO. 0:90:f6 ESCALATE NETWORKS, INC. 0:90:f7 NBASE COMMUNICATIONS LTD. 0:90:f8 MEDIATRIX TELECOM 0:90:f9 LEITCH 0:90:fa EMULEX Corp 0:90:fb PORTWELL, INC. 0:90:fc NETWORK COMPUTING DEVICES 0:90:fd CopperCom, Inc. 0:90:fe ELECOM CO., LTD. (LANEED DIV.) 0:90:ff TELLUS TECHNOLOGY INC. 0:91:d6 Crystal Group, Inc. 0:9:0 TMT 0:9:1 Shenzhen Shixuntong Information & Technoligy Co 0:9:10 Simple Access Inc. 0:9:11 Cisco Systems 0:9:12 Cisco Systems 0:9:13 SystemK Corporation 0:9:14 COMPUTROLS INC. 0:9:15 CAS Corp. 0:9:16 Listman Home Technologies, Inc. 0:9:17 WEM Technology Inc 0:9:18 SAMSUNG TECHWIN CO.,LTD 0:9:19 MDS Gateways 0:9:1a Macat Optics & Electronics Co., Ltd. 0:9:1b Digital Generation Inc. 0:9:1c CacheVision, Inc 0:9:1d Proteam Computer Corporation 0:9:1e Firstech Technology Corp. 0:9:1f A&D Co., Ltd. 0:9:2 Redline Communications Inc. 0:9:20 EpoX COMPUTER CO.,LTD. 0:9:21 Planmeca Oy 0:9:22 Touchless Sensor Technology AG 0:9:23 Heaman System Co., Ltd 0:9:24 Telebau GmbH 0:9:25 VSN Systemen BV 0:9:26 YODA COMMUNICATIONS, INC. 0:9:27 TOYOKEIKI CO.,LTD. 0:9:28 Telecore Inc 0:9:29 Sanyo Industries (UK) Limited 0:9:2a MYTECS Co.,Ltd. 0:9:2b iQstor Networks, Inc. 0:9:2c Hitpoint Inc. 0:9:2d High Tech Computer, Corp. 0:9:2e B&Tech System Inc. 0:9:2f Akom Technology Corporation 0:9:3 Panasas, Inc 0:9:30 AeroConcierge Inc. 0:9:31 Future Internet, Inc. 0:9:32 Omnilux 0:9:33 OPTOVALLEY Co. Ltd. 0:9:34 Dream-Multimedia-Tv GmbH 0:9:35 Sandvine Incorporated 0:9:36 Ipetronik GmbH & Co.KG 0:9:37 Inventec Appliance Corp 0:9:38 Allot Communications 0:9:39 ShibaSoku Co.,Ltd. 0:9:3a Molex Fiber Optics 0:9:3b HYUNDAI NETWORKS INC. 0:9:3c Jacques Technologies P/L 0:9:3d Newisys,Inc. 0:9:3e C&I Technologies 0:9:3f Double-Win Enterpirse CO., LTD 0:9:4 MONDIAL electronic 0:9:40 AGFEO GmbH & Co. KG 0:9:41 Allied Telesis K.K. 0:9:42 CRESCO, LTD. 0:9:43 Cisco Systems 0:9:44 Cisco Systems 0:9:45 Palmmicro Communications Inc 0:9:46 Cluster Labs GmbH 0:9:47 Aztek, Inc. 0:9:48 Vista Control Systems, Corp. 0:9:49 Glyph Technologies Inc. 0:9:4a Homenet Communications 0:9:4b FillFactory NV 0:9:4c Communication Weaver Co.,Ltd. 0:9:4d Braintree Communications Pty Ltd 0:9:4e BARTECH SYSTEMS INTERNATIONAL, INC 0:9:4f elmegt GmbH & Co. KG 0:9:5 iTEC Technologies Ltd. 0:9:50 Independent Storage Corporation 0:9:51 Apogee Instruments, Inc 0:9:52 Auerswald GmbH & Co. KG 0:9:53 Linkage System Integration Co.Ltd. 0:9:54 AMiT spol. s. r. o. 0:9:55 Young Generation International Corp. 0:9:56 Network Systems Group, Ltd. (NSG) 0:9:57 Supercaller, Inc. 0:9:58 INTELNET S.A. 0:9:59 Sitecsoft 0:9:5a RACEWOOD TECHNOLOGY 0:9:5b Netgear, Inc. 0:9:5c Philips Medical Systems - Cardiac and Monitoring Systems (CM 0:9:5d Dialogue Technology Corp. 0:9:5e Masstech Group Inc. 0:9:5f Telebyte, Inc. 0:9:6 Esteem Networks 0:9:60 YOZAN Inc. 0:9:61 Switchgear and Instrumentation Ltd 0:9:62 Filetrac AS 0:9:63 Dominion Lasercom Inc. 0:9:64 Hi-Techniques 0:9:65 PRIVATE 0:9:66 Thales Navigation 0:9:67 Tachyon, Inc 0:9:68 TECHNOVENTURE, INC. 0:9:69 Meret Optical Communications 0:9:6a Cloverleaf Communications Inc. 0:9:6b IBM Corporation 0:9:6c Imedia Semiconductor Corp. 0:9:6d Powernet Technologies Corp. 0:9:6e GIANT ELECTRONICS LTD. 0:9:6f Beijing Zhongqing Elegant Tech. Corp.,Limited 0:9:7 Chrysalis Development 0:9:70 Vibration Research Corporation 0:9:71 Time Management, Inc. 0:9:72 Securebase,Inc 0:9:73 Lenten Technology Co., Ltd. 0:9:74 Innopia Technologies, Inc. 0:9:75 fSONA Communications Corporation 0:9:76 Datasoft ISDN Systems GmbH 0:9:77 Brunner Elektronik AG 0:9:78 AIJI System Co., Ltd. 0:9:79 Advanced Television Systems Committee, Inc. 0:9:7a Louis Design Labs. 0:9:7b Cisco Systems 0:9:7c Cisco Systems 0:9:7d SecWell Networks Oy 0:9:7e IMI TECHNOLOGY CO., LTD 0:9:7f Vsecure 2000 LTD. 0:9:8 VTech Technology Corp. 0:9:80 Power Zenith Inc. 0:9:81 Newport Networks 0:9:82 Loewe Opta GmbH 0:9:83 Gvision Incorporated 0:9:84 MyCasa Network Inc. 0:9:85 Auto Telecom Company 0:9:86 Metalink LTD. 0:9:87 NISHI NIPPON ELECTRIC WIRE & CABLE CO.,LTD. 0:9:88 Nudian Electron Co., Ltd. 0:9:89 VividLogic Inc. 0:9:8a EqualLogic Inc 0:9:8b Entropic Communications, Inc. 0:9:8c Option Wireless Sweden 0:9:8d DCT Ltd (Digital Communication Technologies Ltd) 0:9:8e ipcas GmbH 0:9:8f Cetacean Networks 0:9:9 Telenor Connect A/S 0:9:90 ACKSYS Communications & systems 0:9:91 GE Fanuc Automation Manufacturing, Inc. 0:9:92 InterEpoch Technology,INC. 0:9:93 Visteon Corporation 0:9:94 Cronyx Engineering 0:9:95 Castle Technology Ltd 0:9:96 RDI 0:9:97 Nortel Networks 0:9:98 Capinfo Company Limited 0:9:99 CP GEORGES RENAULT 0:9:9a ELMO COMPANY, LIMITED 0:9:9b Western Telematic Inc. 0:9:9c Naval Research Laboratory 0:9:9d Haliplex Communications 0:9:9e Testech, Inc. 0:9:9f VIDEX INC. 0:9:a SnedFar Technology Co., Ltd. 0:9:a0 Microtechno Corporation 0:9:a1 Telewise Communications, Inc. 0:9:a2 Interface Co., Ltd. 0:9:a3 Leadfly Techologies Corp. Ltd. 0:9:a4 HARTEC Corporation 0:9:a5 HANSUNG ELETRONIC INDUSTRIES DEVELOPMENT CO., LTD 0:9:a6 Ignis Optics, Inc. 0:9:a7 Bang & Olufsen A/S 0:9:a8 Eastmode Pte Ltd 0:9:a9 Ikanos Communications 0:9:aa Data Comm for Business, Inc. 0:9:ab Netcontrol Oy 0:9:ac LANVOICE 0:9:ad HYUNDAI SYSCOMM, INC. 0:9:ae OKANO ELECTRIC CO.,LTD 0:9:af e-generis 0:9:b MTL Instruments PLC 0:9:b0 Onkyo Corporation 0:9:b1 Kanematsu Electronics, Ltd. 0:9:b2 L&F Inc. 0:9:b3 MCM Systems Ltd 0:9:b4 KISAN TELECOM CO., LTD. 0:9:b5 3J Tech. Co., Ltd. 0:9:b6 Cisco Systems 0:9:b7 Cisco Systems 0:9:b8 Entise Systems 0:9:b9 Action Imaging Solutions 0:9:ba MAKU Informationstechik GmbH 0:9:bb MathStar, Inc. 0:9:bc Integrian, Inc. 0:9:bd Epygi Technologies, Ltd. 0:9:be Mamiya-OP Co.,Ltd. 0:9:bf Nintendo Co.,Ltd. 0:9:c Mayekawa Mfg. Co. Ltd. 0:9:c0 6WIND 0:9:c1 PROCES-DATA A/S 0:9:c2 PRIVATE 0:9:c3 NETAS 0:9:c4 Medicore Co., Ltd 0:9:c5 KINGENE Technology Corporation 0:9:c6 Visionics Corporation 0:9:c7 Movistec 0:9:c8 SINAGAWA TSUSHIN KEISOU SERVICE 0:9:c9 BlueWINC Co., Ltd. 0:9:ca iMaxNetworks(Shenzhen)Limited. 0:9:cb HBrain 0:9:cc Moog GmbH 0:9:cd HUDSON SOFT CO.,LTD. 0:9:ce SpaceBridge Semiconductor Corp. 0:9:cf iAd GmbH 0:9:d LEADER ELECTRONICS CORP. 0:9:d0 Versatel Networks 0:9:d1 SERANOA NETWORKS INC 0:9:d2 Mai Logic Inc. 0:9:d3 Western DataCom Co., Inc. 0:9:d4 Transtech Networks 0:9:d5 Signal Communication, Inc. 0:9:d6 KNC One GmbH 0:9:d7 DC Security Products 0:9:d8 PRIVATE 0:9:d9 Neoscale Systems, Inc 0:9:da Control Module Inc. 0:9:db eSpace 0:9:dc Galaxis Technology AG 0:9:dd Mavin Technology Inc. 0:9:de Samjin Information & Communications Co., Ltd. 0:9:df Vestel Komunikasyon Sanayi ve Ticaret A.S. 0:9:e Helix Technology Inc. 0:9:e0 XEMICS S.A. 0:9:e1 Gemtek Technology Co., Ltd. 0:9:e2 Sinbon Electronics Co., Ltd. 0:9:e3 Angel Iglesias S.A. 0:9:e4 K Tech Infosystem Inc. 0:9:e5 Hottinger Baldwin Messtechnik GmbH 0:9:e6 Cyber Switching Inc. 0:9:e7 ADC Techonology 0:9:e8 Cisco Systems 0:9:e9 Cisco Systems 0:9:ea YEM Inc. 0:9:eb HuMANDATA LTD. 0:9:ec Daktronics, Inc. 0:9:ed CipherOptics 0:9:ee MEIKYO ELECTRIC CO.,LTD 0:9:ef Vocera Communications 0:9:f Fortinet Inc. 0:9:f0 Shimizu Technology Inc. 0:9:f1 Yamaki Electric Corporation 0:9:f2 Cohu, Inc., Electronics Division 0:9:f3 WELL Communication Corp. 0:9:f4 Alcon Laboratories, Inc. 0:9:f5 Emerson Network Power Co.,Ltd 0:9:f6 Shenzhen Eastern Digital Tech Ltd. 0:9:f7 SED, a division of Calian 0:9:f8 UNIMO TECHNOLOGY CO., LTD. 0:9:f9 ART JAPAN CO., LTD. 0:9:fb Philips Medizinsysteme Boeblingen GmbH 0:9:fc IPFLEX Inc. 0:9:fd Ubinetics Limited 0:9:fe Daisy Technologies, Inc. 0:9:ff X.net 2000 GmbH 0:9d:8e CARDIAC RECORDERS, INC. 0:a0:0 CENTILLION NETWORKS, INC. 0:a0:1 DRS Signal Solutions 0:a0:10 SYSLOGIC DATENTECHNIK AG 0:a0:11 MUTOH INDUSTRIES LTD. 0:a0:12 B.A.T.M. ADVANCED TECHNOLOGIES 0:a0:13 TELTREND LTD. 0:a0:14 CSIR 0:a0:15 WYLE 0:a0:16 MICROPOLIS CORP. 0:a0:17 J B M CORPORATION 0:a0:18 CREATIVE CONTROLLERS, INC. 0:a0:19 NEBULA CONSULTANTS, INC. 0:a0:1a BINAR ELEKTRONIK AB 0:a0:1b PREMISYS COMMUNICATIONS, INC. 0:a0:1c NASCENT NETWORKS CORPORATION 0:a0:1d SIXNET 0:a0:1e EST CORPORATION 0:a0:1f TRICORD SYSTEMS, INC. 0:a0:2 LEEDS & NORTHRUP AUSTRALIA PTY LTD 0:a0:20 CITICORP/TTI 0:a0:21 General Dynamics 0:a0:22 CENTRE FOR DEVELOPMENT OF ADVANCED COMPUTING 0:a0:23 APPLIED CREATIVE TECHNOLOGY, INC. 0:a0:24 3COM CORPORATION 0:a0:25 REDCOM LABS INC. 0:a0:26 TELDAT, S.A. 0:a0:27 FIREPOWER SYSTEMS, INC. 0:a0:28 CONNER PERIPHERALS 0:a0:29 COULTER CORPORATION 0:a0:2a TRANCELL SYSTEMS 0:a0:2b TRANSITIONS RESEARCH CORP. 0:a0:2c interWAVE Communications 0:a0:2d 1394 Trade Association 0:a0:2e BRAND COMMUNICATIONS, LTD. 0:a0:2f PIRELLI CAVI 0:a0:3 STAEFA CONTROL SYSTEM 0:a0:30 CAPTOR NV/SA 0:a0:31 HAZELTINE CORPORATION, MS 1-17 0:a0:32 GES SINGAPORE PTE. LTD. 0:a0:33 imc MeBsysteme GmbH 0:a0:34 AXEL 0:a0:35 CYLINK CORPORATION 0:a0:36 APPLIED NETWORK TECHNOLOGY 0:a0:37 DATASCOPE CORPORATION 0:a0:38 EMAIL ELECTRONICS 0:a0:39 ROSS TECHNOLOGY, INC. 0:a0:3a KUBOTEK CORPORATION 0:a0:3b TOSHIN ELECTRIC CO., LTD. 0:a0:3c EG&G NUCLEAR INSTRUMENTS 0:a0:3d OPTO-22 0:a0:3e ATM FORUM 0:a0:3f COMPUTER SOCIETY MICROPROCESSOR & MICROPROCESSOR STANDARDS C 0:a0:4 NETPOWER, INC. 0:a0:40 APPLE COMPUTER 0:a0:41 INFICON 0:a0:42 SPUR PRODUCTS CORP. 0:a0:43 AMERICAN TECHNOLOGY LABS, INC. 0:a0:44 NTT IT CO., LTD. 0:a0:45 PHOENIX CONTACT GMBH & CO. 0:a0:46 SCITEX CORP. LTD. 0:a0:47 INTEGRATED FITNESS CORP. 0:a0:48 QUESTECH, LTD. 0:a0:49 DIGITECH INDUSTRIES, INC. 0:a0:4a NISSHIN ELECTRIC CO., LTD. 0:a0:4b TFL LAN INC. 0:a0:4c INNOVATIVE SYSTEMS & TECHNOLOGIES, INC. 0:a0:4d EDA INSTRUMENTS, INC. 0:a0:4e VOELKER TECHNOLOGIES, INC. 0:a0:4f AMERITEC CORP. 0:a0:5 DANIEL INSTRUMENTS, LTD. 0:a0:50 CYPRESS SEMICONDUCTOR 0:a0:51 ANGIA COMMUNICATIONS. INC. 0:a0:52 STANILITE ELECTRONICS PTY. LTD 0:a0:53 COMPACT DEVICES, INC. 0:a0:54 PRIVATE 0:a0:55 Data Device Corporation 0:a0:56 MICROPROSS 0:a0:57 LANCOM Systems GmbH 0:a0:58 GLORY, LTD. 0:a0:59 HAMILTON HALLMARK 0:a0:5a KOFAX IMAGE PRODUCTS 0:a0:5b MARQUIP, INC. 0:a0:5c INVENTORY CONVERSION, INC./ 0:a0:5d CS COMPUTER SYSTEME GmbH 0:a0:5e MYRIAD LOGIC INC. 0:a0:5f BTG ENGINEERING BV 0:a0:6 IMAGE DATA PROCESSING SYSTEM GROUP 0:a0:60 ACER PERIPHERALS, INC. 0:a0:61 PURITAN BENNETT 0:a0:62 AES PRODATA 0:a0:63 JRL SYSTEMS, INC. 0:a0:64 KVB/ANALECT 0:a0:65 Symantec Corporation 0:a0:66 ISA CO., LTD. 0:a0:67 NETWORK SERVICES GROUP 0:a0:68 BHP LIMITED 0:a0:69 Symmetricom, Inc. 0:a0:6a Verilink Corporation 0:a0:6b DMS DORSCH MIKROSYSTEM GMBH 0:a0:6c SHINDENGEN ELECTRIC MFG. CO., LTD. 0:a0:6d MANNESMANN TALLY CORPORATION 0:a0:6e AUSTRON, INC. 0:a0:6f THE APPCON GROUP, INC. 0:a0:7 APEXX TECHNOLOGY, INC. 0:a0:70 COASTCOM 0:a0:71 VIDEO LOTTERY TECHNOLOGIES,INC 0:a0:72 OVATION SYSTEMS LTD. 0:a0:73 COM21, INC. 0:a0:74 PERCEPTION TECHNOLOGY 0:a0:75 MICRON TECHNOLOGY, INC. 0:a0:76 CARDWARE LAB, INC. 0:a0:77 FUJITSU NEXION, INC. 0:a0:78 Marconi Communications 0:a0:79 ALPS ELECTRIC (USA), INC. 0:a0:7a ADVANCED PERIPHERALS TECHNOLOGIES, INC. 0:a0:7b DAWN COMPUTER INCORPORATION 0:a0:7c TONYANG NYLON CO., LTD. 0:a0:7d SEEQ TECHNOLOGY, INC. 0:a0:7e AVID TECHNOLOGY, INC. 0:a0:7f GSM-SYNTEL, LTD. 0:a0:8 NETCORP 0:a0:80 SBE, Inc. 0:a0:81 ALCATEL DATA NETWORKS 0:a0:82 NKT ELEKTRONIK A/S 0:a0:83 ASIMMPHONY TURKEY 0:a0:84 DATAPLEX PTY. LTD. 0:a0:85 PRIVATE 0:a0:86 AMBER WAVE SYSTEMS, INC. 0:a0:87 Zarlink Semiconductor Ltd. 0:a0:88 ESSENTIAL COMMUNICATIONS 0:a0:89 XPOINT TECHNOLOGIES, INC. 0:a0:8a BROOKTROUT TECHNOLOGY, INC. 0:a0:8b ASTON ELECTRONIC DESIGNS LTD. 0:a0:8c MultiMedia LANs, Inc. 0:a0:8d JACOMO CORPORATION 0:a0:8e Nokia Internet Communications 0:a0:8f DESKNET SYSTEMS, INC. 0:a0:9 WHITETREE NETWORK 0:a0:90 TimeStep Corporation 0:a0:91 APPLICOM INTERNATIONAL 0:a0:92 H. BOLLMANN MANUFACTURERS, LTD 0:a0:93 B/E AEROSPACE, Inc. 0:a0:94 COMSAT CORPORATION 0:a0:95 ACACIA NETWORKS, INC. 0:a0:96 MITUMI ELECTRIC CO., LTD. 0:a0:97 JC INFORMATION SYSTEMS 0:a0:98 NETWORK APPLIANCE CORP. 0:a0:99 K-NET LTD. 0:a0:9a NIHON KOHDEN AMERICA 0:a0:9b QPSX COMMUNICATIONS, LTD. 0:a0:9c Xyplex, Inc. 0:a0:9d JOHNATHON FREEMAN TECHNOLOGIES 0:a0:9e ICTV 0:a0:9f COMMVISION CORP. 0:a0:a R.D.C. COMMUNICATION 0:a0:a0 COMPACT DATA, LTD. 0:a0:a1 EPIC DATA INC. 0:a0:a2 DIGICOM S.P.A. 0:a0:a3 RELIABLE POWER METERS 0:a0:a4 MICROS SYSTEMS, INC. 0:a0:a5 TEKNOR MICROSYSTEME, INC. 0:a0:a6 M.I. SYSTEMS, K.K. 0:a0:a7 VORAX CORPORATION 0:a0:a8 RENEX CORPORATION 0:a0:a9 NAVTEL COMMUNICATIONS INC. 0:a0:aa SPACELABS MEDICAL 0:a0:ab NETCS INFORMATIONSTECHNIK GMBH 0:a0:ac GILAT SATELLITE NETWORKS, LTD. 0:a0:ad MARCONI SPA 0:a0:ae NUCOM SYSTEMS, INC. 0:a0:af WMS INDUSTRIES 0:a0:b COMPUTEX CO., LTD. 0:a0:b0 I-O DATA DEVICE, INC. 0:a0:b1 FIRST VIRTUAL CORPORATION 0:a0:b2 SHIMA SEIKI 0:a0:b3 ZYKRONIX 0:a0:b4 TEXAS MICROSYSTEMS, INC. 0:a0:b5 3H TECHNOLOGY 0:a0:b6 SANRITZ AUTOMATION CO., LTD. 0:a0:b7 CORDANT, INC. 0:a0:b8 SYMBIOS LOGIC INC. 0:a0:b9 EAGLE TECHNOLOGY, INC. 0:a0:ba PATTON ELECTRONICS CO. 0:a0:bb HILAN GMBH 0:a0:bc VIASAT, INCORPORATED 0:a0:bd I-TECH CORP. 0:a0:be INTEGRATED CIRCUIT SYSTEMS, INC. COMMUNICATIONS GROUP 0:a0:bf WIRELESS DATA GROUP MOTOROLA 0:a0:c KINGMAX TECHNOLOGY, INC. 0:a0:c0 DIGITAL LINK CORP. 0:a0:c1 ORTIVUS MEDICAL AB 0:a0:c2 R.A. SYSTEMS CO., LTD. 0:a0:c3 UNICOMPUTER GMBH 0:a0:c4 CRISTIE ELECTRONICS LTD. 0:a0:c5 ZYXEL COMMUNICATION 0:a0:c6 QUALCOMM INCORPORATED 0:a0:c7 TADIRAN TELECOMMUNICATIONS 0:a0:c8 ADTRAN INC. 0:a0:c9 INTEL CORPORATION - HF1-06 0:a0:ca FUJITSU DENSO LTD. 0:a0:cb ARK TELECOMMUNICATIONS, INC. 0:a0:cc LITE-ON COMMUNICATIONS, INC. 0:a0:cd DR. JOHANNES HEIDENHAIN GmbH 0:a0:ce ASTROCOM CORPORATION 0:a0:cf SOTAS, INC. 0:a0:d THE PANDA PROJECT 0:a0:d0 TEN X TECHNOLOGY, INC. 0:a0:d1 INVENTEC CORPORATION 0:a0:d2 ALLIED TELESIS INTERNATIONAL CORPORATION 0:a0:d3 INSTEM COMPUTER SYSTEMS, LTD. 0:a0:d4 RADIOLAN, INC. 0:a0:d5 SIERRA WIRELESS INC. 0:a0:d6 SBE, INC. 0:a0:d7 KASTEN CHASE APPLIED RESEARCH 0:a0:d8 SPECTRA - TEK 0:a0:d9 CONVEX COMPUTER CORPORATION 0:a0:da INTEGRATED SYSTEMS Technology, Inc. 0:a0:db FISHER & PAYKEL PRODUCTION 0:a0:dc O.N. ELECTRONIC CO., LTD. 0:a0:dd AZONIX CORPORATION 0:a0:de YAMAHA CORPORATION 0:a0:df STS TECHNOLOGIES, INC. 0:a0:e VISUAL NETWORKS, INC. 0:a0:e0 TENNYSON TECHNOLOGIES PTY LTD 0:a0:e1 WESTPORT RESEARCH ASSOCIATES, INC. 0:a0:e2 KEISOKU GIKEN CORP. 0:a0:e3 XKL SYSTEMS CORP. 0:a0:e4 OPTIQUEST 0:a0:e5 NHC COMMUNICATIONS 0:a0:e6 DIALOGIC CORPORATION 0:a0:e7 CENTRAL DATA CORPORATION 0:a0:e8 REUTERS HOLDINGS PLC 0:a0:e9 ELECTRONIC RETAILING SYSTEMS INTERNATIONAL 0:a0:ea ETHERCOM CORP. 0:a0:eb Encore Networks 0:a0:ec TRANSMITTON LTD. 0:a0:ed Brooks Automation, Inc. 0:a0:ee NASHOBA NETWORKS 0:a0:ef LUCIDATA LTD. 0:a0:f Broadband Technologies 0:a0:f0 TORONTO MICROELECTRONICS INC. 0:a0:f1 MTI 0:a0:f2 INFOTEK COMMUNICATIONS, INC. 0:a0:f3 STAUBLI 0:a0:f4 GE 0:a0:f5 RADGUARD LTD. 0:a0:f6 AutoGas Systems Inc. 0:a0:f7 V.I COMPUTER CORP. 0:a0:f8 SYMBOL TECHNOLOGIES, INC. 0:a0:f9 BINTEC COMMUNICATIONS GMBH 0:a0:fa Marconi Communication GmbH 0:a0:fb TORAY ENGINEERING CO., LTD. 0:a0:fc IMAGE SCIENCES, INC. 0:a0:fd SCITEX DIGITAL PRINTING, INC. 0:a0:fe BOSTON TECHNOLOGY, INC. 0:a0:ff TELLABS OPERATIONS, INC. 0:a:0 Mediatek Corp. 0:a:1 SOHOware, Inc. 0:a:10 FAST media integrations AG 0:a:11 ExPet Technologies, Inc 0:a:12 Azylex Technology, Inc 0:a:13 Silent Witness 0:a:14 TECO a.s. 0:a:15 Silicon Data, Inc 0:a:16 Lassen Research 0:a:17 NESTAR COMMUNICATIONS, INC 0:a:18 Vichel Inc. 0:a:19 Valere Power, Inc. 0:a:1a Imerge Ltd 0:a:1b Stream Labs 0:a:1c Bridge Information Co., Ltd. 0:a:1d Optical Communications Products Inc. 0:a:1e Red-M Products Limited 0:a:1f ART WARE Telecommunication Co., Ltd. 0:a:2 ANNSO CO., LTD. 0:a:20 SVA Networks, Inc. 0:a:21 Integra Telecom Co. Ltd 0:a:22 Amperion Inc 0:a:23 Parama Networks Inc 0:a:24 Octave Communications 0:a:25 CERAGON NETWORKS 0:a:26 CEIA S.p.A. 0:a:27 Apple Computer, Inc. 0:a:28 Motorola 0:a:29 Pan Dacom Networking AG 0:a:2a QSI Systems Inc. 0:a:2b Etherstuff 0:a:2c Active Tchnology Corporation 0:a:2d PRIVATE 0:a:2e MAPLE NETWORKS CO., LTD 0:a:2f Artnix Inc. 0:a:3 ENDESA SERVICIOS, S.L. 0:a:30 Johnson Controls-ASG 0:a:31 HCV Wireless 0:a:32 Xsido Corporation 0:a:33 Sierra Logic, Inc. 0:a:34 Identicard Systems Incorporated 0:a:35 Xilinx 0:a:36 Synelec Telecom Multimedia 0:a:37 Procera Networks, Inc. 0:a:38 Netlock Technologies, Inc. 0:a:39 LoPA Information Technology 0:a:3a J-THREE INTERNATIONAL Holding Co., Ltd. 0:a:3b GCT Semiconductor, Inc 0:a:3c Enerpoint Ltd. 0:a:3d Elo Sistemas Eletronicos S.A. 0:a:3e EADS Telecom 0:a:3f Data East Corporation 0:a:4 3Com Europe Ltd 0:a:40 Crown Audio 0:a:41 Cisco Systems 0:a:42 Cisco Systems 0:a:43 Chunghwa Telecom Co., Ltd. 0:a:44 Avery Dennison Deutschland GmbH 0:a:45 Audio-Technica Corp. 0:a:46 ARO Controls SAS 0:a:47 Allied Vision Technologies 0:a:48 Albatron Technology 0:a:49 Acopia Networks 0:a:4a Targa Systems Ltd. 0:a:4b DataPower Technology, Inc. 0:a:4c Molecular Devices Corporation 0:a:4d Noritz Corporation 0:a:4e UNITEK Electronics INC. 0:a:4f Brain Boxes Limited 0:a:5 Widax Corp. 0:a:50 REMOTEK CORPORATION 0:a:51 GyroSignal Technology Co., Ltd. 0:a:52 AsiaRF Ltd. 0:a:53 Intronics, Incorporated 0:a:54 Laguna Hills, Inc. 0:a:55 MARKEM Corporation 0:a:56 HITACHI Maxell Ltd. 0:a:57 Hewlett-Packard Company - Standards 0:a:58 Ingenieur-Buero Freyer & Siegel 0:a:59 HW server 0:a:5a GreenNET Technologies Co.,Ltd. 0:a:5b Power-One as 0:a:5c Carel s.p.a. 0:a:5d PUC Founder (MSC) Berhad 0:a:5e 3COM Corporation 0:a:5f almedio inc. 0:a:6 Teledex LLC 0:a:60 Autostar Technology Pte Ltd 0:a:61 Cellinx Systems Inc. 0:a:62 Crinis Networks, Inc. 0:a:63 DHD GmbH 0:a:64 Eracom Technologies 0:a:65 GentechMedia.co.,ltd. 0:a:66 MITSUBISHI ELECTRIC SYSTEM & SERVICE CO.,LTD. 0:a:67 OngCorp 0:a:68 SolarFlare Communications, Inc. 0:a:69 SUNNY bell Technology Co., Ltd. 0:a:6a SVM Microwaves s.r.o. 0:a:6b Tadiran Telecom Business Systems LTD 0:a:6c Walchem Corporation 0:a:6d EKS Elektronikservice GmbH 0:a:6e Broadcast Technology Limited 0:a:6f ZyFLEX Technologies Inc 0:a:7 WebWayOne Ltd 0:a:70 MPLS Forum 0:a:71 Avrio Technologies, Inc 0:a:72 SimpleTech, Inc. 0:a:73 Scientific Atlanta 0:a:74 Manticom Networks Inc. 0:a:75 Cat Electronics 0:a:76 Beida Jade Bird Huaguang Technology Co.,Ltd 0:a:77 Bluewire Technologies LLC 0:a:78 OLITEC 0:a:79 corega K.K. 0:a:7a Kyoritsu Electric Co., Ltd. 0:a:7b Cornelius Consult 0:a:7c Tecton Ltd 0:a:7d Valo, Inc. 0:a:7e The Advantage Group 0:a:7f Teradon Industries, Inc 0:a:8 ALPINE ELECTRONICS, INC. 0:a:80 Telkonet Inc. 0:a:81 TEIMA Audiotex S.L. 0:a:82 TATSUTA SYSTEM ELECTRONICS CO.,LTD. 0:a:83 SALTO SYSTEMS S.L. 0:a:84 Rainsun Enterprise Co., Ltd. 0:a:85 PLAT'C2,Inc 0:a:86 Lenze 0:a:87 Integrated Micromachines Inc. 0:a:88 InCypher S.A. 0:a:89 Creval Systems, Inc. 0:a:8a Cisco Systems 0:a:8b Cisco Systems 0:a:8c Guardware Systems Ltd. 0:a:8d EUROTHERM LIMITED 0:a:8e Invacom Ltd 0:a:8f Aska International Inc. 0:a:9 TaraCom Integrated Products, Inc. 0:a:90 Bayside Interactive, Inc. 0:a:91 HemoCue AB 0:a:92 Presonus Corporation 0:a:93 W2 Networks, Inc. 0:a:94 ShangHai cellink CO., LTD 0:a:95 Apple Computer, Inc. 0:a:96 MEWTEL TECHNOLOGY INC. 0:a:97 SONICblue, Inc. 0:a:98 M+F Gwinner GmbH & Co 0:a:99 Dataradio Inc. 0:a:9a Aiptek International Inc 0:a:9b Towa Meccs Corporation 0:a:9c Server Technology, Inc. 0:a:9d King Young Technology Co. Ltd. 0:a:9e BroadWeb Corportation 0:a:9f Pannaway Technologies, Inc. 0:a:a SUNIX Co., Ltd. 0:a:a0 Cedar Point Communications 0:a:a1 V V S Limited 0:a:a2 SYSTEK INC. 0:a:a3 SHIMAFUJI ELECTRIC CO.,LTD. 0:a:a4 SHANGHAI SURVEILLANCE TECHNOLOGY CO,LTD 0:a:a5 MAXLINK INDUSTRIES LIMITED 0:a:a6 Hochiki Corporation 0:a:a7 FEI Company 0:a:a8 ePipe Pty. Ltd. 0:a:a9 Brooks Automation GmbH 0:a:aa AltiGen Communications Inc. 0:a:ab TOYOTA MACS, INC. 0:a:ac TerraTec Electronic GmbH 0:a:ad Stargames Corporation 0:a:ae Rosemount Process Analytical 0:a:af Pipal Systems 0:a:b Sealevel Systems, Inc. 0:a:b0 LOYTEC electronics GmbH 0:a:b1 GENETEC Corporation 0:a:b2 Fresnel Wireless Systems 0:a:b3 Fa. GIRA 0:a:b4 ETIC Telecommunications 0:a:b5 Digital Electronic Network 0:a:b6 COMPUNETIX, INC 0:a:b7 Cisco Systems 0:a:b8 Cisco Systems 0:a:b9 Astera Technologies Corp. 0:a:ba Arcon Technology Limited 0:a:bb Taiwan Secom Co,. Ltd 0:a:bc Seabridge Ltd. 0:a:bd Rupprecht & Patashnick Co. 0:a:be OPNET Technologies CO., LTD. 0:a:bf HIROTA SS 0:a:c Scientific Research Corporation 0:a:c0 Fuyoh Video Industry CO., LTD. 0:a:c1 Futuretel 0:a:c2 FiberHome Telecommunication Technologies CO.,LTD 0:a:c3 eM Technics Co., Ltd. 0:a:c4 Daewoo Teletech Co., Ltd 0:a:c5 Color Kinetics 0:a:c6 Ceterus Networks, Inc. 0:a:c7 Unication Group 0:a:c8 ZPSYS CO.,LTD. (Planning&Management) 0:a:c9 Zambeel Inc 0:a:ca YOKOYAMA SHOKAI CO.,Ltd. 0:a:cb XPAK MSA Group 0:a:cc Winnow Networks, Inc. 0:a:cd Sunrich Technology Limited 0:a:ce RADIANTECH, INC. 0:a:cf PROVIDEO Multimedia Co. Ltd. 0:a:d MergeOptics GmbH 0:a:d0 Niigata Develoment Center, F.I.T. Co., Ltd. 0:a:d1 MWS 0:a:d2 JEPICO Corporation 0:a:d3 INITECH Co., Ltd 0:a:d4 CoreBell Systems Inc. 0:a:d5 Brainchild Electronic Co., Ltd. 0:a:d6 BeamReach Networks 0:a:d7 Origin ELECTRIC CO.,LTD. 0:a:d8 IPCserv Technology Corp. 0:a:d9 Sony Ericsson Mobile Communications AB 0:a:da PRIVATE 0:a:db SkyPilot Network, Inc 0:a:dc RuggedCom Inc. 0:a:dd InSciTek Microsystems, Inc. 0:a:de Happy Communication Co., Ltd. 0:a:df Gennum Corporation 0:a:e Invivo Research Inc. 0:a:e0 Fujitsu Softek 0:a:e1 EG Technology 0:a:e2 Binatone Electronics International, Ltd 0:a:e3 YANG MEI TECHNOLOGY CO., LTD 0:a:e4 Wistron Corp. 0:a:e5 ScottCare Corporation 0:a:e6 Elitegroup Computer System Co. (ECS) 0:a:e7 ELIOP S.A. 0:a:e8 Cathay Roxus Information Technology Co. LTD 0:a:e9 AirVast Technology Inc. 0:a:ea ADAM ELEKTRONIK LTD.STI. 0:a:eb Shenzhen Tp-Link Technology Co; Ltd. 0:a:ec Koatsu Gas Kogyo Co., Ltd. 0:a:ed HARTING Vending G.m.b.H. & CO KG 0:a:ee GCD Hard- & Software GmbH 0:a:ef OTRUM ASA 0:a:f Ilryung Telesys, Inc 0:a:f0 SHIN-OH ELECTRONICS CO., LTD. R&D 0:a:f1 Clarity Design, Inc. 0:a:f2 NeoAxiom Corp. 0:a:f3 Cisco Systems 0:a:f4 Cisco Systems 0:a:f5 Airgo Networks, Inc. 0:a:f6 Computer Process Controls 0:a:f7 Broadcom Corp. 0:a:f8 American Telecare Inc. 0:a:f9 HiConnect, Inc. 0:a:fa Traverse Technologies Australia 0:a:fb Ambri Limited 0:a:fc Core Tec Communications, LLC 0:a:fd Viking Electronic Services 0:a:fe NovaPal Ltd 0:a:ff Kilchherr Elektronik AG 0:aa:0 INTEL CORPORATION 0:aa:1 INTEL CORPORATION 0:aa:2 INTEL CORPORATION 0:aa:3c OLIVETTI TELECOM SPA (OLTECO) 0:b0:17 InfoGear Technology Corp. 0:b0:19 Casi-Rusco 0:b0:1c Westport Technologies 0:b0:1e Rantic Labs, Inc. 0:b0:2a ORSYS GmbH 0:b0:2d ViaGate Technologies, Inc. 0:b0:3b HiQ Networks 0:b0:48 Marconi Communications Inc. 0:b0:4a Cisco Systems, Inc. 0:b0:52 Intellon Corporation 0:b0:64 Cisco Systems, Inc. 0:b0:69 Honewell Oy 0:b0:6d Jones Futurex Inc. 0:b0:80 Mannesmann Ipulsys B.V. 0:b0:86 LocSoft Limited 0:b0:8e Cisco Systems, Inc. 0:b0:9 Grass Valley Group 0:b0:91 Transmeta Corp. 0:b0:94 Alaris, Inc. 0:b0:9a Morrow Technologies Corp. 0:b0:9d Point Grey Research Inc. 0:b0:ac SIAE-Microelettronica S.p.A. 0:b0:ae Symmetricom 0:b0:b3 Xstreamis PLC 0:b0:c2 Cisco Systems, Inc. 0:b0:c7 Tellabs Operations, Inc. 0:b0:ce TECHNOLOGY RESCUE 0:b0:d0 Dell Computer Corp. 0:b0:db Nextcell, Inc. 0:b0:df Reliable Data Technology, Inc. 0:b0:e7 British Federal Ltd. 0:b0:ec EACEM 0:b0:ee Ajile Systems, Inc. 0:b0:f0 CALY NETWORKS 0:b0:f5 NetWorth Technologies, Inc. 0:b:0 FUJIAN START COMPUTER EQUIPMENT CO.,LTD 0:b:1 DAIICHI ELECTRONICS CO., LTD. 0:b:10 11wave Technonlogy Co.,Ltd 0:b:11 HIMEJI ABC TRADING CO.,LTD. 0:b:12 NURI Telecom Co., Ltd. 0:b:13 ZETRON INC 0:b:14 ViewSonic Corporation 0:b:15 Platypus Technology 0:b:16 Communication Machinery Corporation 0:b:17 MKS Instruments 0:b:18 PRIVATE 0:b:19 Vernier Networks, Inc. 0:b:1a Teltone Corporation 0:b:1b Systronix, Inc. 0:b:1c SIBCO bv 0:b:1d LayerZero Power Systems, Inc. 0:b:1e KAPPA opto-electronics GmbH 0:b:1f I CON Computer Co. 0:b:2 Dallmeier electronic 0:b:20 Hirata corporation 0:b:21 G-Star Communications Inc. 0:b:22 Environmental Systems and Services 0:b:23 Siemens Subscriber Networks 0:b:24 AirLogic 0:b:25 Aeluros 0:b:26 Wetek Corporation 0:b:27 Scion Corporation 0:b:28 Quatech Inc. 0:b:29 LG Industrial Systems Co.,Ltd. 0:b:2a HOWTEL Co., Ltd. 0:b:2b HOSTNET CORPORATION 0:b:2c Eiki Industrial Co. Ltd. 0:b:2d Danfoss Inc. 0:b:2e Cal-Comp Electronics (Thailand) Public Company Limited Taipe 0:b:2f bplan GmbH 0:b:3 Taekwang Industrial Co., Ltd 0:b:30 Beijing Gongye Science & Technology Co.,Ltd 0:b:31 Yantai ZhiYang Scientific and technology industry CO., LTD 0:b:32 VORMETRIC, INC. 0:b:33 Vivato 0:b:34 ShangHai Broadband Technologies CO.LTD 0:b:35 Quad Bit System co., Ltd. 0:b:36 Productivity Systems, Inc. 0:b:37 MANUFACTURE DES MONTRES ROLEX SA 0:b:38 Knuerr AG 0:b:39 Keisoku Giken Co.,Ltd. 0:b:3a Fortel DTV, Inc. 0:b:3b devolo AG 0:b:3c Cygnal Integrated Products, Inc. 0:b:3d CONTAL OK Ltd. 0:b:3e BittWare, Inc 0:b:3f Anthology Solutions Inc. 0:b:4 Volktek Corporation 0:b:40 OpNext Inc. 0:b:41 Ing. Buero Dr. Beutlhauser 0:b:42 commax Co., Ltd. 0:b:43 Microscan Systems, Inc. 0:b:44 Concord IDea Corp. 0:b:45 Cisco 0:b:46 Cisco 0:b:47 Advanced Energy 0:b:48 sofrel 0:b:49 RF-Link System Inc. 0:b:4a Visimetrics (UK) Ltd 0:b:4b VISIOWAVE SA 0:b:4c Clarion (M) Sdn Bhd 0:b:4d Emuzed 0:b:4e VertexRSI Antenna Products Division 0:b:4f Verifone, INC. 0:b:5 Pacific Broadband Networks 0:b:50 Oxygnet 0:b:51 Micetek International Inc. 0:b:52 JOYMAX ELECTRONICS CORP. 0:b:53 INITIUM Co., Ltd. 0:b:54 BiTMICRO Networks, Inc. 0:b:55 ADInstruments 0:b:56 Cybernetics 0:b:57 Silicon Laboratories 0:b:58 Astronautics C.A LTD 0:b:59 ScriptPro, LLC 0:b:5a HyperEdge 0:b:5b Rincon Research Corporation 0:b:5c Newtech Co.,Ltd 0:b:5d FUJITSU LIMITED 0:b:5e Audio Engineering Society Inc. 0:b:5f Cisco Systems 0:b:6 Motorola BCS 0:b:60 Cisco Systems 0:b:61 Friedrich Lütze GmbH &Co. 0:b:62 Ingenieurbüro Ingo Mohnen 0:b:63 Kaleidescape 0:b:64 Kieback & Peter GmbH & Co KG 0:b:65 Sy.A.C. srl 0:b:66 Teralink Communications 0:b:67 Topview Technology Corporation 0:b:68 Addvalue Communications Pte Ltd 0:b:69 Franke Finland Oy 0:b:6a Asiarock Incorporation 0:b:6b Wistron Neweb Corp. 0:b:6c Sychip Inc. 0:b:6d SOLECTRON JAPAN NAKANIIDA 0:b:6e Neff Instrument Corp. 0:b:6f Media Streaming Networks Inc 0:b:7 Voxpath Networks 0:b:70 Load Technology, Inc. 0:b:71 Litchfield Communications Inc. 0:b:72 Lawo AG 0:b:73 Kodeos Communications 0:b:74 Kingwave Technology Co., Ltd. 0:b:75 Iosoft Ltd. 0:b:76 ET&T Co. Ltd. 0:b:77 Cogent Systems, Inc. 0:b:78 TAIFATECH INC. 0:b:79 X-COM, Inc. 0:b:7a Wave Science Inc. 0:b:7b Test-Um Inc. 0:b:7c Telex Communications 0:b:7d SOLOMON EXTREME INTERNATIONAL LTD. 0:b:7e SAGINOMIYA Seisakusho Inc. 0:b:7f OmniWerks 0:b:8 Pillar Data Systems 0:b:80 Lycium Networks 0:b:81 Kaparel Corporation 0:b:82 Grandstream Networks, Inc. 0:b:83 DATAWATT B.V. 0:b:84 BODET 0:b:85 Airespace, Inc. 0:b:86 Aruba Networks 0:b:87 American Reliance Inc. 0:b:88 Vidisco ltd. 0:b:89 Top Global Technology, Ltd. 0:b:8a MITEQ Inc. 0:b:8b KERAJET, S.A. 0:b:8c flextronics israel 0:b:8d Avvio Networks 0:b:8e Ascent Corporation 0:b:8f AKITA ELECTRONICS SYSTEMS CO.,LTD. 0:b:9 Ifoundry Systems Singapore 0:b:90 Covaro Networks, Inc. 0:b:91 Aglaia Gesellschaft für Bildverarbeitung und Kommunikation m 0:b:92 Ascom Danmark A/S 0:b:93 Barmag Electronic 0:b:94 Digital Monitoring Products, Inc. 0:b:95 eBet Gaming Systems Pty Ltd 0:b:96 Innotrac Diagnostics Oy 0:b:97 Matsushita Electric Industrial Co.,Ltd. 0:b:98 NiceTechVision 0:b:99 SensAble Technologies, Inc. 0:b:9a Shanghai Ulink Telecom Equipment Co. Ltd. 0:b:9b Sirius System Co, Ltd. 0:b:9c TriBeam Technologies, Inc. 0:b:9d TwinMOS Technologies Inc. 0:b:9e Yasing Technology Corp. 0:b:9f Neue ELSA GmbH 0:b:a dBm Optics 0:b:a0 T&L Information Inc. 0:b:a1 SYSCOM Ltd. 0:b:a2 Sumitomo Electric Networks, Inc 0:b:a3 Siemens AG, I&S 0:b:a4 Shiron Satellite Communications Ltd. (1996) 0:b:a5 Quasar Cipta Mandiri, PT 0:b:a6 Miyakawa Electric Works Ltd. 0:b:a7 Maranti Networks 0:b:a8 HANBACK ELECTRONICS CO., LTD. 0:b:a9 CloudShield Technologies, Inc. 0:b:aa Aiphone co.,Ltd 0:b:ab Advantech Technology (CHINA) Co., Ltd. 0:b:ac 3Com Europe Ltd. 0:b:ad PC-PoS Inc. 0:b:ae Vitals System Inc. 0:b:af WOOJU COMMUNICATIONS Co,.Ltd 0:b:b Corrent Corporation 0:b:b0 Sysnet Telematica srl 0:b:b1 Super Star Technology Co., Ltd. 0:b:b2 SMALLBIG TECHNOLOGY 0:b:b3 RiT technologies Ltd. 0:b:b4 RDC Semiconductor Inc., 0:b:b5 nStor Technologies, Inc. 0:b:b6 Mototech Inc. 0:b:b7 Micro Systems Co.,Ltd. 0:b:b8 Kihoku Electronic Co. 0:b:b9 Imsys AB 0:b:ba Harmonic Broadband Access Networks 0:b:bb Etin Systems Co., Ltd 0:b:bc En Garde Systems, Inc. 0:b:bd Connexionz Limited 0:b:be Cisco Systems 0:b:bf Cisco Systems 0:b:c Agile Systems Inc. 0:b:c0 China IWNComm Co., Ltd. 0:b:c1 Bay Microsystems, Inc. 0:b:c2 Corinex Communication Corp. 0:b:c3 Multiplex, Inc. 0:b:c4 BIOTRONIK GmbH & Co 0:b:c5 SMC Networks, Inc. 0:b:c6 ISAC, Inc. 0:b:c7 ICET S.p.A. 0:b:c8 AirFlow Networks 0:b:c9 Electroline Equipment 0:b:ca DATAVAN International Corporation 0:b:cb Fagor Automation , S. Coop 0:b:cc JUSAN, S.A. 0:b:cd Compaq (HP) 0:b:ce Free2move AB 0:b:cf AGFA NDT INC. 0:b:d Air2U, Inc. 0:b:d0 XiMeta Technology Americas Inc. 0:b:d1 Aeronix, Inc. 0:b:d2 Remopro Technology Inc. 0:b:d3 cd3o 0:b:d4 Beijing Wise Technology & Science Development Co.Ltd 0:b:d5 Nvergence, Inc. 0:b:d6 Paxton Access Ltd 0:b:d7 MBB Gelma GmbH 0:b:d8 Industrial Scientific Corp. 0:b:d9 General Hydrogen 0:b:da EyeCross Co.,Inc. 0:b:db Dell ESG PCBA Test 0:b:dc AKCP 0:b:dd TOHOKU RICOH Co., LTD. 0:b:de TELDIX GmbH 0:b:df Shenzhen RouterD Networks Limited 0:b:e Trapeze Networks 0:b:e0 SercoNet Ltd. 0:b:e1 Nokia NET Product Operations 0:b:e2 Lumenera Corporation 0:b:e3 Key Stream Co., Ltd. 0:b:e4 Hosiden Corporation 0:b:e5 HIMS Korea Co., Ltd. 0:b:e6 Datel Electronics 0:b:e7 COMFLUX TECHNOLOGY INC. 0:b:e8 AOIP 0:b:e9 Actel Corporation 0:b:ea Zultys Technologies 0:b:eb Systegra AG 0:b:ec NIPPON ELECTRIC INSTRUMENT, INC. 0:b:ed ELM Inc. 0:b:ee inc.jet, Incorporated 0:b:ef Code Corporation 0:b:f Nyquist Industrial Control BV 0:b:f0 MoTEX Products Co., Ltd. 0:b:f1 LAP Laser Applikations 0:b:f2 Chih-Kan Technology Co., Ltd. 0:b:f3 BAE SYSTEMS 0:b:f4 PRIVATE 0:b:f5 Shanghai Sibo Telecom Technology Co.,Ltd 0:b:f6 Nitgen Co., Ltd 0:b:f7 NIDEK CO.,LTD 0:b:f8 Infinera 0:b:f9 Gemstone communications, Inc. 0:b:fa EXEMYS SRL 0:b:fb D-NET International Corporation 0:b:fc Cisco Systems 0:b:fd Cisco Systems 0:b:fe CASTEL Broadband Limited 0:b:ff Berkeley Camera Engineering 0:ba:c0 Biometric Access Company 0:bb:1 OCTOTHORPE CORP. 0:bb:f0 UNGERMANN-BASS INC. 0:c0:0 LANOPTICS, LTD. 0:c0:1 DIATEK PATIENT MANAGMENT 0:c0:10 HIRAKAWA HEWTECH CORP. 0:c0:11 INTERACTIVE COMPUTING DEVICES 0:c0:12 NETSPAN CORPORATION 0:c0:13 NETRIX 0:c0:14 TELEMATICS CALABASAS INT'L,INC 0:c0:15 NEW MEDIA CORPORATION 0:c0:16 ELECTRONIC THEATRE CONTROLS 0:c0:17 FORTE NETWORKS 0:c0:18 LANART CORPORATION 0:c0:19 LEAP TECHNOLOGY, INC. 0:c0:1a COROMETRICS MEDICAL SYSTEMS 0:c0:1b SOCKET COMMUNICATIONS, INC. 0:c0:1c INTERLINK COMMUNICATIONS LTD. 0:c0:1d GRAND JUNCTION NETWORKS, INC. 0:c0:1e LA FRANCAISE DES JEUX 0:c0:1f S.E.R.C.E.L. 0:c0:2 SERCOMM CORPORATION 0:c0:20 ARCO ELECTRONIC, CONTROL LTD. 0:c0:21 NETEXPRESS 0:c0:22 LASERMASTER TECHNOLOGIES, INC. 0:c0:23 TUTANKHAMON ELECTRONICS 0:c0:24 EDEN SISTEMAS DE COMPUTACAO SA 0:c0:25 DATAPRODUCTS CORPORATION 0:c0:26 LANS TECHNOLOGY CO., LTD. 0:c0:27 CIPHER SYSTEMS, INC. 0:c0:28 JASCO CORPORATION 0:c0:29 Nexans Deutschland AG - ANS 0:c0:2a OHKURA ELECTRIC CO., LTD. 0:c0:2b GERLOFF GESELLSCHAFT FUR 0:c0:2c CENTRUM COMMUNICATIONS, INC. 0:c0:2d FUJI PHOTO FILM CO., LTD. 0:c0:2e NETWIZ 0:c0:2f OKUMA CORPORATION 0:c0:3 GLOBALNET COMMUNICATIONS 0:c0:30 INTEGRATED ENGINEERING B. V. 0:c0:31 DESIGN RESEARCH SYSTEMS, INC. 0:c0:32 I-CUBED LIMITED 0:c0:33 TELEBIT COMMUNICATIONS APS 0:c0:34 TRANSACTION NETWORK 0:c0:35 QUINTAR COMPANY 0:c0:36 RAYTECH ELECTRONIC CORP. 0:c0:37 DYNATEM 0:c0:38 RASTER IMAGE PROCESSING SYSTEM 0:c0:39 Teridian Semiconductor Corporation 0:c0:3a MEN-MIKRO ELEKTRONIK GMBH 0:c0:3b MULTIACCESS COMPUTING CORP. 0:c0:3c TOWER TECH S.R.L. 0:c0:3d WIESEMANN & THEIS GMBH 0:c0:3e FA. GEBR. HELLER GMBH 0:c0:3f STORES AUTOMATED SYSTEMS, INC. 0:c0:4 JAPAN BUSINESS COMPUTER CO.LTD 0:c0:40 ECCI 0:c0:41 DIGITAL TRANSMISSION SYSTEMS 0:c0:42 DATALUX CORP. 0:c0:43 STRATACOM 0:c0:44 EMCOM CORPORATION 0:c0:45 ISOLATION SYSTEMS, LTD. 0:c0:46 KEMITRON LTD. 0:c0:47 UNIMICRO SYSTEMS, INC. 0:c0:48 BAY TECHNICAL ASSOCIATES 0:c0:49 U.S. ROBOTICS, INC. 0:c0:4a GROUP 2000 AG 0:c0:4b CREATIVE MICROSYSTEMS 0:c0:4c DEPARTMENT OF FOREIGN AFFAIRS 0:c0:4d MITEC, INC. 0:c0:4e COMTROL CORPORATION 0:c0:4f DELL COMPUTER CORPORATION 0:c0:5 LIVINGSTON ENTERPRISES, INC. 0:c0:50 TOYO DENKI SEIZO K.K. 0:c0:51 ADVANCED INTEGRATION RESEARCH 0:c0:52 BURR-BROWN 0:c0:53 Concerto Software 0:c0:54 NETWORK PERIPHERALS, LTD. 0:c0:55 MODULAR COMPUTING TECHNOLOGIES 0:c0:56 SOMELEC 0:c0:57 MYCO ELECTRONICS 0:c0:58 DATAEXPERT CORP. 0:c0:59 NIPPON DENSO CO., LTD. 0:c0:5a SEMAPHORE COMMUNICATIONS CORP. 0:c0:5b NETWORKS NORTHWEST, INC. 0:c0:5c ELONEX PLC 0:c0:5d L&N TECHNOLOGIES 0:c0:5e VARI-LITE, INC. 0:c0:5f FINE-PAL COMPANY LIMITED 0:c0:6 NIPPON AVIONICS CO., LTD. 0:c0:60 ID SCANDINAVIA AS 0:c0:61 SOLECTEK CORPORATION 0:c0:62 IMPULSE TECHNOLOGY 0:c0:63 MORNING STAR TECHNOLOGIES, INC 0:c0:64 GENERAL DATACOMM IND. INC. 0:c0:65 SCOPE COMMUNICATIONS, INC. 0:c0:66 DOCUPOINT, INC. 0:c0:67 UNITED BARCODE INDUSTRIES 0:c0:68 PHILIP DRAKE ELECTRONICS LTD. 0:c0:69 Axxcelera Broadband Wireless 0:c0:6a ZAHNER-ELEKTRIK GMBH & CO. KG 0:c0:6b OSI PLUS CORPORATION 0:c0:6c SVEC COMPUTER CORP. 0:c0:6d BOCA RESEARCH, INC. 0:c0:6e HAFT TECHNOLOGY, INC. 0:c0:6f KOMATSU LTD. 0:c0:7 PINNACLE DATA SYSTEMS, INC. 0:c0:70 SECTRA SECURE-TRANSMISSION AB 0:c0:71 AREANEX COMMUNICATIONS, INC. 0:c0:72 KNX LTD. 0:c0:73 XEDIA CORPORATION 0:c0:74 TOYODA AUTOMATIC LOOM 0:c0:75 XANTE CORPORATION 0:c0:76 I-DATA INTERNATIONAL A-S 0:c0:77 DAEWOO TELECOM LTD. 0:c0:78 COMPUTER SYSTEMS ENGINEERING 0:c0:79 FONSYS CO.,LTD. 0:c0:7a PRIVA B.V. 0:c0:7b ASCEND COMMUNICATIONS, INC. 0:c0:7c HIGHTECH INFORMATION 0:c0:7d RISC DEVELOPMENTS LTD. 0:c0:7e KUBOTA CORPORATION ELECTRONIC 0:c0:7f NUPON COMPUTING CORP. 0:c0:8 SECO SRL 0:c0:80 NETSTAR, INC. 0:c0:81 METRODATA LTD. 0:c0:82 MOORE PRODUCTS CO. 0:c0:83 TRACE MOUNTAIN PRODUCTS, INC. 0:c0:84 DATA LINK CORP. LTD. 0:c0:85 ELECTRONICS FOR IMAGING, INC. 0:c0:86 THE LYNK CORPORATION 0:c0:87 UUNET TECHNOLOGIES, INC. 0:c0:88 EKF ELEKTRONIK GMBH 0:c0:89 TELINDUS DISTRIBUTION 0:c0:8a LAUTERBACH DATENTECHNIK GMBH 0:c0:8b RISQ MODULAR SYSTEMS, INC. 0:c0:8c PERFORMANCE TECHNOLOGIES, INC. 0:c0:8d TRONIX PRODUCT DEVELOPMENT 0:c0:8e NETWORK INFORMATION TECHNOLOGY 0:c0:8f MATSUSHITA ELECTRIC WORKS, LTD 0:c0:9 KT TECHNOLOGY (S) PTE LTD 0:c0:90 PRAIM S.R.L. 0:c0:91 JABIL CIRCUIT, INC. 0:c0:92 MENNEN MEDICAL INC. 0:c0:93 ALTA RESEARCH CORP. 0:c0:94 VMX INC. 0:c0:95 ZNYX 0:c0:96 TAMURA CORPORATION 0:c0:97 ARCHIPEL SA 0:c0:98 CHUNTEX ELECTRONIC CO., LTD. 0:c0:99 YOSHIKI INDUSTRIAL CO.,LTD. 0:c0:9a PHOTONICS CORPORATION 0:c0:9b RELIANCE COMM/TEC, R-TEC 0:c0:9c TOA ELECTRONIC LTD. 0:c0:9d DISTRIBUTED SYSTEMS INT'L, INC 0:c0:9e CACHE COMPUTERS, INC. 0:c0:9f QUANTA COMPUTER, INC. 0:c0:a MICRO CRAFT 0:c0:a0 ADVANCE MICRO RESEARCH, INC. 0:c0:a1 TOKYO DENSHI SEKEI CO. 0:c0:a2 INTERMEDIUM A/S 0:c0:a3 DUAL ENTERPRISES CORPORATION 0:c0:a4 UNIGRAF OY 0:c0:a5 DICKENS DATA SYSTEMS 0:c0:a6 EXICOM AUSTRALIA PTY. LTD 0:c0:a7 SEEL LTD. 0:c0:a8 GVC CORPORATION 0:c0:a9 BARRON MCCANN LTD. 0:c0:aa SILICON VALLEY COMPUTER 0:c0:ab Telco Systems, Inc. 0:c0:ac GAMBIT COMPUTER COMMUNICATIONS 0:c0:ad MARBEN COMMUNICATION SYSTEMS 0:c0:ae TOWERCOM CO. INC. DBA PC HOUSE 0:c0:af TEKLOGIX INC. 0:c0:b NORCONTROL A.S. 0:c0:b0 GCC TECHNOLOGIES,INC. 0:c0:b1 GENIUS NET CO. 0:c0:b2 NORAND CORPORATION 0:c0:b3 COMSTAT DATACOMM CORPORATION 0:c0:b4 MYSON TECHNOLOGY, INC. 0:c0:b5 CORPORATE NETWORK SYSTEMS,INC. 0:c0:b6 Snap Appliance, Inc. 0:c0:b7 AMERICAN POWER CONVERSION CORP 0:c0:b8 FRASER'S HILL LTD. 0:c0:b9 FUNK SOFTWARE, INC. 0:c0:ba NETVANTAGE 0:c0:bb FORVAL CREATIVE, INC. 0:c0:bc TELECOM AUSTRALIA/CSSC 0:c0:bd INEX TECHNOLOGIES, INC. 0:c0:be ALCATEL - SEL 0:c0:bf TECHNOLOGY CONCEPTS, LTD. 0:c0:c RELIA TECHNOLGIES 0:c0:c0 SHORE MICROSYSTEMS, INC. 0:c0:c1 QUAD/GRAPHICS, INC. 0:c0:c2 INFINITE NETWORKS LTD. 0:c0:c3 ACUSON COMPUTED SONOGRAPHY 0:c0:c4 COMPUTER OPERATIONAL 0:c0:c5 SID INFORMATICA 0:c0:c6 PERSONAL MEDIA CORP. 0:c0:c7 SPARKTRUM MICROSYSTEMS, INC. 0:c0:c8 MICRO BYTE PTY. LTD. 0:c0:c9 ELSAG BAILEY PROCESS 0:c0:ca ALFA, INC. 0:c0:cb CONTROL TECHNOLOGY CORPORATION 0:c0:cc TELESCIENCES CO SYSTEMS, INC. 0:c0:cd COMELTA, S.A. 0:c0:ce CEI SYSTEMS & ENGINEERING PTE 0:c0:cf IMATRAN VOIMA OY 0:c0:d ADVANCED LOGIC RESEARCH, INC. 0:c0:d0 RATOC SYSTEM INC. 0:c0:d1 COMTREE TECHNOLOGY CORPORATION 0:c0:d2 SYNTELLECT, INC. 0:c0:d3 OLYMPUS IMAGE SYSTEMS, INC. 0:c0:d4 AXON NETWORKS, INC. 0:c0:d5 QUANCOM ELECTRONIC GMBH 0:c0:d6 J1 SYSTEMS, INC. 0:c0:d7 TAIWAN TRADING CENTER DBA 0:c0:d8 UNIVERSAL DATA SYSTEMS 0:c0:d9 QUINTE NETWORK CONFIDENTIALITY 0:c0:da NICE SYSTEMS LTD. 0:c0:db IPC CORPORATION (PTE) LTD. 0:c0:dc EOS TECHNOLOGIES, INC. 0:c0:dd QLogic Corporation 0:c0:de ZCOMM, INC. 0:c0:df KYE Systems Corp. 0:c0:e PSITECH, INC. 0:c0:e0 DSC COMMUNICATION CORP. 0:c0:e1 SONIC SOLUTIONS 0:c0:e2 CALCOMP, INC. 0:c0:e3 OSITECH COMMUNICATIONS, INC. 0:c0:e4 SIEMENS BUILDING 0:c0:e5 GESPAC, S.A. 0:c0:e6 Verilink Corporation 0:c0:e7 FIBERDATA AB 0:c0:e8 PLEXCOM, INC. 0:c0:e9 OAK SOLUTIONS, LTD. 0:c0:ea ARRAY TECHNOLOGY LTD. 0:c0:eb SEH COMPUTERTECHNIK GMBH 0:c0:ec DAUPHIN TECHNOLOGY 0:c0:ed US ARMY ELECTRONIC 0:c0:ee KYOCERA CORPORATION 0:c0:ef ABIT CORPORATION 0:c0:f QUANTUM SOFTWARE SYSTEMS LTD. 0:c0:f0 KINGSTON TECHNOLOGY CORP. 0:c0:f1 SHINKO ELECTRIC CO., LTD. 0:c0:f2 TRANSITION NETWORKS 0:c0:f3 NETWORK COMMUNICATIONS CORP. 0:c0:f4 INTERLINK SYSTEM CO., LTD. 0:c0:f5 METACOMP, INC. 0:c0:f6 CELAN TECHNOLOGY INC. 0:c0:f7 ENGAGE COMMUNICATION, INC. 0:c0:f8 ABOUT COMPUTING INC. 0:c0:f9 Motorola Embedded Computing Group 0:c0:fa CANARY COMMUNICATIONS, INC. 0:c0:fb ADVANCED TECHNOLOGY LABS 0:c0:fc ELASTIC REALITY, INC. 0:c0:fd PROSUM 0:c0:fe APTEC COMPUTER SYSTEMS, INC. 0:c0:ff DOT HILL SYSTEMS CORPORATION 0:c:0 BEB Industrie-Elektronik AG 0:c:1 Abatron AG 0:c:10 PNI Corporation 0:c:11 NIPPON DEMPA CO.,LTD. 0:c:12 Micro-Optronic-Messtechnik GmbH 0:c:13 MediaQ 0:c:14 Diagnostic Instruments, Inc. 0:c:15 CyberPower Systems, Inc. 0:c:16 Concorde Microsystems Inc. 0:c:17 AJA Video Systems Inc 0:c:18 Zenisu Keisoku Inc. 0:c:19 Telio Communications GmbH 0:c:1a Quest Technical Solutions Inc. 0:c:1b ORACOM Co, Ltd. 0:c:1c MicroWeb Co., Ltd. 0:c:1d Mettler & Fuchs AG 0:c:1e Global Cache 0:c:1f Glimmerglass Networks 0:c:2 ABB Oy 0:c:20 Fi WIn, Inc. 0:c:21 Faculty of Science and Technology, Keio University 0:c:22 Double D Electronics Ltd 0:c:23 Beijing Lanchuan Tech. Co., Ltd. 0:c:24 ANATOR 0:c:25 Allied Telesyn Networks 0:c:26 Weintek Labs. Inc. 0:c:27 Sammy Corporation 0:c:28 RIFATRON 0:c:29 VMware, Inc. 0:c:2a OCTTEL Communication Co., Ltd. 0:c:2b ELIAS Technology, Inc. 0:c:2c Enwiser Inc. 0:c:2d FullWave Technology Co., Ltd. 0:c:2e Openet information technology(shenzhen) Co., Ltd. 0:c:2f SeorimTechnology Co.,Ltd. 0:c:3 HDMI Licensing, LLC 0:c:30 Cisco 0:c:31 Cisco 0:c:32 Avionic Design Development GmbH 0:c:33 Compucase Enterprise Co. Ltd. 0:c:34 Vixen Co., Ltd. 0:c:35 KaVo Dental GmbH & Co. KG 0:c:36 SHARP TAKAYA ELECTRONICS INDUSTRY CO.,LTD. 0:c:37 Geomation, Inc. 0:c:38 TelcoBridges Inc. 0:c:39 Sentinel Wireless Inc. 0:c:3a Oxance 0:c:3b Orion Electric Co., Ltd. 0:c:3c MediaChorus, Inc. 0:c:3d Glsystech Co., Ltd. 0:c:3e Crest Audio 0:c:3f Cogent Defence & Security Networks, 0:c:4 Tecnova 0:c:40 Altech Controls 0:c:41 The Linksys Group, Inc. 0:c:42 Routerboard.com 0:c:43 Ralink Technology, Corp. 0:c:44 Automated Interfaces, Inc. 0:c:45 Animation Technologies Inc. 0:c:46 Allied Telesyn Inc. 0:c:47 SK Teletech(R&D Planning Team) 0:c:48 QoStek Corporation 0:c:49 Dangaard Telecom RTC Division A/S 0:c:4a Cygnus Microsystems Private Limited 0:c:4b Cheops Elektronik 0:c:4c Arcor AG&Co. 0:c:4d ACRA CONTROL 0:c:4e Winbest Technology CO,LT 0:c:4f UDTech Japan Corporation 0:c:5 RPA Reserch Co., Ltd. 0:c:50 Seagate Technology 0:c:51 Scientific Technologies Inc. 0:c:52 Roll Systems Inc. 0:c:53 PRIVATE 0:c:54 Pedestal Networks, Inc 0:c:55 Microlink Communications Inc. 0:c:56 Megatel Computer (1986) Corp. 0:c:57 MACKIE Engineering Services Belgium BVBA 0:c:58 M&S Systems 0:c:59 Indyme Electronics, Inc. 0:c:5a IBSmm Industrieelektronik Multimedia 0:c:5b HANWANG TECHNOLOGY CO.,LTD 0:c:5c GTN Systems B.V. 0:c:5d CHIC TECHNOLOGY (CHINA) CORP. 0:c:5e Calypso Medical 0:c:5f Avtec, Inc. 0:c:6 Nixvue Systems Pte Ltd 0:c:60 ACM Systems 0:c:61 AC Tech corporation DBA Advanced Digital 0:c:62 ABB Automation Technology Products AB, Control 0:c:63 Zenith Electronics Corporation 0:c:64 X2 MSA Group 0:c:65 Sunin Telecom 0:c:66 Pronto Networks Inc 0:c:67 OYO ELECTRIC CO.,LTD 0:c:68 Oasis Semiconductor, Inc. 0:c:69 National Radio Astronomy Observatory 0:c:6a MBARI 0:c:6b Kurz Industrie-Elektronik GmbH 0:c:6c Elgato Systems LLC 0:c:6d BOC Edwards 0:c:6e ASUSTEK COMPUTER INC. 0:c:6f Amtek system co.,LTD. 0:c:7 Iftest AG 0:c:70 ACC GmbH 0:c:71 Wybron, Inc 0:c:72 Tempearl Industrial Co., Ltd. 0:c:73 TELSON ELECTRONICS CO., LTD 0:c:74 RIVERTEC CORPORATION 0:c:75 Oriental integrated electronics. LTD 0:c:76 MICRO-STAR INTERNATIONAL CO., LTD. 0:c:77 Life Racing Ltd 0:c:78 In-Tech Electronics Limited 0:c:79 Extel Communications P/L 0:c:7a DaTARIUS Technologies GmbH 0:c:7b ALPHA PROJECT Co.,Ltd. 0:c:7c Internet Information Image Inc. 0:c:7d TEIKOKU ELECTRIC MFG. CO., LTD 0:c:7e Tellium Incorporated 0:c:7f synertronixx GmbH 0:c:8 HUMEX Technologies Corp. 0:c:80 Opelcomm Inc. 0:c:81 Nulec Industries Pty Ltd 0:c:82 NETWORK TECHNOLOGIES INC 0:c:83 Logical Solutions 0:c:84 Eazix, Inc. 0:c:85 Cisco Systems 0:c:86 Cisco Systems 0:c:87 ATI 0:c:88 Apache Micro Peripherals, Inc. 0:c:89 AC Electric Vehicles, Ltd. 0:c:8a Bose Corporation 0:c:8b Connect Tech Inc 0:c:8c KODICOM CO.,LTD. 0:c:8d MATRIX VISION GmbH 0:c:8e Mentor Engineering Inc 0:c:8f Nergal s.r.l. 0:c:9 Hitachi IE Systems Co., Ltd 0:c:90 Octasic Inc. 0:c:91 Riverhead Networks Inc. 0:c:92 WolfVision Gmbh 0:c:93 Xeline Co., Ltd. 0:c:94 United Electronic Industries, Inc. 0:c:95 PrimeNet 0:c:96 OQO, Inc. 0:c:97 NV ADB TTV Technologies SA 0:c:98 LETEK Communications Inc. 0:c:99 HITEL LINK Co.,Ltd 0:c:9a Hitech Electronics Corp. 0:c:9b EE Solutions, Inc 0:c:9c Chongho information & communications 0:c:9d AirWalk Communications, Inc. 0:c:9e MemoryLink Corp. 0:c:9f NKE Corporation 0:c:a Guangdong Province Electronic Technology Research Institute 0:c:a0 StorCase Technology, Inc. 0:c:a1 SIGMACOM Co., LTD. 0:c:a2 Scopus Network Technologies Ltd 0:c:a3 Rancho Technology, Inc. 0:c:a4 Prompttec Product Management GmbH 0:c:a5 Naman NZ LTd 0:c:a6 Mintera Corporation 0:c:a7 Metro (Suzhou) Technologies Co., Ltd. 0:c:a8 Garuda Networks Corporation 0:c:a9 Ebtron Inc. 0:c:aa Cubic Transportation Systems Inc 0:c:ab COMMEND International 0:c:ac Citizen Watch Co., Ltd. 0:c:ad BTU International 0:c:ae Ailocom Oy 0:c:af TRI TERM CO.,LTD. 0:c:b Broadbus Technologies 0:c:b0 Star Semiconductor Corporation 0:c:b1 Salland Engineering (Europe) BV 0:c:b2 safei Co., Ltd. 0:c:b3 ROUND Co.,Ltd. 0:c:b4 AutoCell Laboratories, Inc. 0:c:b5 Premier Technolgies, Inc 0:c:b6 NANJING SEU MOBILE & INTERNET TECHNOLOGY CO.,LTD 0:c:b7 Nanjing Huazhuo Electronics Co., Ltd. 0:c:b8 MEDION AG 0:c:b9 LEA 0:c:ba Jamex 0:c:bb ISKRAEMECO 0:c:bc Iscutum 0:c:bd Interface Masters, Inc 0:c:be PRIVATE 0:c:bf Holy Stone Ent. Co., Ltd. 0:c:c APPRO TECHNOLOGY INC. 0:c:c0 Genera Oy 0:c:c1 Cooper Industries Inc. 0:c:c2 PRIVATE 0:c:c3 BeWAN systems 0:c:c4 Tiptel AG 0:c:c5 Nextlink Co., Ltd. 0:c:c6 Ka-Ro electronics GmbH 0:c:c7 Intelligent Computer Solutions Inc. 0:c:c8 Xytronix Research & Design, Inc. 0:c:c9 ILWOO DATA & TECHNOLOGY CO.,LTD 0:c:ca Hitachi Global Storage Technologies 0:c:cb Design Combus Ltd 0:c:cc Aeroscout Ltd. 0:c:cd IEC - TC57 0:c:ce Cisco Systems 0:c:cf Cisco Systems 0:c:d Communications & Power Industries / Satcom Division 0:c:d0 Symetrix 0:c:d1 SFOM Technology Corp. 0:c:d2 Schaffner EMV AG 0:c:d3 Prettl Elektronik Radeberg GmbH 0:c:d4 Positron Public Safety Systems inc. 0:c:d5 Passave Inc. 0:c:d6 PARTNER TECH 0:c:d7 Nallatech Ltd 0:c:d8 M. K. Juchheim GmbH & Co 0:c:d9 Itcare Co., Ltd 0:c:da FreeHand Systems, Inc. 0:c:db Foundry Networks 0:c:dc BECS Technology, Inc 0:c:dd AOS Technologies AG 0:c:de ABB STOTZ-KONTAKT GmbH 0:c:df PULNiX America, Inc 0:c:e XtremeSpectrum, Inc. 0:c:e0 Trek Diagnostics Inc. 0:c:e1 The Open Group 0:c:e2 Rolls-Royce 0:c:e3 Option International N.V. 0:c:e4 NeuroCom International, Inc. 0:c:e5 Motorola BCS 0:c:e6 Meru Networks Inc 0:c:e7 MediaTek Inc. 0:c:e8 GuangZhou AnJuBao Co., Ltd 0:c:e9 BLOOMBERG L.P. 0:c:ea aphona Kommunikationssysteme 0:c:eb CNMP Networks, Inc. 0:c:ec Spectracom Corp. 0:c:ed Real Digital Media 0:c:ee jp-embedded 0:c:ef Open Networks Engineering Ltd 0:c:f Techno-One Co., Ltd 0:c:f0 M & N GmbH 0:c:f1 Intel Corporation 0:c:f2 GAMESA EÓLICA 0:c:f3 CALL IMAGE SA 0:c:f4 AKATSUKI ELECTRIC MFG.CO.,LTD. 0:c:f5 InfoExpress 0:c:f6 Sitecom Europe BV 0:c:f7 Nortel Networks 0:c:f8 Nortel Networks 0:c:f9 ITT Flygt AB 0:c:fa Digital Systems Corp 0:c:fb Korea Network Systems 0:c:fc S2io Technologies Corp 0:c:fd PRIVATE 0:c:fe Grand Electronic Co., Ltd 0:c:ff MRO-TEK LIMITED 0:cb:bd Cambridge Broadband Ltd. 0:cf:1c COMMUNICATION MACHINERY CORP. 0:d0:0 FERRAN SCIENTIFIC, INC. 0:d0:1 VST TECHNOLOGIES, INC. 0:d0:10 CONVERGENT NETWORKS, INC. 0:d0:11 PRISM VIDEO, INC. 0:d0:12 GATEWORKS CORP. 0:d0:13 PRIMEX AEROSPACE COMPANY 0:d0:14 ROOT, INC. 0:d0:15 UNIVEX MICROTECHNOLOGY CORP. 0:d0:16 SCM MICROSYSTEMS, INC. 0:d0:17 SYNTECH INFORMATION CO., LTD. 0:d0:18 QWES. COM, INC. 0:d0:19 DAINIPPON SCREEN CORPORATE 0:d0:1a URMET TLC S.P.A. 0:d0:1b MIMAKI ENGINEERING CO., LTD. 0:d0:1c SBS TECHNOLOGIES, 0:d0:1d FURUNO ELECTRIC CO., LTD. 0:d0:1e PINGTEL CORP. 0:d0:1f CTAM PTY. LTD. 0:d0:2 DITECH CORPORATION 0:d0:20 AIM SYSTEM, INC. 0:d0:21 REGENT ELECTRONICS CORP. 0:d0:22 INCREDIBLE TECHNOLOGIES, INC. 0:d0:23 INFORTREND TECHNOLOGY, INC. 0:d0:24 Cognex Corporation 0:d0:25 XROSSTECH, INC. 0:d0:26 HIRSCHMANN AUSTRIA GMBH 0:d0:27 APPLIED AUTOMATION, INC. 0:d0:28 OMNEON VIDEO NETWORKS 0:d0:29 WAKEFERN FOOD CORPORATION 0:d0:2a Voxent Systems Ltd. 0:d0:2b JETCELL, INC. 0:d0:2c CAMPBELL SCIENTIFIC, INC. 0:d0:2d ADEMCO 0:d0:2e COMMUNICATION AUTOMATION CORP. 0:d0:2f VLSI TECHNOLOGY INC. 0:d0:3 COMDA ENTERPRISES CORP. 0:d0:30 SAFETRAN SYSTEMS CORP. 0:d0:31 INDUSTRIAL LOGIC CORPORATION 0:d0:32 YANO ELECTRIC CO., LTD. 0:d0:33 DALIAN DAXIAN NETWORK 0:d0:34 ORMEC SYSTEMS CORP. 0:d0:35 BEHAVIOR TECH. COMPUTER CORP. 0:d0:36 TECHNOLOGY ATLANTA CORP. 0:d0:37 PHILIPS-DVS-LO BDR 0:d0:38 FIVEMERE, LTD. 0:d0:39 UTILICOM, INC. 0:d0:3a ZONEWORX, INC. 0:d0:3b VISION PRODUCTS PTY. LTD. 0:d0:3c Vieo, Inc. 0:d0:3d GALILEO TECHNOLOGY, LTD. 0:d0:3e ROCKETCHIPS, INC. 0:d0:3f AMERICAN COMMUNICATION 0:d0:4 PENTACOM LTD. 0:d0:40 SYSMATE CO., LTD. 0:d0:41 AMIGO TECHNOLOGY CO., LTD. 0:d0:42 MAHLO GMBH & CO. UG 0:d0:43 ZONAL RETAIL DATA SYSTEMS 0:d0:44 ALIDIAN NETWORKS, INC. 0:d0:45 KVASER AB 0:d0:46 DOLBY LABORATORIES, INC. 0:d0:47 XN TECHNOLOGIES 0:d0:48 ECTON, INC. 0:d0:49 IMPRESSTEK CO., LTD. 0:d0:4a PRESENCE TECHNOLOGY GMBH 0:d0:4b LA CIE GROUP S.A. 0:d0:4c EUROTEL TELECOM LTD. 0:d0:4d DIV OF RESEARCH & STATISTICS 0:d0:4e LOGIBAG 0:d0:4f BITRONICS, INC. 0:d0:5 ZHS ZEITMANAGEMENTSYSTEME 0:d0:50 ISKRATEL 0:d0:51 O2 MICRO, INC. 0:d0:52 ASCEND COMMUNICATIONS, INC. 0:d0:53 CONNECTED SYSTEMS 0:d0:54 SAS INSTITUTE INC. 0:d0:55 KATHREIN-WERKE KG 0:d0:56 SOMAT CORPORATION 0:d0:57 ULTRAK, INC. 0:d0:58 CISCO SYSTEMS, INC. 0:d0:59 AMBIT MICROSYSTEMS CORP. 0:d0:5a SYMBIONICS, LTD. 0:d0:5b ACROLOOP MOTION CONTROL 0:d0:5c TECHNOTREND SYSTEMTECHNIK GMBH 0:d0:5d INTELLIWORXX, INC. 0:d0:5e STRATABEAM TECHNOLOGY, INC. 0:d0:5f VALCOM, INC. 0:d0:6 CISCO SYSTEMS, INC. 0:d0:60 PANASONIC EUROPEAN 0:d0:61 TREMON ENTERPRISES CO., LTD. 0:d0:62 DIGIGRAM 0:d0:63 CISCO SYSTEMS, INC. 0:d0:64 MULTITEL 0:d0:65 TOKO ELECTRIC 0:d0:66 WINTRISS ENGINEERING CORP. 0:d0:67 CAMPIO COMMUNICATIONS 0:d0:68 IWILL CORPORATION 0:d0:69 TECHNOLOGIC SYSTEMS 0:d0:6a LINKUP SYSTEMS CORPORATION 0:d0:6b SR TELECOM INC. 0:d0:6c SHAREWAVE, INC. 0:d0:6d ACRISON, INC. 0:d0:6e TRENDVIEW RECORDERS LTD. 0:d0:6f KMC CONTROLS 0:d0:7 MIC ASSOCIATES, INC. 0:d0:70 LONG WELL ELECTRONICS CORP. 0:d0:71 ECHELON CORP. 0:d0:72 BROADLOGIC 0:d0:73 ACN ADVANCED COMMUNICATIONS 0:d0:74 TAQUA SYSTEMS, INC. 0:d0:75 ALARIS MEDICAL SYSTEMS, INC. 0:d0:76 MERRILL LYNCH & CO., INC. 0:d0:77 LUCENT TECHNOLOGIES 0:d0:78 ELTEX OF SWEDEN AB 0:d0:79 CISCO SYSTEMS, INC. 0:d0:7a AMAQUEST COMPUTER CORP. 0:d0:7b COMCAM INTERNATIONAL LTD. 0:d0:7c KOYO ELECTRONICS INC. CO.,LTD. 0:d0:7d COSINE COMMUNICATIONS 0:d0:7e KEYCORP LTD. 0:d0:7f STRATEGY & TECHNOLOGY, LIMITED 0:d0:8 MACTELL CORPORATION 0:d0:80 EXABYTE CORPORATION 0:d0:81 REAL TIME DEVICES USA, INC. 0:d0:82 IOWAVE INC. 0:d0:83 INVERTEX, INC. 0:d0:84 NEXCOMM SYSTEMS, INC. 0:d0:85 OTIS ELEVATOR COMPANY 0:d0:86 FOVEON, INC. 0:d0:87 MICROFIRST INC. 0:d0:88 Terayon Communications Systems 0:d0:89 DYNACOLOR, INC. 0:d0:8a PHOTRON USA 0:d0:8b ADVA Limited 0:d0:8c GENOA TECHNOLOGY, INC. 0:d0:8d PHOENIX GROUP, INC. 0:d0:8e NVISION INC. 0:d0:8f ARDENT TECHNOLOGIES, INC. 0:d0:9 HSING TECH. ENTERPRISE CO. LTD 0:d0:90 CISCO SYSTEMS, INC. 0:d0:91 SMARTSAN SYSTEMS, INC. 0:d0:92 GLENAYRE WESTERN MULTIPLEX 0:d0:93 TQ - COMPONENTS GMBH 0:d0:94 TIMELINE VISTA, INC. 0:d0:95 Alcatel North America ESD 0:d0:96 3COM EUROPE LTD. 0:d0:97 CISCO SYSTEMS, INC. 0:d0:98 Photon Dynamics Canada Inc. 0:d0:99 ELCARD OY 0:d0:9a FILANET CORPORATION 0:d0:9b SPECTEL LTD. 0:d0:9c KAPADIA COMMUNICATIONS 0:d0:9d VERIS INDUSTRIES 0:d0:9e 2WIRE, INC. 0:d0:9f NOVTEK TEST SYSTEMS 0:d0:a LANACCESS TELECOM S.A. 0:d0:a0 MIPS DENMARK 0:d0:a1 OSKAR VIERLING GMBH + CO. KG 0:d0:a2 INTEGRATED DEVICE 0:d0:a3 VOCAL DATA, INC. 0:d0:a4 ALANTRO COMMUNICATIONS 0:d0:a5 AMERICAN ARIUM 0:d0:a6 LANBIRD TECHNOLOGY CO., LTD. 0:d0:a7 TOKYO SOKKI KENKYUJO CO., LTD. 0:d0:a8 NETWORK ENGINES, INC. 0:d0:a9 SHINANO KENSHI CO., LTD. 0:d0:aa CHASE COMMUNICATIONS 0:d0:ab DELTAKABEL TELECOM CV 0:d0:ac GRAYSON WIRELESS 0:d0:ad TL INDUSTRIES 0:d0:ae ORESIS COMMUNICATIONS, INC. 0:d0:af CUTLER-HAMMER, INC. 0:d0:b RHK TECHNOLOGY, INC. 0:d0:b0 BITSWITCH LTD. 0:d0:b1 OMEGA ELECTRONICS SA 0:d0:b2 XIOTECH CORPORATION 0:d0:b3 DRS FLIGHT SAFETY AND 0:d0:b4 KATSUJIMA CO., LTD. 0:d0:b5 IPricot formerly DotCom 0:d0:b6 CRESCENT NETWORKS, INC. 0:d0:b7 INTEL CORPORATION 0:d0:b8 Iomega Corporation 0:d0:b9 MICROTEK INTERNATIONAL, INC. 0:d0:ba CISCO SYSTEMS, INC. 0:d0:bb CISCO SYSTEMS, INC. 0:d0:bc CISCO SYSTEMS, INC. 0:d0:bd SICAN GMBH 0:d0:be EMUTEC INC. 0:d0:bf PIVOTAL TECHNOLOGIES 0:d0:c SNIJDER MICRO SYSTEMS 0:d0:c0 CISCO SYSTEMS, INC. 0:d0:c1 HARMONIC DATA SYSTEMS, LTD. 0:d0:c2 BALTHAZAR TECHNOLOGY AB 0:d0:c3 VIVID TECHNOLOGY PTE, LTD. 0:d0:c4 TERATECH CORPORATION 0:d0:c5 COMPUTATIONAL SYSTEMS, INC. 0:d0:c6 THOMAS & BETTS CORP. 0:d0:c7 PATHWAY, INC. 0:d0:c8 I/O CONSULTING A/S 0:d0:c9 ADVANTECH CO., LTD. 0:d0:ca INTRINSYC SOFTWARE INC. 0:d0:cb DASAN CO., LTD. 0:d0:cc TECHNOLOGIES LYRE INC. 0:d0:cd ATAN TECHNOLOGY INC. 0:d0:ce ASYST ELECTRONIC 0:d0:cf MORETON BAY 0:d0:d MICROMERITICS INSTRUMENT 0:d0:d0 ZHONGXING TELECOM LTD. 0:d0:d1 SIROCCO SYSTEMS, INC. 0:d0:d2 EPILOG CORPORATION 0:d0:d3 CISCO SYSTEMS, INC. 0:d0:d4 V-BITS, INC. 0:d0:d5 GRUNDIG AG 0:d0:d6 AETHRA TELECOMUNICAZIONI 0:d0:d7 B2C2, INC. 0:d0:d8 3Com Corporation 0:d0:d9 DEDICATED MICROCOMPUTERS 0:d0:da TAICOM DATA SYSTEMS CO., LTD. 0:d0:db MCQUAY INTERNATIONAL 0:d0:dc MODULAR MINING SYSTEMS, INC. 0:d0:dd SUNRISE TELECOM, INC. 0:d0:de PHILIPS MULTIMEDIA NETWORK 0:d0:df KUZUMI ELECTRONICS, INC. 0:d0:e PLURIS, INC. 0:d0:e0 DOOIN ELECTRONICS CO. 0:d0:e1 AVIONITEK ISRAEL INC. 0:d0:e2 MRT MICRO, INC. 0:d0:e3 ELE-CHEM ENGINEERING CO., LTD. 0:d0:e4 CISCO SYSTEMS, INC. 0:d0:e5 SOLIDUM SYSTEMS CORP. 0:d0:e6 IBOND INC. 0:d0:e7 VCON TELECOMMUNICATION LTD. 0:d0:e8 MAC SYSTEM CO., LTD. 0:d0:e9 ADVANTAGE CENTURY 0:d0:ea NEXTONE COMMUNICATIONS, INC. 0:d0:eb LIGHTERA NETWORKS, INC. 0:d0:ec NAKAYO TELECOMMUNICATIONS, INC 0:d0:ed XIOX 0:d0:ee DICTAPHONE CORPORATION 0:d0:ef IGT 0:d0:f SPEECH DESIGN GMBH 0:d0:f0 CONVISION TECHNOLOGY GMBH 0:d0:f1 SEGA ENTERPRISES, LTD. 0:d0:f2 MONTEREY NETWORKS 0:d0:f3 SOLARI DI UDINE SPA 0:d0:f4 CARINTHIAN TECH INSTITUTE 0:d0:f5 ORANGE MICRO, INC. 0:d0:f6 Alcatel Canada 0:d0:f7 NEXT NETS CORPORATION 0:d0:f8 FUJIAN STAR TERMINAL 0:d0:f9 ACUTE COMMUNICATIONS CORP. 0:d0:fa RACAL GUARDATA 0:d0:fb TEK MICROSYSTEMS, INCORPORATED 0:d0:fc GRANITE MICROSYSTEMS 0:d0:fd OPTIMA TELE.COM, INC. 0:d0:fe ASTRAL POINT 0:d0:ff CISCO SYSTEMS, INC. 0:d:0 Seaway Networks Inc. 0:d:1 P&E Microcomputer Systems, Inc. 0:d:10 Embedtronics Oy 0:d:11 DENTSPLY - Gendex 0:d:12 AXELL Corporation 0:d:13 Wilhelm Rutenbeck GmbH&Co. 0:d:14 Vtech Innovation LP dba Advanced American Telephones 0:d:15 Voipac s.r.o. 0:d:16 UHS Systems Pty Ltd 0:d:17 Turbo Networks Co.Ltd 0:d:18 Sunitec Enterprise Co., Ltd. 0:d:19 ROBE Show lighting 0:d:1a Mustek System Inc. 0:d:1b Kyoto Electronics Manufacturing Co., Ltd. 0:d:1c I2E TELECOM 0:d:1d HIGH-TEK HARNESS ENT. CO., LTD. 0:d:1e Control Techniques 0:d:1f AV Digital 0:d:2 NEC Access Technica,Ltd 0:d:20 ASAHIKASEI TECHNOSYSTEM CO.,LTD. 0:d:21 WISCORE Inc. 0:d:22 Unitronics 0:d:23 Smart Solution, Inc 0:d:24 SENTEC E&E CO., LTD. 0:d:25 SANDEN CORPORATION 0:d:26 Primagraphics Limited 0:d:27 MICROPLEX Printware AG 0:d:28 Cisco 0:d:29 Cisco 0:d:2a Scanmatic AS 0:d:2b Racal Instruments 0:d:2c Patapsco Designs Ltd 0:d:2d NCT Deutschland GmbH 0:d:2e Matsushita Avionics Systems Corporation 0:d:2f AIN Comm.Tech.Co., LTD 0:d:3 Matrics, Inc. 0:d:30 IceFyre Semiconductor 0:d:31 Compellent Technologies, Inc. 0:d:32 DispenseSource, Inc. 0:d:33 Prediwave Corp. 0:d:34 Shell International Exploration and Production, Inc. 0:d:35 PAC International Ltd 0:d:36 Wu Han Routon Electronic Co., Ltd 0:d:37 WIPLUG 0:d:38 NISSIN INC. 0:d:39 Network Electronics 0:d:3a Microsoft Corp. 0:d:3b Microelectronics Technology Inc. 0:d:3c i.Tech Dynamic Ltd 0:d:3d Hammerhead Systems, Inc. 0:d:3e APLUX Communications Ltd. 0:d:3f VXI Technology 0:d:4 Foxboro Eckardt Development GmbH 0:d:40 Verint Loronix Video Solutions 0:d:41 Siemens AG ICM MP UC RD IT KLF1 0:d:42 Newbest Development Limited 0:d:43 DRS Tactical Systems Inc. 0:d:44 PRIVATE 0:d:45 Tottori SANYO Electric Co., Ltd. 0:d:46 SSD Drives, Inc. 0:d:47 Collex 0:d:48 AEWIN Technologies Co., Ltd. 0:d:49 Triton Systems of Delaware, Inc. 0:d:4a Steag ETA-Optik 0:d:4b Roku, LLC 0:d:4c Outline Electronics Ltd. 0:d:4d Ninelanes 0:d:4e NDR Co.,LTD. 0:d:4f Kenwood Corporation 0:d:5 cybernet manufacturing inc. 0:d:50 Galazar Networks 0:d:51 DIVR Systems, Inc. 0:d:52 Comart system 0:d:53 Beijing 5w Communication Corp. 0:d:54 3Com Europe Ltd 0:d:55 SANYCOM Technology Co.,Ltd 0:d:56 Dell PCBA Test 0:d:57 Fujitsu I-Network Systems Limited. 0:d:58 PRIVATE 0:d:59 Amity Systems, Inc. 0:d:5a Tiesse SpA 0:d:5b Smart Empire Investments Limited 0:d:5c Robert Bosch GmbH, VT-ATMO 0:d:5d Raritan Computer, Inc 0:d:5e NEC CustomTechnica, Ltd. 0:d:5f Minds Inc 0:d:6 Compulogic Limited 0:d:60 IBM Corporation 0:d:61 Giga-Byte Technology Co., Ltd. 0:d:62 Funkwerk Dabendorf GmbH 0:d:63 DENT Instruments, Inc. 0:d:64 COMAG Handels AG 0:d:65 Cisco Systems 0:d:66 Cisco Systems 0:d:67 BelAir Networks Inc. 0:d:68 Vinci Systems, Inc. 0:d:69 TMT&D Corporation 0:d:6a Redwood Technologies LTD 0:d:6b Mita-Teknik A/S 0:d:6c M-Audio 0:d:6d K-Tech Devices Corp. 0:d:6e K-Patents Oy 0:d:6f Ember Corporation 0:d:7 Calrec Audio Ltd 0:d:70 Datamax Corporation 0:d:71 boca systems 0:d:72 2Wire, Inc 0:d:73 Technical Support, Inc. 0:d:74 Sand Network Systems, Inc. 0:d:75 Kobian Pte Ltd - Taiwan Branch 0:d:76 Hokuto Denshi Co,. Ltd. 0:d:77 FalconStor Software 0:d:78 Engineering & Security 0:d:79 Dynamic Solutions Co,.Ltd. 0:d:7a DiGATTO Asia Pacific Pte Ltd 0:d:7b Consensys Computers Inc. 0:d:7c Codian Ltd 0:d:7d Afco Systems 0:d:7e Axiowave Networks, Inc. 0:d:7f MIDAS COMMUNICATION TECHNOLOGIES PTE LTD ( Foreign Branch) 0:d:8 AboveCable, Inc. 0:d:80 Online Development Inc 0:d:81 Pepperl+Fuchs GmbH 0:d:82 PHS srl 0:d:83 Sanmina-SCI Hungary Ltd. 0:d:84 Makus Inc. 0:d:85 Tapwave, Inc. 0:d:86 Huber + Suhner AG 0:d:87 Elitegroup Computer System Co. (ECS) 0:d:88 D-Link Corporation 0:d:89 Bils Technology Inc 0:d:8a Winners Electronics Co., Ltd. 0:d:8b T&D Corporation 0:d:8c Shanghai Wedone Digital Ltd. CO. 0:d:8d ProLinx Communication Gateways, Inc. 0:d:8e Koden Electronics Co., Ltd. 0:d:8f King Tsushin Kogyo Co., LTD. 0:d:9 Yuehua(Zhuhai) Electronic CO. LTD 0:d:90 Factum Electronics AB 0:d:91 Eclipse (HQ Espana) S.L. 0:d:92 Arima Communication Corporation 0:d:93 Apple Computer 0:d:94 AFAR Communications,Inc 0:d:95 Opti-cell, Inc. 0:d:96 Vtera Technology Inc. 0:d:97 Tropos Networks, Inc. 0:d:98 S.W.A.C. Schmitt-Walter Automation Consult GmbH 0:d:99 Orbital Sciences Corp.; Launch Systems Group 0:d:9a INFOTEC LTD 0:d:9b Heraeus Electro-Nite International N.V. 0:d:9c Elan GmbH & Co KG 0:d:9d Hewlett Packard 0:d:9e TOKUDEN OHIZUMI SEISAKUSYO Co.,Ltd. 0:d:9f RF Micro Devices 0:d:a Projectiondesign as 0:d:a0 NEDAP N.V. 0:d:a1 MIRAE ITS Co.,LTD. 0:d:a2 Infrant Technologies, Inc. 0:d:a3 Emerging Technologies Limited 0:d:a4 DOSCH & AMAND SYSTEMS AG 0:d:a5 Fabric7 Systems, Inc 0:d:a6 Universal Switching Corporation 0:d:a7 PRIVATE 0:d:a8 Teletronics Technology Corporation 0:d:a9 T.E.A.M. S.L. 0:d:aa S.A.Tehnology co.,Ltd. 0:d:ab Parker Hannifin GmbH Electromechanical Division Europe 0:d:ac Japan CBM Corporation 0:d:ad Dataprobe Inc 0:d:ae SAMSUNG HEAVY INDUSTRIES CO., LTD. 0:d:af Plexus Corp (UK) Ltd 0:d:b Buffalo Inc. 0:d:b0 Olym-tech Co.,Ltd. 0:d:b1 Japan Network Service Co., Ltd. 0:d:b2 Ammasso, Inc. 0:d:b3 SDO Communication Corperation 0:d:b4 NETASQ 0:d:b5 GLOBALSAT TECHNOLOGY CORPORATION 0:d:b6 Teknovus, Inc. 0:d:b7 SANKO ELECTRIC CO,.LTD 0:d:b8 SCHILLER AG 0:d:b9 PC Engines GmbH 0:d:ba Océ Document Technologies GmbH 0:d:bb Nippon Dentsu Co.,Ltd. 0:d:bc Cisco Systems 0:d:bd Cisco Systems 0:d:be Bel Fuse Europe Ltd.,UK 0:d:bf TekTone Sound & Signal Mfg., Inc. 0:d:c MDI Security Systems 0:d:c0 Spagat AS 0:d:c1 SafeWeb Inc 0:d:c2 PRIVATE 0:d:c3 First Communication, Inc. 0:d:c4 Emcore Corporation 0:d:c5 EchoStar International Corporation 0:d:c6 DigiRose Technology Co., Ltd. 0:d:c7 COSMIC ENGINEERING INC. 0:d:c8 AirMagnet, Inc 0:d:c9 THALES Elektronik Systeme GmbH 0:d:ca Tait Electronics 0:d:cb Petcomkorea Co., Ltd. 0:d:cc NEOSMART Corp. 0:d:cd GROUPE TXCOM 0:d:ce Dynavac Technology Pte Ltd 0:d:cf Cidra Corp. 0:d:d ITSupported, LLC 0:d:d0 TetraTec Instruments GmbH 0:d:d1 Stryker Corporation 0:d:d2 Simrad Optronics ASA 0:d:d3 SAMWOO Telecommunication Co.,Ltd. 0:d:d4 Revivio Inc. 0:d:d5 O'RITE TECHNOLOGY CO.,LTD 0:d:d6 ITI LTD 0:d:d7 Bright 0:d:d8 BBN 0:d:d9 Anton Paar GmbH 0:d:da ALLIED TELESIS K.K. 0:d:db AIRWAVE TECHNOLOGIES INC. 0:d:dc VAC 0:d:dd PROFÝLO TELRA ELEKTRONÝK SANAYÝ VE TÝCARET A.Þ. 0:d:de Joyteck Co., Ltd. 0:d:df Japan Image & Network Inc. 0:d:e Inqnet Systems, Inc. 0:d:e0 ICPDAS Co.,LTD 0:d:e1 Control Products, Inc. 0:d:e2 CMZ Sistemi Elettronici 0:d:e3 AT Sweden AB 0:d:e4 DIGINICS, Inc. 0:d:e5 Samsung Thales 0:d:e6 YOUNGBO ENGINEERING CO.,LTD 0:d:e7 Snap-on OEM Group 0:d:e8 Nasaco Electronics Pte. Ltd 0:d:e9 Napatech Aps 0:d:ea Kingtel Telecommunication Corp. 0:d:eb CompXs Limited 0:d:ec Cisco Systems 0:d:ed Cisco Systems 0:d:ee Andrew RF Power Amplifier Group 0:d:ef Soc. Coop. Bilanciai 0:d:f Finlux Ltd 0:d:f0 QCOM TECHNOLOGY INC. 0:d:f1 IONIX INC. 0:d:f2 PRIVATE 0:d:f3 Asmax Solutions 0:d:f4 Watertek Co. 0:d:f5 Teletronics International Inc. 0:d:f6 Technology Thesaurus Corp. 0:d:f7 Space Dynamics Lab 0:d:f8 ORGA Kartensysteme GmbH 0:d:f9 NDS Limited 0:d:fa Micro Control Systems Ltd. 0:d:fb Komax AG 0:d:fc ITFOR Inc. resarch and development 0:d:fd Huges Hi-Tech Inc., 0:d:fe Hauppauge Computer Works, Inc. 0:d:ff CHENMING MOLD INDUSTRY CORP. 0:dd:0 UNGERMANN-BASS INC. 0:dd:1 UNGERMANN-BASS INC. 0:dd:2 UNGERMANN-BASS INC. 0:dd:3 UNGERMANN-BASS INC. 0:dd:4 UNGERMANN-BASS INC. 0:dd:5 UNGERMANN-BASS INC. 0:dd:6 UNGERMANN-BASS INC. 0:dd:7 UNGERMANN-BASS INC. 0:dd:8 UNGERMANN-BASS INC. 0:dd:9 UNGERMANN-BASS INC. 0:dd:a UNGERMANN-BASS INC. 0:dd:b UNGERMANN-BASS INC. 0:dd:c UNGERMANN-BASS INC. 0:dd:d UNGERMANN-BASS INC. 0:dd:e UNGERMANN-BASS INC. 0:dd:f UNGERMANN-BASS INC. 0:e0:0 FUJITSU, LTD 0:e0:1 STRAND LIGHTING LIMITED 0:e0:10 HESS SB-AUTOMATENBAU GmbH 0:e0:11 UNIDEN SAN DIEGO R&D CENTER, INC. 0:e0:12 PLUTO TECHNOLOGIES INTERNATIONAL INC. 0:e0:13 EASTERN ELECTRONIC CO., LTD. 0:e0:14 CISCO SYSTEMS, INC. 0:e0:15 HEIWA CORPORATION 0:e0:16 RAPID CITY COMMUNICATIONS 0:e0:17 EXXACT GmbH 0:e0:18 ASUSTEK COMPUTER INC. 0:e0:19 ING. GIORDANO ELETTRONICA 0:e0:1a COMTEC SYSTEMS. CO., LTD. 0:e0:1b SPHERE COMMUNICATIONS, INC. 0:e0:1c MOBILITY ELECTRONICSY 0:e0:1d WebTV NETWORKS, INC. 0:e0:1e CISCO SYSTEMS, INC. 0:e0:1f AVIDIA Systems, Inc. 0:e0:2 CROSSROADS SYSTEMS, INC. 0:e0:20 TECNOMEN OY 0:e0:21 FREEGATE CORP. 0:e0:22 Analog Devices Inc. 0:e0:23 TELRAD 0:e0:24 GADZOOX NETWORKS 0:e0:25 dit CO., LTD. 0:e0:26 Redlake MASD LLC 0:e0:27 DUX, INC. 0:e0:28 APTIX CORPORATION 0:e0:29 STANDARD MICROSYSTEMS CORP. 0:e0:2a TANDBERG TELEVISION AS 0:e0:2b EXTREME NETWORKS 0:e0:2c AST COMPUTER 0:e0:2d InnoMediaLogic, Inc. 0:e0:2e SPC ELECTRONICS CORPORATION 0:e0:2f MCNS HOLDINGS, L.P. 0:e0:3 NOKIA WIRELESS BUSINESS COMMUN 0:e0:30 MELITA INTERNATIONAL CORP. 0:e0:31 HAGIWARA ELECTRIC CO., LTD. 0:e0:32 MISYS FINANCIAL SYSTEMS, LTD. 0:e0:33 E.E.P.D. GmbH 0:e0:34 CISCO SYSTEMS, INC. 0:e0:35 LOUGHBOROUGH SOUND IMAGES, PLC 0:e0:36 PIONEER CORPORATION 0:e0:37 CENTURY CORPORATION 0:e0:38 PROXIMA CORPORATION 0:e0:39 PARADYNE CORP. 0:e0:3a CABLETRON SYSTEMS, INC. 0:e0:3b PROMINET CORPORATION 0:e0:3c AdvanSys 0:e0:3d FOCON ELECTRONIC SYSTEMS A/S 0:e0:3e ALFATECH, INC. 0:e0:3f JATON CORPORATION 0:e0:4 PMC-SIERRA, INC. 0:e0:40 DeskStation Technology, Inc. 0:e0:41 CSPI 0:e0:42 Pacom Systems Ltd. 0:e0:43 VitalCom 0:e0:44 LSICS CORPORATION 0:e0:45 TOUCHWAVE, INC. 0:e0:46 BENTLY NEVADA CORP. 0:e0:47 INFOCUS SYSTEMS 0:e0:48 SDL COMMUNICATIONS, INC. 0:e0:49 MICROWI ELECTRONIC GmbH 0:e0:4a ENHANCED MESSAGING SYSTEMS, INC 0:e0:4b JUMP INDUSTRIELLE COMPUTERTECHNIK GmbH 0:e0:4c REALTEK SEMICONDUCTOR CORP. 0:e0:4d INTERNET INITIATIVE JAPAN, INC 0:e0:4e SANYO DENKI CO., LTD. 0:e0:4f CISCO SYSTEMS, INC. 0:e0:5 TECHNICAL CORP. 0:e0:50 EXECUTONE INFORMATION SYSTEMS, INC. 0:e0:51 TALX CORPORATION 0:e0:52 FOUNDRY NETWORKS, INC. 0:e0:53 CELLPORT LABS, INC. 0:e0:54 KODAI HITEC CO., LTD. 0:e0:55 INGENIERIA ELECTRONICA COMERCIAL INELCOM S.A. 0:e0:56 HOLONTECH CORPORATION 0:e0:57 HAN MICROTELECOM. CO., LTD. 0:e0:58 PHASE ONE DENMARK A/S 0:e0:59 CONTROLLED ENVIRONMENTS, LTD. 0:e0:5a GALEA NETWORK SECURITY 0:e0:5b WEST END SYSTEMS CORP. 0:e0:5c MATSUSHITA KOTOBUKI ELECTRONICS INDUSTRIES, LTD. 0:e0:5d UNITEC CO., LTD. 0:e0:5e JAPAN AVIATION ELECTRONICS INDUSTRY, LTD. 0:e0:5f e-Net, Inc. 0:e0:6 SILICON INTEGRATED SYS. CORP. 0:e0:60 SHERWOOD 0:e0:61 EdgePoint Networks, Inc. 0:e0:62 HOST ENGINEERING 0:e0:63 CABLETRON - YAGO SYSTEMS, INC. 0:e0:64 SAMSUNG ELECTRONICS 0:e0:65 OPTICAL ACCESS INTERNATIONAL 0:e0:66 ProMax Systems, Inc. 0:e0:67 eac AUTOMATION-CONSULTING GmbH 0:e0:68 MERRIMAC SYSTEMS INC. 0:e0:69 JAYCOR 0:e0:6a KAPSCH AG 0:e0:6b W&G SPECIAL PRODUCTS 0:e0:6c AEP Systems International Ltd 0:e0:6d COMPUWARE CORPORATION 0:e0:6e FAR SYSTEMS S.p.A. 0:e0:6f Terayon Communications Systems 0:e0:7 NETWORK ALCHEMY LTD. 0:e0:70 DH TECHNOLOGY 0:e0:71 EPIS MICROCOMPUTER 0:e0:72 LYNK 0:e0:73 NATIONAL AMUSEMENT NETWORK, INC. 0:e0:74 TIERNAN COMMUNICATIONS, INC. 0:e0:75 Verilink Corporation 0:e0:76 DEVELOPMENT CONCEPTS, INC. 0:e0:77 WEBGEAR, INC. 0:e0:78 BERKELEY NETWORKS 0:e0:79 A.T.N.R. 0:e0:7a MIKRODIDAKT AB 0:e0:7b BAY NETWORKS 0:e0:7c METTLER-TOLEDO, INC. 0:e0:7d NETRONIX, INC. 0:e0:7e WALT DISNEY IMAGINEERING 0:e0:7f LOGISTISTEM s.r.l. 0:e0:8 AMAZING CONTROLS! INC. 0:e0:80 CONTROL RESOURCES CORPORATION 0:e0:81 TYAN COMPUTER CORP. 0:e0:82 ANERMA 0:e0:83 JATO TECHNOLOGIES, INC. 0:e0:84 COMPULITE R&D 0:e0:85 GLOBAL MAINTECH, INC. 0:e0:86 CYBEX COMPUTER PRODUCTS 0:e0:87 LeCroy - Networking Productions Division 0:e0:88 LTX CORPORATION 0:e0:89 ION Networks, Inc. 0:e0:8a GEC AVERY, LTD. 0:e0:8b QLogic Corp. 0:e0:8c NEOPARADIGM LABS, INC. 0:e0:8d PRESSURE SYSTEMS, INC. 0:e0:8e UTSTARCOM 0:e0:8f CISCO SYSTEMS, INC. 0:e0:9 MARATHON TECHNOLOGIES CORP. 0:e0:90 BECKMAN LAB. AUTOMATION DIV. 0:e0:91 LG ELECTRONICS, INC. 0:e0:92 ADMTEK INCORPORATED 0:e0:93 ACKFIN NETWORKS 0:e0:94 OSAI SRL 0:e0:95 ADVANCED-VISION TECHNOLGIES CORP. 0:e0:96 SHIMADZU CORPORATION 0:e0:97 CARRIER ACCESS CORPORATION 0:e0:98 AboCom Systems, Inc. 0:e0:99 SAMSON AG 0:e0:9a POSITRON INDUSTRIES, INC. 0:e0:9b ENGAGE NETWORKS, INC. 0:e0:9c MII 0:e0:9d SARNOFF CORPORATION 0:e0:9e QUANTUM CORPORATION 0:e0:9f PIXEL VISION 0:e0:a DIBA, INC. 0:e0:a0 WILTRON CO. 0:e0:a1 HIMA PAUL HILDEBRANDT GmbH Co. KG 0:e0:a2 MICROSLATE INC. 0:e0:a3 CISCO SYSTEMS, INC. 0:e0:a4 ESAOTE S.p.A. 0:e0:a5 ComCore Semiconductor, Inc. 0:e0:a6 TELOGY NETWORKS, INC. 0:e0:a7 IPC INFORMATION SYSTEMS, INC. 0:e0:a8 SAT GmbH & Co. 0:e0:a9 FUNAI ELECTRIC CO., LTD. 0:e0:aa ELECTROSONIC LTD. 0:e0:ab DIMAT S.A. 0:e0:ac MIDSCO, INC. 0:e0:ad EES TECHNOLOGY, LTD. 0:e0:ae XAQTI CORPORATION 0:e0:af GENERAL DYNAMICS INFORMATION SYSTEMS 0:e0:b ROOFTOP COMMUNICATIONS CORP. 0:e0:b0 CISCO SYSTEMS, INC. 0:e0:b1 Alcatel North America ESD 0:e0:b2 TELMAX COMMUNICATIONS CORP. 0:e0:b3 EtherWAN Systems, Inc. 0:e0:b4 TECHNO SCOPE CO., LTD. 0:e0:b5 ARDENT COMMUNICATIONS CORP. 0:e0:b6 Entrada Networks 0:e0:b7 PI GROUP, LTD. 0:e0:b8 GATEWAY 2000 0:e0:b9 BYAS SYSTEMS 0:e0:ba BERGHOF AUTOMATIONSTECHNIK GmbH 0:e0:bb NBX CORPORATION 0:e0:bc SYMON COMMUNICATIONS, INC. 0:e0:bd INTERFACE SYSTEMS, INC. 0:e0:be GENROCO INTERNATIONAL, INC. 0:e0:bf TORRENT NETWORKING TECHNOLOGIES CORP. 0:e0:c MOTOROLA 0:e0:c0 SEIWA ELECTRIC MFG. CO., LTD. 0:e0:c1 MEMOREX TELEX JAPAN, LTD. 0:e0:c2 NECSY S.p.A. 0:e0:c3 SAKAI SYSTEM DEVELOPMENT CORP. 0:e0:c4 HORNER ELECTRIC, INC. 0:e0:c5 BCOM ELECTRONICS INC. 0:e0:c6 LINK2IT, L.L.C. 0:e0:c7 EUROTECH SRL 0:e0:c8 VIRTUAL ACCESS, LTD. 0:e0:c9 AutomatedLogic Corporation 0:e0:ca BEST DATA PRODUCTS 0:e0:cb RESON, INC. 0:e0:cc HERO SYSTEMS, LTD. 0:e0:cd SENSIS CORPORATION 0:e0:ce ARN 0:e0:cf INTEGRATED DEVICE TECHNOLOGY, INC. 0:e0:d RADIANT SYSTEMS 0:e0:d0 NETSPEED, INC. 0:e0:d1 TELSIS LIMITED 0:e0:d2 VERSANET COMMUNICATIONS, INC. 0:e0:d3 DATENTECHNIK GmbH 0:e0:d4 EXCELLENT COMPUTER 0:e0:d5 ARCXEL TECHNOLOGIES, INC. 0:e0:d6 COMPUTER & COMMUNICATION RESEARCH LAB. 0:e0:d7 SUNSHINE ELECTRONICS, INC. 0:e0:d8 LANBit Computer, Inc. 0:e0:d9 TAZMO CO., LTD. 0:e0:da Alcatel North America ESD 0:e0:db ViaVideo Communications, Inc. 0:e0:dc NEXWARE CORP. 0:e0:dd ZENITH ELECTRONICS CORPORATION 0:e0:de DATAX NV 0:e0:df KE KOMMUNIKATIONS-ELECTRONIK 0:e0:e AVALON IMAGING SYSTEMS, INC. 0:e0:e0 SI ELECTRONICS, LTD. 0:e0:e1 G2 NETWORKS, INC. 0:e0:e2 INNOVA CORP. 0:e0:e3 SK-ELEKTRONIK GmbH 0:e0:e4 FANUC ROBOTICS NORTH AMERICA, Inc. 0:e0:e5 CINCO NETWORKS, INC. 0:e0:e6 INCAA DATACOM B.V. 0:e0:e7 RAYTHEON E-SYSTEMS, INC. 0:e0:e8 GRETACODER Data Systems AG 0:e0:e9 DATA LABS, INC. 0:e0:ea INNOVAT COMMUNICATIONS, INC. 0:e0:eb DIGICOM SYSTEMS, INCORPORATED 0:e0:ec CELESTICA INC. 0:e0:ed SILICOM, LTD. 0:e0:ee MAREL HF 0:e0:ef DIONEX 0:e0:f SHANGHAI BAUD DATA 0:e0:f0 ABLER TECHNOLOGY, INC. 0:e0:f1 THAT CORPORATION 0:e0:f2 ARLOTTO COMNET, INC. 0:e0:f3 WebSprint Communications, Inc. 0:e0:f4 INSIDE Technology A/S 0:e0:f5 TELES AG 0:e0:f6 DECISION EUROPE 0:e0:f7 CISCO SYSTEMS, INC. 0:e0:f8 DICNA CONTROL AB 0:e0:f9 CISCO SYSTEMS, INC. 0:e0:fa TRL TECHNOLOGY, LTD. 0:e0:fb LEIGHTRONIX, INC. 0:e0:fc HUAWEI TECHNOLOGIES CO., LTD. 0:e0:fd A-TREND TECHNOLOGY CO., LTD. 0:e0:fe CISCO SYSTEMS, INC. 0:e0:ff SECURITY DYNAMICS TECHNOLOGIES, Inc. 0:e6:d3 NIXDORF COMPUTER CORP. 0:e:0 Atrie 0:e:1 ASIP Technologies Inc. 0:e:10 PRIVATE 0:e:11 BDT Büro- und Datentechnik GmbH & Co. KG 0:e:12 Adaptive Micro Systems Inc. 0:e:13 Accu-Sort Systems inc. 0:e:14 Visionary Solutions, Inc. 0:e:15 Tadlys LTD 0:e:16 SouthWing 0:e:17 PRIVATE 0:e:18 MyA Technology 0:e:19 LogicaCMG Pty Ltd 0:e:1a JPS Communications 0:e:1b IAV GmbH 0:e:1c Hach Company 0:e:1d ARION Technology Inc. 0:e:1e PRIVATE 0:e:1f TCL Networks Equipment Co., Ltd. 0:e:2 Advantech AMT Inc. 0:e:20 PalmSource, Inc. 0:e:21 MTU Friedrichshafen GmbH 0:e:22 PRIVATE 0:e:23 Incipient, Inc. 0:e:24 Huwell Technology Inc. 0:e:25 Hannae Technology Co., Ltd 0:e:26 Gincom Technology Corp. 0:e:27 Crere Networks, Inc. 0:e:28 Dynamic Ratings P/L 0:e:29 Shester Communications Inc 0:e:2a PRIVATE 0:e:2b Safari Technologies 0:e:2c Netcodec co. 0:e:2d Hyundai Digital Technology Co.,Ltd. 0:e:2e Edimax Technology Co., Ltd. 0:e:2f Disetronic Medical Systems AG 0:e:3 Aarohi Communications, Inc. 0:e:30 AERAS Networks, Inc. 0:e:31 Olympus BioSystems GmbH 0:e:32 Kontron Medical 0:e:33 Shuko Electronics Co.,Ltd 0:e:34 NexGen City, LP 0:e:35 Intel Corp 0:e:36 HEINESYS, Inc. 0:e:37 Harms & Wende GmbH & Co.KG 0:e:38 Cisco Systems 0:e:39 Cisco Systems 0:e:3a Cirrus Logic 0:e:3b Hawking Technologies, Inc. 0:e:3c TransAct Technoloiges Inc. 0:e:3d Televic N.V. 0:e:3e Sun Optronics Inc 0:e:3f Soronti, Inc. 0:e:4 CMA/Microdialysis AB 0:e:40 Nortel Networks 0:e:41 NIHON MECHATRONICS CO.,LTD. 0:e:42 Motic Incoporation Ltd. 0:e:43 G-Tek Electronics Sdn. Bhd. 0:e:44 Digital 5, Inc. 0:e:45 Beijing Newtry Electronic Technology Ltd 0:e:46 Niigata Seimitsu Co.,Ltd. 0:e:47 NCI System Co.,Ltd. 0:e:48 Lipman TransAction Solutions 0:e:49 Forsway Scandinavia AB 0:e:4a Changchun Huayu WEBPAD Co.,LTD 0:e:4b atrium c and i 0:e:4c Bermai Inc. 0:e:4d Numesa Inc. 0:e:4e Waveplus Technology Co., Ltd. 0:e:4f Trajet GmbH 0:e:5 WIRELESS MATRIX CORP. 0:e:50 Thomson Telecom Belgium 0:e:51 tecna elettronica srl 0:e:52 Optium Corporation 0:e:53 AV TECH CORPORATION 0:e:54 AlphaCell Wireless Ltd. 0:e:55 AUVITRAN 0:e:56 4G Systems GmbH 0:e:57 Iworld Networking, Inc. 0:e:58 Sonos, Inc. 0:e:59 SAGEM SA 0:e:5a TELEFIELD inc. 0:e:5b ParkerVision - Direct2Data 0:e:5c Motorola BCS 0:e:5d Triple Play Technologies A/S 0:e:5e Beijing Raisecom Science & Technology Development Co.,Ltd 0:e:5f activ-net GmbH & Co. KG 0:e:6 Team Simoco Ltd 0:e:60 360SUN Digital Broadband Corporation 0:e:61 MICROTROL LIMITED 0:e:62 Nortel Networks 0:e:63 Lemke Diagnostics GmbH 0:e:64 Elphel, Inc 0:e:65 TransCore 0:e:66 Hitachi Advanced Digital, Inc. 0:e:67 Eltis Microelectronics Ltd. 0:e:68 E-TOP Network Technology Inc. 0:e:69 China Electric Power Research Institute 0:e:6a 3COM EUROPE LTD 0:e:6b Janitza electronics GmbH 0:e:6c Device Drivers Limited 0:e:6d Murata Manufacturing Co., Ltd. 0:e:6e MICRELEC ELECTRONICS S.A 0:e:6f IRIS Corporation Berhad 0:e:7 Sony Ericsson Mobile Communications AB 0:e:70 in2 Networks 0:e:71 Gemstar Technology Development Ltd. 0:e:72 CTS electronics 0:e:73 Tpack A/S 0:e:74 Solar Telecom. Tech 0:e:75 New York Air Brake Corp. 0:e:76 GEMSOC INNOVISION INC. 0:e:77 Decru, Inc. 0:e:78 Amtelco 0:e:79 Ample Communications Inc. 0:e:7a GemWon Communications Co., Ltd. 0:e:7b Toshiba 0:e:7c Televes S.A. 0:e:7d Electronics Line 3000 Ltd. 0:e:7e Comprog Oy 0:e:7f Hewlett Packard 0:e:8 Sipura Technology, Inc. 0:e:80 Thomson Technology Inc 0:e:81 Devicescape Software, Inc. 0:e:82 Commtech Wireless 0:e:83 Cisco Systems 0:e:84 Cisco Systems 0:e:85 Catalyst Enterprises, Inc. 0:e:86 Alcatel North America 0:e:87 adp Gauselmann GmbH 0:e:88 VIDEOTRON CORP. 0:e:89 CLEMATIC 0:e:8a Avara Technologies Pty. Ltd. 0:e:8b Astarte Technology Co, Ltd. 0:e:8c Siemens AG A&D ET 0:e:8d Systems in Progress Holding GmbH 0:e:8e SparkLAN Communications, Inc. 0:e:8f Sercomm Corp. 0:e:9 Shenzhen Coship Software Co.,LTD. 0:e:90 PONICO CORP. 0:e:91 Northstar Technologies 0:e:92 Millinet Co., Ltd. 0:e:93 Milénio 3 Sistemas Electrónicos, Lda. 0:e:94 Maas International BV 0:e:95 Fujiya Denki Seisakusho Co.,Ltd. 0:e:96 Cubic Defense Applications, Inc. 0:e:97 Ultracker Technology CO., Inc 0:e:98 Vitec CC, INC. 0:e:99 Spectrum Digital, Inc 0:e:9a BOE TECHNOLOGY GROUP CO.,LTD 0:e:9b Ambit Microsystems Corporation 0:e:9c Pemstar 0:e:9d Video Networks Ltd 0:e:9e Topfield Co., Ltd 0:e:9f TEMIC SDS GmbH 0:e:a SAKUMA DESIGN OFFICE 0:e:a0 NetKlass Technology Inc. 0:e:a1 Formosa Teletek Corporation 0:e:a2 CyberGuard Corporation 0:e:a3 CNCR-IT CO.,LTD,HangZhou P.R.CHINA 0:e:a4 Certance Inc. 0:e:a5 BLIP Systems 0:e:a6 ASUSTEK COMPUTER INC. 0:e:a7 Endace Inc Ltd. 0:e:a8 United Technologists Europe Limited 0:e:a9 Shanghai Xun Shi Communications Equipment Ltd. Co. 0:e:aa Scalent Systems, Inc. 0:e:ab OctigaBay Systems Corporation 0:e:ac MINTRON ENTERPRISE CO., LTD. 0:e:ad Metanoia Technologies, Inc. 0:e:ae GAWELL TECHNOLOGIES CORP. 0:e:af CASTEL 0:e:b Netac Technology Co., Ltd. 0:e:b0 Solutions Radio BV 0:e:b1 Newcotech,Ltd 0:e:b2 Micro-Research Finland Oy 0:e:b3 LeftHand Networks 0:e:b4 GUANGZHOU GAOKE COMMUNICATIONS TECHNOLOGY CO.LTD. 0:e:b5 Ecastle Electronics Co., Ltd. 0:e:b6 Riverbed Technology, Inc. 0:e:b7 Knovative, Inc. 0:e:b8 Iiga co.,Ltd 0:e:b9 HASHIMOTO Electronics Industry Co.,Ltd. 0:e:ba HANMI SEMICONDUCTOR CO., LTD. 0:e:bb Everbee Networks 0:e:bc Cullmann GmbH 0:e:bd Burdick, a Quinton Compny 0:e:be B&B Electronics Manufacturing Co. 0:e:bf Remsdaq Limited 0:e:c Intel Corporation 0:e:c0 Nortel Networks 0:e:c1 MYNAH Technologies 0:e:c2 Lowrance Electronics, Inc. 0:e:c3 Logic Controls, Inc. 0:e:c4 Iskra Transmission d.d. 0:e:c5 Digital Multitools Inc 0:e:c6 ASIX ELECTRONICS CORP. 0:e:c7 Motorola Korea 0:e:c8 Zoran Corporation 0:e:c9 YOKO Technology Corp. 0:e:ca WTSS Inc 0:e:cb VineSys Technology 0:e:cc Tableau 0:e:cd SKOV A/S 0:e:ce S.I.T.T.I. S.p.A. 0:e:cf PROFIBUS Nutzerorganisation e.V. 0:e:d HESCH Schröder GmbH 0:e:d0 Privaris, Inc. 0:e:d1 Osaka Micro Computer. 0:e:d2 Filtronic plc 0:e:d3 Epicenter, Inc. 0:e:d4 CRESITT INDUSTRIE 0:e:d5 COPAN Systems Inc. 0:e:d6 Cisco Systems 0:e:d7 Cisco Systems 0:e:d8 Aktino, Inc. 0:e:d9 Aksys, Ltd. 0:e:da C-TECH UNITED CORP. 0:e:db XiNCOM Corp. 0:e:dc Tellion INC. 0:e:dd SHURE INCORPORATED 0:e:de REMEC, Inc. 0:e:df PLX Technology 0:e:e ESA elettronica S.P.A. 0:e:e0 Mcharge 0:e:e1 ExtremeSpeed Inc. 0:e:e2 Custom Engineering S.p.A. 0:e:e3 Chiyu Technology Co.,Ltd 0:e:e4 BOE TECHNOLOGY GROUP CO.,LTD 0:e:e5 bitWallet, Inc. 0:e:e6 Adimos Systems LTD 0:e:e7 AAC ELECTRONICS CORP. 0:e:e8 zioncom 0:e:e9 WayTech Development, Inc. 0:e:ea Shadong Luneng Jicheng Electronics,Co.,Ltd 0:e:eb Sandmartin(zhong shan)Electronics Co.,Ltd 0:e:ec Orban 0:e:ed Nokia Danmark A/S 0:e:ee Muco Industrie BV 0:e:ef PRIVATE 0:e:f ERMME 0:e:f0 Festo AG & Co. KG 0:e:f1 EZQUEST INC. 0:e:f2 Infinico Corporation 0:e:f3 Smarthome 0:e:f4 Shenzhen Kasda Digital Technology Co.,Ltd 0:e:f5 iPAC Technology Co., Ltd. 0:e:f6 E-TEN Information Systems Co., Ltd. 0:e:f7 Vulcan Portals Inc 0:e:f8 SBC ASI 0:e:f9 REA Elektronik GmbH 0:e:fa Optoway Technology Incorporation 0:e:fb Macey Enterprises 0:e:fc JTAG Technologies B.V. 0:e:fd FUJI PHOTO OPTICAL CO., LTD. 0:e:fe EndRun Technologies LLC 0:e:ff Megasolution,Inc. 0:f:0 Legra Systems, Inc. 0:f:1 DIGITALKS INC 0:f:10 RDM Corporation 0:f:11 Prodrive B.V. 0:f:12 Panasonic AVC Networks Germany GmbH 0:f:13 Nisca corporation 0:f:14 Mindray Co., Ltd. 0:f:15 Kjaerulff1 A/S 0:f:16 JAY HOW TECHNOLOGY CO., 0:f:17 Insta Elektro GmbH 0:f:18 Industrial Control Systems 0:f:19 Guidant Corporation 0:f:1a Gaming Support B.V. 0:f:1b Ego Systems Inc. 0:f:1c DigitAll World Co., Ltd 0:f:1d Cosmo Techs Co., Ltd. 0:f:1e Chengdu KT Electric Co.of High & New Technology 0:f:1f WW PCBA Test 0:f:2 Digicube Technology Co., Ltd 0:f:20 Hewlett Packard 0:f:21 Scientific Atlanta, Inc 0:f:22 Helius, Inc. 0:f:23 Cisco Systems 0:f:24 Cisco Systems 0:f:25 AimValley B.V. 0:f:26 WorldAccxx LLC 0:f:27 TEAL Electronics, Inc. 0:f:28 Itronix Corporation 0:f:29 Augmentix Corporation 0:f:2a Cableware Electronics 0:f:2b GREENBELL SYSTEMS 0:f:2c Uplogix, Inc. 0:f:2d CHUNG-HSIN ELECTRIC & MACHINERY MFG.CORP. 0:f:2e Megapower International Corp. 0:f:2f W-LINX TECHNOLOGY CO., LTD. 0:f:3 COM&C CO., LTD 0:f:30 Raza Microelectronics Inc 0:f:31 Prosilica 0:f:32 LuTong Electronic Technology Co.,Ltd 0:f:33 DUALi Inc. 0:f:34 Cisco Systems 0:f:35 Cisco Systems 0:f:36 Accurate Techhnologies, Inc. 0:f:37 Xambala Incorporated 0:f:38 Netstar 0:f:39 IRIS SENSORS 0:f:3a HISHARP 0:f:3b Fuji System Machines Co., Ltd. 0:f:3c Endeleo Limited 0:f:3d D-Link Corporation 0:f:3e CardioNet, Inc 0:f:3f Big Bear Networks 0:f:4 cim-usa inc 0:f:40 Optical Internetworking Forum 0:f:41 Zipher Ltd 0:f:42 Xalyo Systems 0:f:43 Wasabi Systems Inc. 0:f:44 Tivella Inc. 0:f:45 Stretch, Inc. 0:f:46 SINAR AG 0:f:47 ROBOX SPA 0:f:48 Polypix Inc. 0:f:49 Northover Solutions Limited 0:f:4a Kyushu-kyohan co.,ltd 0:f:4b Katana Technology 0:f:4c Elextech INC 0:f:4d Centrepoint Technologies Inc. 0:f:4e Cellink 0:f:4f Cadmus Technology Ltd 0:f:5 3B SYSTEM INC. 0:f:50 Baxall Limited 0:f:51 Azul Systems, Inc. 0:f:52 YORK Refrigeration, Marine & Controls 0:f:53 Level 5 Networks, Inc. 0:f:54 Entrelogic Corporation 0:f:55 Datawire Communication Networks Inc. 0:f:56 Continuum Photonics Inc 0:f:57 CABLELOGIC Co., Ltd. 0:f:58 Adder Technology Limited 0:f:59 Phonak Communications AG 0:f:5a Peribit Networks 0:f:5b Delta Information Systems, Inc. 0:f:5c Day One Digital Media Limited 0:f:5d 42Networks AB 0:f:5e Veo 0:f:5f Nicety Technologies Inc. (NTS) 0:f:6 Nortel Networks 0:f:60 Lifetron Co.,Ltd 0:f:61 Kiwi Networks 0:f:62 Alcatel Bell Space N.V. 0:f:63 Obzerv Technologies 0:f:64 D&R Electronica Weesp BV 0:f:65 icube Corp. 0:f:66 Cisco-Linksys 0:f:67 West Instruments 0:f:68 Vavic Network Technology, Inc. 0:f:69 SEW Eurodrive GmbH & Co. KG 0:f:6a Nortel Networks 0:f:6b GateWare Communications GmbH 0:f:6c ADDI-DATA GmbH 0:f:6d Midas Engineering 0:f:6e BBox 0:f:6f FTA Communication Technologies 0:f:7 Mangrove Systems, Inc. 0:f:70 Wintec Industries, inc. 0:f:71 Sanmei Electronics Co.,Ltd 0:f:72 Sandburst 0:f:73 Rockwell Samsung Automation 0:f:74 Qamcom Technology AB 0:f:75 First Silicon Solutions 0:f:76 Digital Keystone, Inc. 0:f:77 DENTUM CO.,LTD 0:f:78 Datacap Systems Inc 0:f:79 Bluetooth Interest Group Inc. 0:f:7a BeiJing NuQX Technology CO.,LTD 0:f:7b Arce Sistemas, S.A. 0:f:7c ACTi Corporation 0:f:7d Xirrus 0:f:7e UIS Abler Electronics Co.,Ltd. 0:f:7f UBSTORAGE Co.,Ltd. 0:f:8 Indagon Oy 0:f:80 Trinity Security Systems,Inc. 0:f:81 Secure Info Imaging 0:f:82 Mortara Instrument, Inc. 0:f:83 Brainium Technologies Inc. 0:f:84 Astute Networks, Inc. 0:f:85 ADDO-Japan Corporation 0:f:86 Research In Motion Limited 0:f:87 Maxcess International 0:f:88 AMETEK, Inc. 0:f:89 Winnertec System Co., Ltd. 0:f:8a WideView 0:f:8b Orion MultiSystems Inc 0:f:8c Gigawavetech Pte Ltd 0:f:8d FAST TV-Server AG 0:f:8e DONGYANG TELECOM CO.,LTD. 0:f:8f Cisco Systems 0:f:9 PRIVATE 0:f:90 Cisco Systems 0:f:91 Aerotelecom Co.,Ltd. 0:f:92 Microhard Systems Inc. 0:f:93 Landis+Gyr Ltd. 0:f:94 Genexis 0:f:95 ELECOM Co.,LTD Laneed Division 0:f:96 Critical Telecom Corp. 0:f:97 Avanex Corporation 0:f:98 Avamax Co. Ltd. 0:f:99 APAC opto Electronics Inc. 0:f:9a Synchrony, Inc. 0:f:9b Ross Video Limited 0:f:9c Panduit Corp 0:f:9d Newnham Research Ltd 0:f:9e Murrelektronik GmbH 0:f:9f Motorola BCS 0:f:a Clear Edge Networks 0:f:a0 CANON KOREA BUSINESS SOLUTIONS INC. 0:f:a1 Gigabit Systems Inc. 0:f:a2 Digital Path Networks 0:f:a3 Alpha Networks Inc. 0:f:a4 Sprecher Automation GmbH 0:f:a5 SMP / BWA Technology GmbH 0:f:a6 S2 Security Corporation 0:f:a7 Raptor Networks Technology 0:f:a8 Photometrics, Inc. 0:f:a9 PC Fabrik 0:f:aa Nexus Technologies 0:f:ab Kyushu Electronics Systems Inc. 0:f:ac IEEE 802.11 0:f:ad FMN communications GmbH 0:f:ae E2O Communications 0:f:af Dialog Inc. 0:f:b Kentima Technologies AB 0:f:b0 Compal Electronics,INC. 0:f:b1 Cognio Inc. 0:f:b2 Broadband Pacenet (India) Pvt. Ltd. 0:f:b3 Actiontec Electronics, Inc 0:f:b4 Timespace Technology 0:f:b5 NETGEAR Inc 0:f:b6 Europlex Technologies 0:f:b7 Cavium Networks 0:f:b8 CallURL Inc. 0:f:b9 Adaptive Instruments 0:f:ba Tevebox AB 0:f:bb Siemens AG, ICN M&L TDC EP 0:f:bc Onkey Technologies, Inc. 0:f:bd MRV Communications (Networks) LTD 0:f:be e-w/you Inc. 0:f:bf DGT Sp. z o.o. 0:f:c SYNCHRONIC ENGINEERING 0:f:c0 DELCOMp 0:f:c1 WAVE Corporation 0:f:c2 Uniwell Corporation 0:f:c3 PalmPalm Technology, Inc. 0:f:c4 NST co.,LTD. 0:f:c5 KeyMed Ltd 0:f:c6 Eurocom Industries A/S 0:f:c7 Dionica R&D Ltd. 0:f:c8 Chantry Networks 0:f:c9 Allnet GmbH 0:f:ca A-JIN TECHLINE CO, LTD 0:f:cb 3COM EUROPE LTD 0:f:cc Netopia, Inc. 0:f:cd Nortel Networks 0:f:ce Kikusui Electronics Corp. 0:f:cf Datawind Research 0:f:d Hunt Electronic Co., Ltd. 0:f:d0 ASTRI 0:f:d1 Applied Wireless Identifications Group, Inc. 0:f:d2 EWA Technologies, Inc. 0:f:d3 Digium 0:f:d4 Soundcraft 0:f:d5 Schwechat - RISE 0:f:d6 Sarotech Co., Ltd 0:f:d7 Harman Music Group 0:f:d8 Force, Inc. 0:f:d9 FlexDSL Telecommunications AG 0:f:da YAZAKI CORPORATION 0:f:db Westell Technologies 0:f:dc Ueda Japan Radio Co., Ltd. 0:f:dd SORDIN AB 0:f:de Sony Ericsson Mobile Communications AB 0:f:df SOLOMON Technology Corp. 0:f:e WaveSplitter Technologies, Inc. 0:f:e0 NComputing Co.,Ltd. 0:f:e1 ID DIGITAL CORPORATION 0:f:e2 Hangzhou Huawei-3Com Tech. Co., Ltd. 0:f:e3 Damm Cellular Systems A/S 0:f:e4 Pantech Co.,Ltd 0:f:e5 MERCURY SECURITY CORPORATION 0:f:e6 MBTech Systems, Inc. 0:f:e7 Lutron Electronics Co., Inc. 0:f:e8 Lobos, Inc. 0:f:e9 GW TECHNOLOGIES CO.,LTD. 0:f:ea Giga-Byte Technology Co.,LTD. 0:f:eb Cylon Controls 0:f:ec Arkus Inc. 0:f:ed Anam Electronics Co., Ltd 0:f:ee XTec, Incorporated 0:f:ef Thales e-Transactions GmbH 0:f:f Real ID Technology Co., Ltd. 0:f:f0 Sunray Enterprise 0:f:f1 nex-G Systems Pte.Ltd 0:f:f2 Loud Technologies Inc. 0:f:f3 Jung Myoung Communications&Technology 0:f:f4 Guntermann & Drunck GmbH 0:f:f5 GN&S company 0:f:f6 Darfon Electronics Corp. 0:f:f7 Cisco Systems 0:f:f8 Cisco Systems 0:f:f9 Valcretec, Inc. 0:f:fa Optinel Systems, Inc. 0:f:fb Nippon Denso Industry Co., Ltd. 0:f:fc Merit Li-Lin Ent. 0:f:fd Glorytek Network Inc. 0:f:fe G-PRO COMPUTER 0:f:ff Control4 10:0:0 PRIVATE 10:0:5a IBM CORPORATION 10:0:e8 NATIONAL SEMICONDUCTOR 11:0:aa PRIVATE 2:1c:7c PERQ SYSTEMS CORPORATION 2:60:86 LOGIC REPLACEMENT TECH. LTD. 2:60:8c 3COM CORPORATION 2:70:1 RACAL-DATACOM 2:70:b0 M/A-COM INC. COMPANIES 2:70:b3 DATA RECALL LTD 2:7:1 RACAL-DATACOM 2:9d:8e CARDIAC RECORDERS INC. 2:aa:3c OLIVETTI TELECOMM SPA (OLTECO) 2:bb:1 OCTOTHORPE CORP. 2:c0:8c 3COM CORPORATION 2:cf:1c COMMUNICATION MACHINERY CORP. 2:e6:d3 NIXDORF COMPUTER CORPORATION 4:a:e0 XMIT AG COMPUTER NETWORKS 4:e0:c4 TRIUMPH-ADLER AG 80:0:10 ATT BELL LABORATORIES 8:0:1 COMPUTERVISION CORPORATION 8:0:11 TEKTRONIX INC. 8:0:12 BELL ATLANTIC INTEGRATED SYST. 8:0:13 EXXON 8:0:14 EXCELAN 8:0:15 STC BUSINESS SYSTEMS 8:0:16 BARRISTER INFO SYS CORP 8:0:17 NATIONAL SEMICONDUCTOR 8:0:18 PIRELLI FOCOM NETWORKS 8:0:19 GENERAL ELECTRIC CORPORATION 8:0:1a TIARA/ 10NET 8:0:1b DATA GENERAL 8:0:1c KDD-KOKUSAI DEBNSIN DENWA CO. 8:0:1d ABLE COMMUNICATIONS INC. 8:0:1e APOLLO COMPUTER INC. 8:0:1f SHARP CORPORATION 8:0:2 BRIDGE COMMUNICATIONS INC. 8:0:20 SUN MICROSYSTEMS INC. 8:0:21 3M COMPANY 8:0:22 NBI INC. 8:0:23 Panasonic Communications Co., Ltd. 8:0:24 10NET COMMUNICATIONS/DCA 8:0:25 CONTROL DATA 8:0:26 NORSK DATA A.S. 8:0:27 CADMUS COMPUTER SYSTEMS 8:0:28 Texas Instruments 8:0:29 MEGATEK CORPORATION 8:0:2a MOSAIC TECHNOLOGIES INC. 8:0:2b DIGITAL EQUIPMENT CORPORATION 8:0:2c BRITTON LEE INC. 8:0:2d LAN-TEC INC. 8:0:2e METAPHOR COMPUTER SYSTEMS 8:0:2f PRIME COMPUTER INC. 8:0:3 ADVANCED COMPUTER COMM. 8:0:30 CERN *also* NETWORK RESEARCH CORPORATION *also* ROYAL MELBOURNE INST OF TECH 8:0:31 LITTLE MACHINES INC. 8:0:32 TIGAN INCORPORATED 8:0:33 BAUSCH & LOMB 8:0:34 FILENET CORPORATION 8:0:35 MICROFIVE CORPORATION 8:0:36 INTERGRAPH CORPORATION 8:0:37 FUJI-XEROX CO. LTD. 8:0:38 CII HONEYWELL BULL 8:0:39 SPIDER SYSTEMS LIMITED 8:0:3a ORCATECH INC. 8:0:3b TORUS SYSTEMS LIMITED 8:0:3c SCHLUMBERGER WELL SERVICES 8:0:3d CADNETIX CORPORATIONS 8:0:3e CODEX CORPORATION 8:0:3f FRED KOSCHARA ENTERPRISES 8:0:4 CROMEMCO INCORPORATED 8:0:40 FERRANTI COMPUTER SYS. LIMITED 8:0:41 RACAL-MILGO INFORMATION SYS.. 8:0:42 JAPAN MACNICS CORP. 8:0:43 PIXEL COMPUTER INC. 8:0:44 DAVID SYSTEMS INC. 8:0:45 CONCURRENT COMPUTER CORP. 8:0:46 SONY CORPORATION LTD. 8:0:47 SEQUENT COMPUTER SYSTEMS INC. 8:0:48 EUROTHERM GAUGING SYSTEMS 8:0:49 UNIVATION 8:0:4a BANYAN SYSTEMS INC. 8:0:4b PLANNING RESEARCH CORP. 8:0:4c HYDRA COMPUTER SYSTEMS INC. 8:0:4d CORVUS SYSTEMS INC. 8:0:4e 3COM EUROPE LTD. 8:0:4f CYGNET SYSTEMS 8:0:5 SYMBOLICS INC. 8:0:50 DAISY SYSTEMS CORP. 8:0:51 EXPERDATA 8:0:52 INSYSTEC 8:0:53 MIDDLE EAST TECH. UNIVERSITY 8:0:55 STANFORD TELECOMM. INC. 8:0:56 STANFORD LINEAR ACCEL. CENTER 8:0:57 EVANS & SUTHERLAND 8:0:58 SYSTEMS CONCEPTS 8:0:59 A/S MYCRON 8:0:5a IBM CORPORATION 8:0:5b VTA TECHNOLOGIES INC. 8:0:5c FOUR PHASE SYSTEMS 8:0:5d GOULD INC. 8:0:5e COUNTERPOINT COMPUTER INC. 8:0:5f SABER TECHNOLOGY CORP. 8:0:6 SIEMENS AG 8:0:60 INDUSTRIAL NETWORKING INC. 8:0:61 JAROGATE LTD. 8:0:62 GENERAL DYNAMICS 8:0:63 PLESSEY 8:0:64 AUTOPHON AG 8:0:65 GENRAD INC. 8:0:66 AGFA CORPORATION 8:0:67 COMDESIGN 8:0:68 RIDGE COMPUTERS 8:0:69 SILICON GRAPHICS INC. 8:0:6a ATT BELL LABORATORIES 8:0:6b ACCEL TECHNOLOGIES INC. 8:0:6c SUNTEK TECHNOLOGY INT'L 8:0:6d WHITECHAPEL COMPUTER WORKS 8:0:6e MASSCOMP 8:0:6f PHILIPS APELDOORN B.V. 8:0:7 APPLE COMPUTER INC. 8:0:70 MITSUBISHI ELECTRIC CORP. 8:0:71 MATRA (DSIE) 8:0:72 XEROX CORP UNIV GRANT PROGRAM 8:0:73 TECMAR INC. 8:0:74 CASIO COMPUTER CO. LTD. 8:0:75 DANSK DATA ELECTRONIK 8:0:76 PC LAN TECHNOLOGIES 8:0:77 TSL COMMUNICATIONS LTD. 8:0:78 ACCELL CORPORATION 8:0:79 THE DROID WORKS 8:0:7a INDATA 8:0:7b SANYO ELECTRIC CO. LTD. 8:0:7c VITALINK COMMUNICATIONS CORP. 8:0:7e AMALGAMATED WIRELESS(AUS) LTD 8:0:7f CARNEGIE-MELLON UNIVERSITY 8:0:8 BOLT BERANEK AND NEWMAN INC. 8:0:80 AES DATA INC. 8:0:81 ,ASTECH INC. 8:0:82 VERITAS SOFTWARE 8:0:83 Seiko Instruments Inc. 8:0:84 TOMEN ELECTRONICS CORP. 8:0:85 ELXSI 8:0:86 KONICA MINOLTA HOLDINGS, INC. 8:0:87 XYPLEX 8:0:88 MCDATA CORPORATION 8:0:89 KINETICS 8:0:8a PERFORMANCE TECHNOLOGY 8:0:8b PYRAMID TECHNOLOGY CORP. 8:0:8c NETWORK RESEARCH CORPORATION 8:0:8d XYVISION INC. 8:0:8e TANDEM COMPUTERS 8:0:8f CHIPCOM CORPORATION 8:0:9 HEWLETT PACKARD 8:0:90 SONOMA SYSTEMS 8:0:a NESTAR SYSTEMS INCORPORATED 8:0:b UNISYS CORPORATION 8:0:c MIKLYN DEVELOPMENT CO. 8:0:d INTERNATIONAL COMPUTERS LTD. 8:0:e NCR CORPORATION 8:0:f MITEL CORPORATION 8:14:43 UNIBRAIN S.A. 8:bb:cc AK-NORD EDV VERTRIEBSGES. mbH a0:6a:0 Verilink Corporation aa:0:0 DIGITAL EQUIPMENT CORPORATION aa:0:1 DIGITAL EQUIPMENT CORPORATION aa:0:2 DIGITAL EQUIPMENT CORPORATION aa:0:3 DIGITAL EQUIPMENT CORPORATION aa:0:4 DIGITAL EQUIPMENT CORPORATION ac:de:48 PRIVATE arpwatch-2.1a15/euppertolower.awk0100444000177400000340000000053707161230227016331 0ustar leressunsrcBEGIN { x["0"] = "0" x["1"] = "1" x["2"] = "2" x["3"] = "3" x["4"] = "4" x["5"] = "5" x["6"] = "6" x["7"] = "7" x["8"] = "8" x["9"] = "9" x["A"] = "a" x["B"] = "b" x["C"] = "c" x["D"] = "d" x["E"] = "e" x["F"] = "f" } { s = "" for (i = 1; i <= 6; ++i) { t = substr($0, i, 1) s = s x[t] } s = s substr($0, 7) print s next } arpwatch-2.1a15/fddi.h0100444000177400000340000000073706650511606013777 0ustar leressunsrc/* @(#) $Header: fddi.h,v 1.1 99/01/17 17:51:02 leres Exp $ (LBL) */ /* Support for IP-over-FDDI */ /* * 802.2 specific declarations */ struct llchdr { u_char llc_dsap; u_char llc_ssap; u_char llc_ctl; }; struct snaphdr { u_char snap_oid[3]; u_char snap_type[2]; }; struct fddi_header { u_char frame_ctl; u_char dst[6]; u_char src[6]; struct llchdr llc; struct snaphdr snap; }; arpwatch-2.1a15/file.c0100444000177400000340000000666007171706327014011 0ustar leressunsrc/* * Copyright (c) 1990, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ #ifndef lint static const char rcsid[] = "@(#) $Id: file.c,v 1.25 2000/10/13 22:29:42 leres Exp $ (LBL)"; #endif /* * file - arpwatch file i/o routines */ #include #include #include #include #if __STDC__ struct mbuf; struct rtentry; #endif #include #include #include #include #ifdef HAVE_MEMORY_H #include #endif #include #include #include #include #include #include "gnuc.h" #ifdef HAVE_OS_PROTO_H #include "os-proto.h" #endif #include "arpwatch.h" #include "ec.h" #include "file.h" int file_loop(register FILE *f, file_process fn, register const char *name) { register int n; register char *cp, *cp2, *h; u_int32_t a; register time_t t; register struct hostent *hp; char line[1024]; u_char e[6]; n = 0; while (fgets(line, sizeof(line), f)) { ++n; cp = line; cp2 = cp + strlen(cp) - 1; if (cp2 >= cp && *cp2 == '\n') *cp2++ = '\0'; if (*cp == '#') continue; if ((cp2 = strchr(cp, '\t')) == NULL) { syslog(LOG_ERR, "file_loop: %s:%d syntax error #1", name, n); fprintf(stderr, "file_loop: %s:%d syntax error #1\n", name, n); continue; } /* Ethernet address comes first */ *cp2++ = '\0'; if (!str2e(cp, e)) { syslog(LOG_ERR, "file_loop: %s:%d bad ether addr \"%s\"", name, n, cp); fprintf(stderr, "file_loop: %s:%d bad ether addr \"%s\"\n", name, n, cp); continue; } /* ip address is next */ cp = cp2; if ((cp2 = strchr(cp, '\t')) != NULL) *cp2++ = '\0'; if (!isdigit((int)*cp) || (int32_t)(a = inet_addr(cp)) == -1) { if ((hp = gethostbyname(cp)) == NULL) { syslog(LOG_ERR, "file_loop: %s:%d bad hostname \"%s\"", name, n, cp); fprintf(stderr, "file_loop: %s:%d bad hostname \"%s\"\n", name, n, cp); continue; } BCOPY(hp->h_addr, &a, 4); } /* timestamp and hostname are optional */ if (cp2 == NULL) { t = 0; h = NULL; } else { t = atoi(cp2); h = strchr(cp2, '\t'); if (h != NULL) { ++h; ++cp2; while (*cp2 != '\n' && *cp2 != '\t' && *cp2 != '\0') ++cp2; *cp2 = '\0'; } } if (!(*fn)(a, e, t, h)) return(0); } return(1); } arpwatch-2.1a15/file.h0100444000177400000340000000027406650511134014000 0ustar leressunsrc/* @(#) $Header: file.h,v 1.4 99/01/17 17:46:03 leres Exp $ (LBL) */ typedef int (*file_process)(u_int32_t, u_char *, time_t, char *); int file_loop(FILE *, file_process, const char *); arpwatch-2.1a15/install-sh0100555000177400000340000001124406042545123014713 0ustar leressunsrc#! /bin/sh # # install - install a program, script, or datafile # This comes from X11R5. # # Calling this script install-sh is preferred over install.sh, to prevent # `make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written # from scratch. # # set DOITPROG to echo to test this script # Don't use :- since 4.3BSD and earlier shells don't like it. doit="${DOITPROG-}" # put in absolute paths if you don't have them in your path; or use env. vars. mvprog="${MVPROG-mv}" cpprog="${CPPROG-cp}" chmodprog="${CHMODPROG-chmod}" chownprog="${CHOWNPROG-chown}" chgrpprog="${CHGRPPROG-chgrp}" stripprog="${STRIPPROG-strip}" rmprog="${RMPROG-rm}" mkdirprog="${MKDIRPROG-mkdir}" tranformbasename="" transform_arg="" instcmd="$mvprog" chmodcmd="$chmodprog 0755" chowncmd="" chgrpcmd="" stripcmd="" rmcmd="$rmprog -f" mvcmd="$mvprog" src="" dst="" dir_arg="" while [ x"$1" != x ]; do case $1 in -c) instcmd="$cpprog" shift continue;; -d) dir_arg=true shift continue;; -m) chmodcmd="$chmodprog $2" shift shift continue;; -o) chowncmd="$chownprog $2" shift shift continue;; -g) chgrpcmd="$chgrpprog $2" shift shift continue;; -s) stripcmd="$stripprog" shift continue;; -t=*) transformarg=`echo $1 | sed 's/-t=//'` shift continue;; -b=*) transformbasename=`echo $1 | sed 's/-b=//'` shift continue;; *) if [ x"$src" = x ] then src=$1 else # this colon is to work around a 386BSD /bin/sh bug : dst=$1 fi shift continue;; esac done if [ x"$src" = x ] then echo "install: no input file specified" exit 1 else true fi if [ x"$dir_arg" != x ]; then dst=$src src="" if [ -d $dst ]; then instcmd=: else instcmd=mkdir fi else # Waiting for this to be detected by the "$instcmd $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if [ -f $src -o -d $src ] then true else echo "install: $src does not exist" exit 1 fi if [ x"$dst" = x ] then echo "install: no destination specified" exit 1 else true fi # If destination is a directory, append the input filename; if your system # does not like double slashes in filenames, you may need to add some logic if [ -d $dst ] then dst="$dst"/`basename $src` else true fi fi ## this sed command emulates the dirname command dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'` # Make sure that the destination directory exists. # this part is taken from Noah Friedman's mkinstalldirs script # Skip lots of stat calls in the usual case. if [ ! -d "$dstdir" ]; then defaultIFS=' ' IFS="${IFS-${defaultIFS}}" oIFS="${IFS}" # Some sh's can't handle IFS=/ for some reason. IFS='%' set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'` IFS="${oIFS}" pathcomp='' while [ $# -ne 0 ] ; do pathcomp="${pathcomp}${1}" shift if [ ! -d "${pathcomp}" ] ; then $mkdirprog "${pathcomp}" else true fi pathcomp="${pathcomp}/" done fi if [ x"$dir_arg" != x ] then $doit $instcmd $dst && if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi && if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi && if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi && if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi else # If we're going to rename the final executable, determine the name now. if [ x"$transformarg" = x ] then dstfile=`basename $dst` else dstfile=`basename $dst $transformbasename | sed $transformarg`$transformbasename fi # don't allow the sed command to completely eliminate the filename if [ x"$dstfile" = x ] then dstfile=`basename $dst` else true fi # Make a temp file name in the proper directory. dsttmp=$dstdir/#inst.$$# # Move or copy the file name to the temp name $doit $instcmd $src $dsttmp && trap "rm -f ${dsttmp}" 0 && # and set any options; do chmod last to preserve setuid bits # If any of these fail, we abort the whole thing. If we want to # ignore errors from any of these, just make sure not to ignore # errors from the above "$doit $instcmd $src $dsttmp" command. if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi && if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi && if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi && if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi && # Now rename the file to the real destination. $doit $rmcmd -f $dstdir/$dstfile && $doit $mvcmd $dsttmp $dstdir/$dstfile fi && exit 0 arpwatch-2.1a15/intoa.c0100444000177400000340000000137006156166463014200 0ustar leressunsrc/* @(#) $Header: intoa.c,v 1.4 96/06/07 20:02:09 leres Exp $ (LBL) */ #include #include #include "gnuc.h" #ifdef HAVE_OS_PROTO_H #include "os-proto.h" #endif #include "arpwatch.h" /* * A faster replacement for inet_ntoa(). */ char * intoa(register u_int32_t addr) { register char *cp; register u_int byte; register int n; static char buf[sizeof(".xxx.xxx.xxx.xxx")]; #ifdef NTOHL NTOHL(addr); #else addr = ntohl(addr); #endif cp = &buf[sizeof buf]; *--cp = '\0'; n = 4; do { byte = addr & 0xff; *--cp = byte % 10 + '0'; byte /= 10; if (byte > 0) { *--cp = byte % 10 + '0'; byte /= 10; if (byte > 0) *--cp = byte + '0'; } *--cp = '.'; addr >>= 8; } while (--n > 0); return cp + 1; } arpwatch-2.1a15/lbl/gnuc.h0100444000177400000340000000145710425032770014571 0ustar leressunsrc/* @(#) $Id: gnuc.h,v 1.4 2006/04/30 03:58:45 leres Exp $ (LBL) */ /* Define __P() macro, if necessary */ #ifndef __P #if __STDC__ #define __P(protos) protos #else #define __P(protos) () #endif #endif /* inline foo */ #ifdef __GNUC__ #define inline __inline #else #define inline #endif /* * Handle new and old "dead" routine prototypes * * For example: * * __dead void foo(void) __attribute__((noreturn)); * */ #ifdef __GNUC__ #ifndef __dead #if __GNUC__ >= 4 #define __dead #define noreturn __noreturn__ #else #define __dead volatile #define noreturn volatile #endif #endif #if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) #ifndef __attribute__ #define __attribute__(args) #endif #endif #else #ifndef __dead #define __dead #endif #ifndef __attribute__ #define __attribute__(args) #endif #endif arpwatch-2.1a15/lbl/os-irix4.h0100444000000000000000000000233607051374031014716 0ustar rootwheel/* * Copyright (c) 1994, 1995, 1996 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * @(#) $Header: os-irix4.h,v 1.7 96/11/29 15:17:43 leres Exp $ (LBL) */ arpwatch-2.1a15/lbl/os-irix5.h0100444000000000000000000000313707051374031014717 0ustar rootwheel/* * Copyright (c) 1994, 1995, 1996 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * @(#) $Header: os-irix5.h,v 1.7 96/11/29 15:17:43 leres Exp $ (LBL) */ /* Prototypes missing in IRIX 5 */ #ifdef __STDC__ struct ether_addr; #endif int ether_hostton(char *, struct ether_addr *); char *ether_ntoa(struct ether_addr *); #ifdef __STDC__ struct utmp; #endif void login(struct utmp *); int setenv(const char *, const char *, int); int sigblock(int); int sigsetmask(int); int snprintf(char *, size_t, const char *, ...); time_t time(time_t *); arpwatch-2.1a15/lbl/os-osf3.h0100444000000000000000000000302407051374031014524 0ustar rootwheel/* * Copyright (c) 1995, 1996 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * @(#) $Header: os-osf3.h,v 1.8 96/11/29 15:17:43 leres Exp $ (LBL) */ /* Prototypes missing in osf3 */ int flock(int, int); int ioctl(int, int, caddr_t); int iruserok(u_int, int, char *, char *); int pfopen(char *, int); int rcmd(char **, u_short, const char *, const char *, const char *, int *); int rresvport(int *); int snprintf(char *, size_t, const char *, ...); void sync(void); arpwatch-2.1a15/lbl/os-solaris2.h0100444000000000000000000000406307065346433015426 0ustar rootwheel/* * Copyright (c) 1993, 1994, 1995, 1996, 1997, 2000 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * @(#) $Id: os-solaris2.h,v 1.18 1997/10/01 01:10:22 leres Exp leres $ (LBL) */ /* Prototypes missing in SunOS 5 */ int daemon(int, int); int dn_expand(const u_char *, const u_char *, const u_char *, char *, int); int dn_skipname(const u_char *, const u_char *); int flock(int, int); int getdtablesize(void); int gethostname(char *, int); int getpagesize(void); char *getusershell(void); char *getwd(char *); int iruserok(u_int, int, char *, char *); #ifdef __STDC__ struct utmp; void login(struct utmp *); #endif int logout(const char *); int res_query(const char *, int, int, u_char *, int); int setenv(const char *, const char *, int); #if defined(_STDIO_H) && defined(HAVE_SETLINEBUF) int setlinebuf(FILE *); #endif int sigblock(int); int sigsetmask(int); char *strerror(int); int snprintf(char *, size_t, const char *, ...); int strcasecmp(const char *, const char *); void unsetenv(const char *); arpwatch-2.1a15/lbl/os-sunos3.h0100444000000000000000000001373607051374031015117 0ustar rootwheel/* * Copyright (c) 1990, 1993, 1994, 1995, 1996 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * @(#) $Header: os-sunos3.h,v 1.23 96/11/29 15:17:51 leres Exp $ (LBL) */ /* Prototypes missing in SunOS 3 */ #ifdef FILE int _filbuf(FILE *); int _flsbuf(u_char, FILE *); int fclose(FILE *); int fflush(FILE *); int fprintf(FILE *, const char *, ...); int fputc(int, FILE *); int fputs(const char *, FILE *); u_int fread(void *, u_int, u_int, FILE *); int fseek(FILE *, long, int); u_int fwrite(const void *, u_int, u_int, FILE *); void rewind(FILE *); void setbuf(FILE *, char *); int setlinebuf(FILE *); u_int vfprintf(FILE *, const char *, char *); /* arg 3 is really va_list */ #endif #if __GNUC__ <= 1 int read(int, const char *, u_int); int write(int, const char *, u_int); #endif __dead void abort(void) __attribute__((volatile)); int abs(int); #ifdef __STDC__ struct sockaddr; #endif int accept(int, struct sockaddr *, int *); int access(const char *, int); u_int alarm(u_int); int atoi(const char *); long atol(const char *); int bcmp(const void *, const void *, u_int); void bcopy(const void *, void *, u_int); void bzero(void *, u_int); char *calloc(u_int, u_int); int chdir(const char *); int chmod(const char *, int); int chown(const char *, int, int); int close(int); int connect(int, struct sockaddr *, int); char *crypt(const char *, const char *); int daemon(int, int); void endgrent(void); void endpwent(void); void endservent(void); int execl(const char *, ...); int execlp(const char *, ...); int execv(const char *, char * const *); __dead void exit(int) __attribute__((volatile)); __dead void _exit(int) __attribute__((volatile)); int fchmod(int, int); int fchown(int, int, int); int fcntl(int, int, int); int ffs(int); int flock(int, int); int fork(void); void free(void *); #ifdef __STDC__ struct stat; #endif int fstat(int, struct stat *); int ftruncate(int, u_long); int getdtablesize(void); char *getenv __P((char *)); int gethostname(char *, int); int getopt(int, char * const *, const char *); int getpagesize(void); char *getlogin __P((void)); char *getpass(char *); int getpeername(int, struct sockaddr *, int *); int getpid(void); int getppid(void); int getpriority(int, int); int getsockname(int, struct sockaddr *, int *); int getsockopt(int, int, int, char *, int *); #ifdef __STDC__ struct timeval; struct timezone; #endif int gettimeofday(struct timeval *, struct timezone *); int getuid(void); char *getusershell(); int ioctl(int, int, caddr_t); int initgroups(const char *, int); int iruserok(u_long, int, char *, char *); int isatty(int); int kill(int, int); int listen(int, int); #ifdef __STDC__ struct utmp; #endif void login(struct utmp *); int logout(const char *); __dead void longjmp(int *, int) __attribute__((volatile)); off_t lseek(int, off_t, int); int lstat(const char *, struct stat *); void openlog(const char *, int, int); char *malloc(u_int); char *memcpy(char *, const char *, u_int); int mkdir(const char *, int); int open(char *, int, ...); int pause(void); void perror(const char *); int printf(const char *, ...); int puts(const char *); long random(void); int rcmd(char **, u_short, char *, char *, char *, int *); char *realloc(char *, int); int recv(int, char *, u_int, int); int rresvport(int *); int sigblock(int); int (*signal (int, int (*) (int))) (int); int sigpause(int); int sigsetmask(int); int select(int, fd_set *, fd_set *, fd_set *, struct timeval *); int send(int, char *, u_int, int); int setenv(const char *, const char *, int); int seteuid(int); int setgid(int); int setjmp(int *); int setpriority(int, int, int); int setsockopt(int, int, int, char *, int); int setuid(int); int sleep(u_int); int snprintf(char *, size_t, const char *, ...); int socket(int, int, int); int socketpair(int, int, int, int *); char *sprintf(char *, const char *, ...); void srandom(int); int sscanf(char *, const char *, ...); #ifdef __STDC__ struct stat; #endif int stat(const char *, struct stat *); int strcmp(const char *, const char *); char *strerror(int); int strcasecmp(const char *, const char *); char *strcpy(char *, const char *); char *strdup(const char *); int strncasecmp(const char *, const char *, int); int strlen(const char *); long strtol(const char *, char **, int); void sync(void); void syslog(int, const char *, ...); long tell(int); time_t time(time_t *); int truncate(const char *, u_long); char *ttyname __P((int)); int unlink(const char *); void unsetenv(const char *); int vfork(void); char *vsprintf(char *, const char *, ...); int shutdown(int, int); int umask(int); int utimes(const char *, struct timeval *); #ifdef __STDC__ union wait; struct rusage; #endif int wait(int *); int wait3(int *, int, struct rusage *); /* Ugly signal hacking */ #ifdef BADSIG #undef BADSIG #define BADSIG (int (*)(int))-1 #undef SIG_DFL #define SIG_DFL (int (*)(int))0 #undef SIG_IGN #define SIG_IGN (int (*)(int))1 #ifdef KERNEL #undef SIG_CATCH #define SIG_CATCH (int (*)(int))2 #endif #undef SIG_HOLD #define SIG_HOLD (int (*)(int))3 #endif arpwatch-2.1a15/lbl/os-sunos4.h0100444000000000000000000001413507051374031015112 0ustar rootwheel/* * Copyright (c) 1989, 1990, 1993, 1994, 1995, 1996 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * @(#) $Header: os-sunos4.h,v 1.32 96/11/29 15:18:18 leres Exp $ (LBL) */ /* Prototypes missing in SunOS 4 */ #ifdef FILE int _filbuf(FILE *); int _flsbuf(u_char, FILE *); int fclose(FILE *); int fflush(FILE *); int fgetc(FILE *); int fprintf(FILE *, const char *, ...); int fputc(int, FILE *); int fputs(const char *, FILE *); u_int fread(void *, u_int, u_int, FILE *); int fseek(FILE *, long, int); u_int fwrite(const void *, u_int, u_int, FILE *); int pclose(FILE *); void rewind(FILE *); void setbuf(FILE *, char *); int setlinebuf(FILE *); int ungetc(int, FILE *); int vfprintf(FILE *, const char *, ...); int vprintf(const char *, ...); #endif #if __GNUC__ <= 1 int read(int, char *, u_int); int write(int, char *, u_int); #endif long a64l(const char *); #ifdef __STDC__ struct sockaddr; #endif int accept(int, struct sockaddr *, int *); int bind(int, struct sockaddr *, int); int bcmp(const void *, const void *, u_int); void bcopy(const void *, void *, u_int); void bzero(void *, int); int chroot(const char *); int close(int); void closelog(void); int connect(int, struct sockaddr *, int); char *crypt(const char *, const char *); int daemon(int, int); int fchmod(int, int); int fchown(int, int, int); void endgrent(void); void endpwent(void); void endservent(void); #ifdef __STDC__ struct ether_addr; #endif struct ether_addr *ether_aton(const char *); int flock(int, int); #ifdef __STDC__ struct stat; #endif int fstat(int, struct stat *); #ifdef __STDC__ struct statfs; #endif int fstatfs(int, struct statfs *); int fsync(int); #ifdef __STDC__ struct timeb; #endif int ftime(struct timeb *); int ftruncate(int, off_t); int getdtablesize(void); long gethostid(void); int gethostname(char *, int); int getopt(int, char * const *, const char *); int getpagesize(void); char *getpass(char *); int getpeername(int, struct sockaddr *, int *); int getpriority(int, int); #ifdef __STDC__ struct rlimit; #endif int getrlimit(int, struct rlimit *); int getsockname(int, struct sockaddr *, int *); int getsockopt(int, int, int, char *, int *); #ifdef __STDC__ struct timeval; struct timezone; #endif int gettimeofday(struct timeval *, struct timezone *); char *getusershell(void); char *getwd(char *); int initgroups(const char *, int); int ioctl(int, int, caddr_t); int iruserok(u_long, int, char *, char *); int isatty(int); int killpg(int, int); int listen(int, int); #ifdef __STDC__ struct utmp; #endif void login(struct utmp *); int logout(const char *); off_t lseek(int, off_t, int); int lstat(const char *, struct stat *); int mkstemp(char *); char *mktemp(char *); int munmap(caddr_t, int); void openlog(const char *, int, int); void perror(const char *); int printf(const char *, ...); int puts(const char *); long random(void); int readlink(const char *, char *, int); #ifdef __STDC__ struct iovec; #endif int readv(int, struct iovec *, int); int recv(int, char *, u_int, int); int recvfrom(int, char *, u_int, int, struct sockaddr *, int *); int rename(const char *, const char *); int rcmd(char **, u_short, char *, char *, char *, int *); int rresvport(int *); int send(int, char *, u_int, int); int sendto(int, char *, u_int, int, struct sockaddr *, int); int setenv(const char *, const char *, int); int seteuid(int); int setpriority(int, int, int); int select(int, fd_set *, fd_set *, fd_set *, struct timeval *); int setpgrp(int, int); void setpwent(void); int setrlimit(int, struct rlimit *); void setservent(int); int setsockopt(int, int, int, char *, int); int shutdown(int, int); int sigblock(int); void (*signal (int, void (*) (int))) (int); int sigpause(int); int sigsetmask(int); #ifdef __STDC__ struct sigvec; #endif int sigvec(int, struct sigvec *, struct sigvec*); int snprintf(char *, size_t, const char *, ...); int socket(int, int, int); int socketpair(int, int, int, int *); int symlink(const char *, const char *); void srandom(int); int sscanf(char *, const char *, ...); int stat(const char *, struct stat *); int statfs(char *, struct statfs *); char *strerror(int); int strcasecmp(const char *, const char *); #ifdef __STDC__ struct tm; #endif int strftime(char *, int, char *, struct tm *); int strncasecmp(const char *, const char *, int); long strtol(const char *, char **, int); void sync(void); void syslog(int, const char *, ...); int system(const char *); long tell(int); time_t time(time_t *); char *timezone(int, int); int tolower(int); int toupper(int); int truncate(char *, off_t); void unsetenv(const char *); int vfork(void); int vsprintf(char *, const char *, ...); int writev(int, struct iovec *, int); #ifdef __STDC__ struct rusage; #endif int utimes(const char *, struct timeval *); #if __GNUC__ <= 1 int wait(int *); pid_t wait3(int *, int, struct rusage *); #endif /* Ugly signal hacking */ #ifdef SIG_ERR #undef SIG_ERR #define SIG_ERR (void (*)(int))-1 #undef SIG_DFL #define SIG_DFL (void (*)(int))0 #undef SIG_IGN #define SIG_IGN (void (*)(int))1 #ifdef KERNEL #undef SIG_CATCH #define SIG_CATCH (void (*)(int))2 #endif #undef SIG_HOLD #define SIG_HOLD (void (*)(int))3 #endif arpwatch-2.1a15/lbl/os-ultrix4.h0100444000000000000000000000331707051374031015272 0ustar rootwheel/* * Copyright (c) 1990, 1993, 1994, 1995, 1996 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * @(#) $Header: os-ultrix4.h,v 1.19 96/11/29 15:33:19 leres Exp $ (LBL) */ /* Prototypes missing in Ultrix 4 */ int bcmp(const char *, const char *, u_int); void bcopy(const void *, void *, u_int); void bzero(void *, u_int); void endservent(void); int getopt(int, char * const *, const char *); #ifdef __STDC__ struct timeval; struct timezone; #endif int gettimeofday(struct timeval *, struct timezone *); int ioctl(int, int, caddr_t); int pfopen(char *, int); int setlinebuf(FILE *); int socket(int, int, int); int strcasecmp(const char *, const char *); arpwatch-2.1a15/linux-include/netinet/if_ether.h0100444000177400000000000000640306247535752020672 0ustar lereswheel/* * Copyright (c) 1982, 1986, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * @(#)if_ether.h 8.3 (Berkeley) 5/2/95 */ #include /* * Ethernet address - 6 octets */ struct ether_addr { u_char ether_addr_octet[6]; }; /* * Structure of a 10Mb/s Ethernet header. */ struct ether_header { u_char ether_dhost[6]; u_char ether_shost[6]; u_short ether_type; }; #define ETHERTYPE_PUP 0x0200 /* PUP protocol */ #define ETHERTYPE_IP 0x0800 /* IP protocol */ #define ETHERTYPE_ARP 0x0806 /* Addr. resolution protocol */ #define ETHERTYPE_REVARP 0x8035 /* reverse Addr. resolution protocol */ /* * The ETHERTYPE_NTRAILER packet types starting at ETHERTYPE_TRAIL have * (type-ETHERTYPE_TRAIL)*512 bytes of data followed * by an ETHER type (as given above) and then the (variable-length) header. */ #define ETHERTYPE_TRAIL 0x1000 /* Trailer packet */ #define ETHERTYPE_NTRAILER 16 #define ETHERMTU 1500 #define ETHERMIN (60-14) /* * Ethernet Address Resolution Protocol. * * See RFC 826 for protocol description. Structure below is adapted * to resolving internet addresses. Field names used correspond to * RFC 826. */ struct ether_arp { struct arphdr ea_hdr; /* fixed-size header */ u_char arp_sha[6]; /* sender hardware address */ u_char arp_spa[4]; /* sender protocol address */ u_char arp_tha[6]; /* target hardware address */ u_char arp_tpa[4]; /* target protocol address */ }; #define arp_hrd ea_hdr.ar_hrd #define arp_pro ea_hdr.ar_pro #define arp_hln ea_hdr.ar_hln #define arp_pln ea_hdr.ar_pln #define arp_op ea_hdr.ar_op arpwatch-2.1a15/machdep.c0100444000177400000340000000320106414273515014454 0ustar leressunsrc/* * Copyright (c) 1996, 1997 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ #ifndef lint static const char rcsid[] = "@(#) $Header: machdep.c,v 1.4 97/09/30 15:03:53 leres Exp $ (LBL)"; #endif #include #ifdef __osf__ #include #include #endif #include "machdep.h" int abort_on_misalignment(char *ebuf) { #ifdef __osf__ static int buf[2] = { SSIN_UACPROC, UAC_SIGBUS }; if (setsysinfo(SSI_NVPAIRS, (caddr_t)buf, 1, 0, 0) < 0) { (void)sprintf(ebuf, "setsysinfo: errno %d", errno); return (-1); } #endif return (0); } arpwatch-2.1a15/machdep.h0100444000177400000340000000246006172570537014474 0ustar leressunsrc/* * Copyright (c) 1996 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * @(#) $Header: machdep.h,v 1.1 96/07/15 18:33:19 leres Exp $ (LBL) */ #ifndef tcpdump_machdep_h #define tcpdump_machdep_h int abort_on_misalignment(char *); #endif arpwatch-2.1a15/massagevendor0100555000177400000340000000123710006007133015461 0ustar leressunsrc#!/bin/sh # @(#) $Id: massagevendor,v 1.3 2004/01/28 19:32:24 leres Exp $ (LBL) # # - Massage: # # http://standards.ieee.org/regauth/oui/oui.txt # # into ethercodes.dat format. # # - Deal with duplicates in oui.txt (concatenate company names) # (sed -n \ -e 's/^\([0-9A-F][0-9A-F]\)-\([0-9A-F][0-9A-F]\)-\([0-9A-F][0-9A-F]\) *(hex)[ ]*\(..*\)/\1\2\3 \4/p' \ $* | \ awk -f euppertolower.awk | \ sed -n \ -e 's/^\([0-9A-Za-z][0-9A-Za-z]\)\([0-9A-Za-z][0-9A-Za-z]\)\([0-9A-Za-z][0-9A-Za-z]\)[ ]\(.*\)$/\1:\2:\3 \4/' \ -e 's/^0//' -e 's/:0\([0-9A-Za-z]\)/:\1/g' -e p | \ sort | \ awk -f duplicates.awk ) | \ awk -f p.awk | \ sort arpwatch-2.1a15/massagevendor-old0100555000177400000340000000112307161230400016232 0ustar leressunsrc#!/bin/sh # @(#) $Id: massagevendor-old,v 1.4 2000/09/17 21:00:46 leres Exp $ (LBL) # # Massage # # ftp://ftp.cavebear.com/pub/Ethernet.txt # http://www.cavebear.com/CaveBear/Ethernet/vendor.html # # into ethercodes.dat format # sed -n \ -e '/^[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][ ]/!d' \ -e 's/[ ][ ]*$//' \ -e p $* | \ awk -f euppertolower.awk | \ sed -n \ -e 's/^\([0-9A-Za-z][0-9A-Za-z]\)\([0-9A-Za-z][0-9A-Za-z]\)\([0-9A-Za-z][0-9A-Za-z]\)[ ]\(.*\)$/\1:\2:\3 \4/' \ -e 's/^0//' -e 's/:0\([0-9A-Za-z]\)/:\1/g' -e p | \ sort arpwatch-2.1a15/mkdep0100555000177400000340000000445606163206604013746 0ustar leressunsrc#!/bin/sh - # # Copyright (c) 1994, 1996 # The Regents of the University of California. All rights reserved. # # Redistribution and use in source and binary forms are permitted # provided that this notice is preserved and that due credit is given # to the University of California at Berkeley. The name of the University # may not be used to endorse or promote products derived from this # software without specific prior written permission. This software # is provided ``as is'' without express or implied warranty. # # @(#)mkdep.sh 5.11 (Berkeley) 5/5/88 # PATH=/bin:/usr/bin:/usr/ucb:/usr/local:/usr/local/bin export PATH MAKE=Makefile # default makefile name is "Makefile" CC=cc # default C compiler is "cc" while : do case "$1" in # -c allows you to specify the C compiler -c) CC=$2 shift; shift ;; # -f allows you to select a makefile name -f) MAKE=$2 shift; shift ;; # the -p flag produces "program: program.c" style dependencies # so .o's don't get produced -p) SED='s;\.o;;' shift ;; *) break ;; esac done if [ $# = 0 ] ; then echo 'usage: mkdep [-p] [-c cc] [-f makefile] [flags] file ...' exit 1 fi if [ ! -w $MAKE ]; then echo "mkdep: no writeable file \"$MAKE\"" exit 1 fi TMP=/tmp/mkdep$$ trap 'rm -f $TMP ; exit 1' 1 2 3 13 15 cp $MAKE ${MAKE}.bak sed -e '/DO NOT DELETE THIS LINE/,$d' < $MAKE > $TMP cat << _EOF_ >> $TMP # DO NOT DELETE THIS LINE -- mkdep uses it. # DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. _EOF_ # If your compiler doesn't have -M, add it. If you can't, the next two # lines will try and replace the "cc -M". The real problem is that this # hack can't deal with anything that requires a search path, and doesn't # even try for anything using bracket (<>) syntax. # # egrep '^#include[ ]*".*"' /dev/null $* | # sed -e 's/:[^"]*"\([^"]*\)".*/: \1/' -e 's/\.c/.o/' | # XXX this doesn't work with things like "-DDECLWAITSTATUS=union\ wait" $CC -M $* | sed " s; \./; ;g $SED" | awk '{ if ($1 != prev) { if (rec != "") print rec; rec = $0; prev = $1; } else { if (length(rec $2) > 78) { print rec; rec = $0; } else rec = rec " " $2 } } END { print rec }' >> $TMP cat << _EOF_ >> $TMP # IF YOU PUT ANYTHING HERE IT WILL GO AWAY _EOF_ # copy to preserve permissions cp $TMP $MAKE rm -f ${MAKE}.bak $TMP exit 0 arpwatch-2.1a15/p.awk0100444000177400000340000000014307161232662013652 0ustar leressunsrc# Only print the first ethernet address seen { e = $1 if (seen[e]) next seen[e] = 1 print } arpwatch-2.1a15/report.c0100444000177400000340000001743707165475026014413 0ustar leressunsrc/* * Copyright (c) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ #ifndef lint static const char rcsid[] = "@(#) $Id: report.c,v 1.46 2000/09/30 23:41:04 leres Exp $ (LBL)"; #endif /* * report - arpwatch report generating routines */ #include #include /* concession to AIX */ #include #include #include #if __STDC__ struct mbuf; struct rtentry; #endif #include #include #include #include #include #include #include #include #include #include #ifdef TIME_WITH_SYS_TIME #include #endif #include #include "gnuc.h" #ifdef HAVE_OS_PROTO_H #include "os-proto.h" #endif #include "addresses.h" #include "arpwatch.h" #include "dns.h" #include "ec.h" #include "report.h" #include "setsignal.h" #include "util.h" #define PLURAL(n) ((n) == 1 || (n) == -1 ? "" : "s") static int cdepth; /* number of outstanding children */ static char *fmtdate(time_t); static char *fmtdelta(time_t); RETSIGTYPE reaper(int); static int32_t gmt2local(void); static char * fmtdelta(register time_t t) { register char *cp; register int minus; static char buf[132]; minus = 0; if (t < 0) { t = -t; ++minus; } if (t < 60) { cp = "second"; } else if (t < 60 * 60) { t /= 60; cp = "minute"; } else if (t < 24 * 60 * 60) { t /= (60 * 60); cp = "hour"; } else { t /= (24 * 60 * 60); cp = "day"; } if (minus) t = -t; (void)sprintf(buf, "%u %s%s", (u_int32_t)t, cp, PLURAL(t)); return(buf); } static char *dow[7] = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" }; static char *moy[12] = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" }; #define DOW(d) ((d) < 0 || (d) >= 7 ? "?" : dow[d]) #define MOY(m) ((m) < 0 || (m) >= 12 ? "?" : moy[(m)]) static char * fmtdate(time_t t) { register struct tm *tm; register int32_t mw; register char ch; static int init = 0; static char zone[32], buf[132]; if (t == 0) return(""); if (!init) { mw = gmt2local() / 60; if (mw < 0) { ch = '-'; mw = -mw; } else { ch = '+'; } (void)sprintf(zone, "%c%02d%02d", ch, mw / 60, mw % 60); } tm = localtime(&t); (void)sprintf(buf, "%s, %s %d, %d %d:%02d:%02d %s", DOW(tm->tm_wday), MOY(tm->tm_mon), tm->tm_mday, tm->tm_year + 1900, tm->tm_hour, tm->tm_min, tm->tm_sec, zone); return(buf); } /* * Returns the difference between gmt and local time in seconds. * Use gmtime() and localtime() to keep things simple. */ static int32_t gmt2local(void) { register int dt, dir; register struct tm *gmt, *loc; time_t t; struct tm sgmt; t = time(NULL); gmt = &sgmt; *gmt = *gmtime(&t); loc = localtime(&t); dt = (loc->tm_hour - gmt->tm_hour) * 60 * 60 + (loc->tm_min - gmt->tm_min) * 60; /* * If the year or julian day is different, we span 00:00 GMT * and must add or subtract a day. Check the year first to * avoid problems when the julian day wraps. */ dir = loc->tm_year - gmt->tm_year; if (dir == 0) dir = loc->tm_yday - gmt->tm_yday; dt += dir * 24 * 60 * 60; return (dt); } RETSIGTYPE reaper(int signo) { register pid_t pid; DECLWAITSTATUS status; for (;;) { pid = waitpid((pid_t)0, &status, WNOHANG); if ((int)pid < 0) { /* ptrace foo */ if (errno == EINTR) continue; /* ECHILD means no one left */ if (errno != ECHILD) syslog(LOG_ERR, "reaper: %m"); break; } /* Already got everyone who was done */ if (pid == 0) break; --cdepth; if (WEXITSTATUS(status)) syslog(LOG_DEBUG, "reaper: pid %d, exit status %d", pid, WEXITSTATUS(status)); } return RETSIGVAL; } void report(register char *title, register u_int32_t a, register u_char *e1, register u_char *e2, register time_t *t1p, register time_t *t2p) { register char *cp, *hn; register int fd, pid; register FILE *f; char tempfile[64], cpu[64], os[64]; char *fmt = "%20s: %s\n"; char *watcher = WATCHER; char *watchee = WATCHEE; char *sendmail = PATH_SENDMAIL; char *unknown = ""; char buf[132]; static int init = 0; /* No report until we're initialized */ if (initializing) return; if (debug) { if (debug > 1) { dosyslog(LOG_NOTICE, title, a, e1, e2); return; } f = stdout; (void)putc('\n', f); } else { /* Setup child reaper if we haven't already */ if (!init) { (void)setsignal(SIGCHLD, reaper); ++init; } while (cdepth >= 3) { syslog(LOG_ERR, "report: pausing (cdepth %d)", cdepth); pause(); } /* Syslog this event too */ dosyslog(LOG_NOTICE, title, a, e1, e2); /* Update child depth */ ++cdepth; /* Fork off child to send mail */ pid = fork(); if (pid) { /* Parent */ if (pid < 0) syslog(LOG_ERR, "report: fork() 1: %m"); return; } /* Child */ closelog(); (void)strcpy(tempfile, "/tmp/arpwatch.XXXXXX"); if ((fd = mkstemp(tempfile)) < 0) { syslog(LOG_ERR, "mkstemp(%s) %m", tempfile); exit(1); } if ((f = fdopen(fd, "w+")) == NULL) { syslog(LOG_ERR, "child fdopen(%s): %m", tempfile); exit(1); } /* Cheap delete-on-close */ if (unlink(tempfile) < 0) syslog(LOG_ERR, "unlink(%s): %m", tempfile); } (void)fprintf(f, "From: %s\n", watchee); (void)fprintf(f, "To: %s\n", watcher); hn = gethname(a); if (!isdigit(*hn)) (void)fprintf(f, "Subject: %s (%s)\n", title, hn); else { (void)fprintf(f, "Subject: %s\n", title); hn = unknown; } (void)putc('\n', f); (void)fprintf(f, fmt, "hostname", hn); (void)fprintf(f, fmt, "ip address", intoa(a)); (void)fprintf(f, fmt, "ethernet address", e2str(e1)); if ((cp = ec_find(e1)) == NULL) cp = unknown; (void)fprintf(f, fmt, "ethernet vendor", cp); if (hn != unknown && gethinfo(hn, cpu, sizeof(cpu), os, sizeof(os))) { (void)sprintf(buf, "%s %s", cpu, os); (void)fprintf(f, fmt, "dns cpu & os", buf); } if (e2) { (void)fprintf(f, fmt, "old ethernet address", e2str(e2)); if ((cp = ec_find(e2)) == NULL) cp = unknown; (void)fprintf(f, fmt, "old ethernet vendor", cp); } if (t1p) (void)fprintf(f, fmt, "timestamp", fmtdate(*t1p)); if (t2p) (void)fprintf(f, fmt, "previous timestamp", fmtdate(*t2p)); if (t1p && t2p && *t1p && *t2p) (void)fprintf(f, fmt, "delta", fmtdelta(*t1p - *t2p)); if (debug) { fflush(f); return; } (void)rewind(f); if (dup2(fileno(f), fileno(stdin)) < 0) { syslog(LOG_ERR, "dup2: %m"); exit(1); } /* XXX Need to freopen()? */ /* Always Deliver interactively (pause when child depth gets large) */ execl(sendmail, "sendmail", "-odi", watcher, NULL); syslog(LOG_ERR, "execl: %s: %m", sendmail); exit(1); } arpwatch-2.1a15/report.h0100444000177400000340000000022006155216746014376 0ustar leressunsrc/* @(#) $Header: report.h,v 1.3 96/06/04 22:40:53 leres Exp $ (LBL) */ void report(char *, u_int32_t, u_char *, u_char *, time_t *, time_t *); arpwatch-2.1a15/setsignal.c0100444000177400000340000000443506351047215015052 0ustar leressunsrc/* * Copyright (c) 1997 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ #ifndef lint static const char rcsid[] = "@(#) $Header: setsignal.c,v 1.4 97/06/15 13:20:29 leres Exp $ (LBL)"; #endif #include #ifdef HAVE_MEMORY_H #include #endif #include #ifdef HAVE_SIGACTION #include #endif #include "gnuc.h" #ifdef HAVE_OS_PROTO_H #include "os-proto.h" #endif #include "setsignal.h" /* * An os independent signal() with BSD semantics, e.g. the signal * catcher is restored following service of the signal. * * When sigset() is available, signal() has SYSV semantics and sigset() * has BSD semantics and call interface. Unfortunately, Linux does not * have sigset() so we use the more complicated sigaction() interface * there. * * Did I mention that signals suck? */ RETSIGTYPE (*setsignal (int sig, RETSIGTYPE (*func)(int)))(int) { #ifdef HAVE_SIGACTION struct sigaction old, new; memset(&new, 0, sizeof(new)); new.sa_handler = func; #ifdef SA_RESTART new.sa_flags |= SA_RESTART; #endif if (sigaction(sig, &new, &old) < 0) return (SIG_ERR); return (old.sa_handler); #else #ifdef HAVE_SIGSET return (sigset(sig, func)); #else return (signal(sig, func)); #endif #endif } arpwatch-2.1a15/setsignal.h0100444000177400000340000000247306350324505015056 0ustar leressunsrc/* * Copyright (c) 1997 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. * * @(#) $Header: setsignal.h,v 1.2 97/06/13 13:10:44 leres Exp $ (LBL) */ #ifndef setsignal_h #define setsignal_h RETSIGTYPE (*setsignal(int, RETSIGTYPE (*)(int)))(int); #endif arpwatch-2.1a15/strerror.c0100444000177400000340000000520207227136636014745 0ustar leressunsrc/* * Copyright (c) 1988, 1993 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 4. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #if defined(LIBC_SCCS) && !defined(lint) static const char sccsid[] = "@(#)strerror.c 8.1 (Berkeley) 6/4/93"; #endif /* LIBC_SCCS and not lint */ #include #include #include "gnuc.h" #ifdef HAVE_OS_PROTO_H #include "os-proto.h" #endif char * strerror(num) int num; { extern int sys_nerr; extern char *sys_errlist[]; #define UPREFIX "Unknown error: " static char ebuf[40] = UPREFIX; /* 64-bit number + slop */ register unsigned int errnum; register char *p, *t; char tmp[40]; errnum = num; /* convert to unsigned */ if (errnum < sys_nerr) return(sys_errlist[errnum]); /* Do this by hand, so we don't include stdio(3). */ t = tmp; do { *t++ = "0123456789"[errnum % 10]; } while (errnum /= 10); for (p = ebuf + sizeof(UPREFIX) - 1;;) { *p++ = *--t; if (t <= tmp) break; } *p = '\0'; return(ebuf); } arpwatch-2.1a15/util.c0100444000177400000340000001074510004046743014032 0ustar leressunsrc/* * Copyright (c) 1996, 1997, 1999, 2000, 2004 * The Regents of the University of California. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the University of California, * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ #ifndef lint static const char rcsid[] = "@(#) $Id: util.c,v 1.10 2004/01/22 22:25:27 leres Exp $ (LBL)"; #endif /* * util - arpwatch utility routines */ #include #include #include #ifdef HAVE_MEMORY_H #include #endif #include #include #include #include #include #include "gnuc.h" #ifdef HAVE_OS_PROTO_H #include "os-proto.h" #endif #include "arpwatch.h" #include "db.h" #include "ec.h" #include "file.h" #include "util.h" char *arpdir = ARPDIR; char *arpfile = ARPFILE; char *ethercodes = ETHERCODES; /* Broadcast ethernet addresses */ u_char zero[6] = { 0, 0, 0, 0, 0, 0 }; u_char allones[6] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; int debug = 0; int initializing = 1; /* true if initializing */ /* syslog() helper routine */ void dosyslog(register int p, register char *s, register u_int32_t a, register u_char *ea, register u_char *ha) { char xbuf[64]; /* No report until we're initialized */ if (initializing) return; /* Display both ethernet addresses if they don't match */ (void)strcpy(xbuf, e2str(ea)); if (ha != NULL && MEMCMP(ea, ha, 6) != 0) { (void)strcat(xbuf, " ("); (void)strcat(xbuf, e2str(ha)); (void)strcat(xbuf, ")"); } if (debug) fprintf(stderr, "%s: %s %s %s\n", prog, s, intoa(a), xbuf); else syslog(p, "%s %s %s", s, intoa(a), xbuf); } static FILE *dumpf; void dumpone(register u_int32_t a, register u_char *e, register time_t t, register char *h) { (void)fprintf(dumpf, "%s\t%s", e2str(e), intoa(a)); if (t != 0 || h != NULL) (void)fprintf(dumpf, "\t%u", (u_int32_t)t); if (h != NULL && *h != '\0') (void)fprintf(dumpf, "\t%s", h); (void)putc('\n', dumpf); } int dump(void) { register int fd; char oldarpfile[256], newarpfile[256]; (void)sprintf(oldarpfile, "%s-", arpfile); (void)sprintf(newarpfile, "%s.new", arpfile); if ((fd = creat(newarpfile, 0644)) < 0) { syslog(LOG_ERR, "creat(%s): %m", newarpfile); return(0); } if ((dumpf = fdopen(fd, "w")) == NULL) { syslog(LOG_ERR, "fdopen(%s): %m", newarpfile); return(0); } (void)ent_loop(dumpone); if (ferror(dumpf)) { syslog(LOG_ERR, "ferror %s: %m", newarpfile); return(0); } (void)fclose(dumpf); if (rename(arpfile, oldarpfile) < 0) { syslog(LOG_ERR, "rename %s -> %s: %m", arpfile, oldarpfile); return(0); } if (rename(newarpfile, arpfile) < 0) { syslog(LOG_ERR, "rename %s -> %s: %m", newarpfile, arpfile); return(0); } return(1); } /* Initialize the databases */ int readdata(void) { register FILE *f; if ((f = fopen(arpfile, "r")) == NULL) { syslog(LOG_ERR, "fopen(%s): %m", arpfile); return(0); } if (!file_loop(f, ent_add, arpfile)) { (void)fclose(f); return(0); } (void)fclose(f); /* It's not fatal if we can't open the ethercodes file */ if ((f = fopen(ethercodes, "r")) != NULL) { (void)ec_loop(f, ec_add, ethercodes); (void)fclose(f); } return(1); } char * savestr(register const char *str) { register int i; register char *cp; static char *strptr = NULL; static int strsize = 0; i = strlen(str) + 1; if (i > strsize) { strsize = 512; strptr = malloc(strsize); if (strptr == NULL) { syslog(LOG_ERR, "savestr(): malloc: %m"); exit(1); } memset(strptr, 0, strsize); } (void)strcpy(strptr, str); cp = strptr; strptr += i; strsize -= i; return (cp); } arpwatch-2.1a15/util.h0100444000177400000340000000071206225704126014036 0ustar leressunsrc/* @(#) $Header: util.h,v 1.2 96/10/06 03:22:13 leres Exp $ (LBL) */ void dosyslog(int, char *, u_int32_t, u_char *, u_char *); int dump(void); void dumpone(u_int32_t, u_char *, time_t, char *); int readdata(void); char *savestr(const char *); extern char *arpdir; extern char *newarpfile; extern char *arpfile; extern char *oldarpfile; extern char *ethercodes; extern u_char zero[6]; extern u_char allones[6]; extern int debug; extern int initializing;