diff --git a/converters/R-cran-RJSONIO/pkg-descr b/converters/R-cran-RJSONIO/pkg-descr index 38b486223c3c..f8983519c3bf 100644 --- a/converters/R-cran-RJSONIO/pkg-descr +++ b/converters/R-cran-RJSONIO/pkg-descr @@ -1,13 +1,13 @@ This is a package that allows conversion to and from data in -Javascript object notation (JSON) format. This allows R objects to -be inserted into Javascript/ECMAScript/ActionScript code and allows +JavaScript object notation (JSON) format. This allows R objects to +be inserted into JavaScript/ECMAScript/ActionScript code and allows R programmers to read and convert JSON content to R objects. This is an alternative to rjson package. That version was too slow for converting large R objects to JSON and is not extensible, but a very useful prototype. It is fast for parsing. This package uses methods, vectorized operations and C code and callbacks to R functions -for deserializing JSON objects to R. Verison 0.4 of this package +for deserializing JSON objects to R. Version 0.4 of this package uses a new native parser, implements the transformation code in C and allocates memory efficiently (rather than concatenating because of event driven parsing). The result is a significantly faster parsing of large JSON documents. diff --git a/misc/estic/files/README b/misc/estic/files/README index d4313e997fdd..e31ffcaece9c 100644 --- a/misc/estic/files/README +++ b/misc/estic/files/README @@ -1,301 +1,301 @@ .nf \" This file gets installed as .../man/man1/estic_freebsd.1 NOTES ON ESTIC IN FREEBSD (/usr/ports/comms/estic/) By Julian Stacey November 1996 - + INDEX 1 EXAMPLE CONFIG FILE 2 C++ & FreeBSD VERSIONS 3 COPYING & USAGE RIGHTS 4 WEB REFERENCES FOR ISTEC PROTOCOL etc 5 SERIAL DC HANDSHAKING 6 PEOPLE WHO MAY BE INTERESTED IN THIS PORT 7 BUGS & PROBLEMS -------------------------------------------------------------------------------- 1 Example Config File ======================= For /etc/pbx/estic.ini [ESTIC] SettingsFile = "~/.estic-rc" [Port] PortName = "/dev/istec" [Printing] Headline = "Phone Bill" [Windows] ShowDateTime = Minutes ShowInfoOnStartup = no [Call-Logs] LogFile1 = "/var/log/pbx/%Y.%m LogZeroCostCalls = yes [Alias] AliasFile = "/home/your_name/.estic-aliases" AutoReadAliases = on ; on/off/yes/no/1/0 mvglich [Debug] WaitAfterCall = 500 DiagModeUpdate = auto DebugLog = "/var/log/pbx/debug" [Firmware] -------------------------------------------------------------------------------- 2 C++ & FreeBSD Versions ========================== This package uses C++, which comes standard with FreeBSD. uz@ says it's ok with FreeBSD 2.1.0 with g++ 2.6.3 jhs@ confirms it runs with src/ current (Oct 8 20:36 src-cur.2289.gz) with c++ --version 2.6.3 -------------------------------------------------------------------------------- 3 Copying & Usage Rights ========================== Ref. Makefile NO_CDROM & NO_PACKAGE... There are somewhat restrictive conditions (in German) in the sources, which I've duplicated & translated ... {-------- * Generic Original by "Ullrich von Bassewitz" + Generic Translation by "Julian H. Stacey" - - Die ESTIC-Sourcen bzw. die ESTIC Binaries dürfen unter folgenden + + Die ESTIC-Sourcen bzw. die ESTIC Binaries dürfen unter folgenden Bedingungen weitergegeben werden: The ESTIC sources & binaries may be distributed under the following conditions - + * Die Weitergabe geschieht im kompletten Paket mit Dokumentation. + Distribution as complete package including documentation. - + * Die Weitergabe geschieht kostenlos. Dies bedeutet insbesondere, - daß ESTIC nicht ohne meine vorherige, schriftliche Genehmigung auf + daß ESTIC nicht ohne meine vorherige, schriftliche Genehmigung auf CD-ROMS vertrieben werden darf, genauso sind Mailboxen/FTP-Server - ausgeschlossen, bei denen der Zugang zu den Daten nicht frei für + ausgeschlossen, bei denen der Zugang zu den Daten nicht frei für jedermann ist. + Distribution to be free of charge, This means in particular, that ESTIC may not without my prior written permission be sold on CD-ROMs, neither may it be provided on mailbox systems or FTP servers that only offer restricted non public access. - - * Es dürfen keine geänderten Sourcen weitergegeben werden. Die Weitergabe - von geänderten Binaries, sowie diffs zu den Sourcen ist hingegen - zulässig. Das soll keine Schikane sein, sondern nur verhindern, daß - mehrere verschiedene Versionen der Sourcen auf dem Netz verfügbar + + * Es dürfen keine geänderten Sourcen weitergegeben werden. Die Weitergabe + von geänderten Binaries, sowie diffs zu den Sourcen ist hingegen + zulässig. Das soll keine Schikane sein, sondern nur verhindern, daß + mehrere verschiedene Versionen der Sourcen auf dem Netz verfügbar sind, was zwangslaeufig mit unnoetigem Aufwand fuer mich verbunden ist. + No changed sources may be distributed. The distribution of changed binaries & diffs to the sources is however allowed. This is not intended as chicanery, but to hinder multiple availability of multiple versions of source on the net, which would create excess work for me. - - * Binaries, die durch Änderungen an den Sourcen erstellt wurden + + * Binaries, die durch Änderungen an den Sourcen erstellt wurden unterliegen weiterhin den hier angegebenen Bedingungen, d.h. es ist keine kommerzielle Verwertung oder ein kommerzieller Vertrieb ohne meine vorherige, schriftliche(!) Zustimmung erlaubt. + Binaries produced from changed sources come under these conditions, .... no commercial value added ... sales ... allowed, without my prior written agreement. - - Ansonsten bin ich durchaus gesprächsbereit, d.h. wer aus irgendwelchen - Gründen gegen eine der hier angegebenen Bestimmungen verstossen will, der + + Ansonsten bin ich durchaus gesprächsbereit, d.h. wer aus irgendwelchen + Gründen gegen eine der hier angegebenen Bestimmungen verstossen will, der kann sich gerne an mich wenden. ... I'm open to discuss proposed breaches of these requirements. --------} So I wrote & got a release... {-------- From: uz@wuschel.ibb.schwaben.com (Ullrich von Bassewitz) Subject: Re: FreeBSD Ports wrapper for Estic-1.30 To: jhs@freebsd.org Date: Mon, 23 Sep 1996 19:15:16 +0100 (MET DST) - + > May we have your permission to put your unchanged generic distribution > sources (ie currently estic-1.30.zip on the FreeBSD CD-ROMs please ? > (FreeBSD is a non profit org. like X inc & FSF, > but Walnut Creek (who provide a free host for our co-ordination, - > at http://www.freebsd.org + > at http://www.freebsd.org > (& others occasionally) take snaps & release of FreeBSD > & provide the whole sources + binaries of all src + ports - + No problem. You are allowed to do so. The paragraph you cited is thought to help control who earns money selling my code, but I've no problems with that in the case of freebsd cdroms. --------} {-------- From: uz@wuschel.ibb.schwaben.com (Ullrich von Bassewitz) Subject: Re: istec 1008 To: jhs@freebsd.org Date: Tue, 19 Nov 1996 09:41:14 +0100 (MET) - + > I lost (or filed obscurely) the earlier permission you gave me, > for FreeBSD to store your sources & a packaged binary on the FreeBSD CD-Roms, > maybe you could give me some words again please, which I'll embed straight > in the wrapper & not loose this time ;-) - + I will change that in the next version anyway. So, you may distribute ESTIC as you like, as long as you leave the archive files intact. --------} -------------------------------------------------------------------------------- 4 References ============== http://africa.geomic.uni-oldenburg.de/~joey/Linux/istec-befehle Istec 1008 intern Da das Interesse gro_ ist (meines auch), hier der etwas - aufbereitete Text. Vielen vielen Dank an Hergen Lehmann, der sich die + aufbereitete Text. Vielen vielen Dank an Hergen Lehmann, der sich die M|he des Reverse-Engineering gemacht hat.

From: HERGEN_LEHMANN@TBX.BerliNet.DE (Hergen Lehmann) http://www.schwaben.de/home/uz/istecprot.html Ursprüngliche Version des Textes von Hergen Lehmann. Kleinere Erweiterungen/Korrekturen von Ullrich von Bassewitz. Erweiterungen der Version 1.93/1.95 von Paul Barnard (Emmerich), deutsche Übersetzung von Ullrich von Bassewitz. Weitere Tips und Hinweise von Norbert Richter (Autor von PMISTEC). http://www.symmetrix.ch/Public/janti/isdnfaq.html Author: c.dura@atlantis.cl.sub.de Frequently Asked Questions zu ISDN Dieses FAQ versteht sich also Informationsquelle fuer ISDN Einsteiger http://africa.geomic.uni-oldenburg.de/~joey/Linux/isdn-istec-befehle.html

ISTEC 1008 intern

Da das Interesse groß ist (meines auch), hier der etwas - aufbereitete Text. Vielen vielen Dank an Hergen Lehmann, + aufbereitete Text. Vielen vielen Dank an Hergen Lehmann, der sich die Mühe des Reverse-Engineering gemacht hat.

http://www.snafu.de/~drebert/istec.html Istec Firmenware^M http://www.emmerich.com/telekom/links.htm Links zu Interessanten Pages http://www.bestweb.com/intfun/jrs/euroinfo.html EuroISDN Telekom-Tarife+Technik -------------------------------------------------------------------------------- 5 Serial DC Handshaking ============================= From: AmIstec (another package) / CE-Istec.LiesMich WICHTIGER HINWEIS ZU DEN NEUEN ISTEC-ANLAGEN MIT CE-ZEICHEN!! ============================================================= - + Die neuen Istec-Anlagen mit CE-Zeichen funktionieren leider nicht mehr ohne weiteres an Nicht-Dosen, weil Emmerich die serielle Schnittstelle galvanisch von der Anlage entkoppeln mu_te. Die f|r die Daten|bertragung erforderlichen Spannungen - werden daher einfach von von den DTR- und RTS-Leitungen + werden daher einfach von von den DTR- und RTS-Leitungen bezogen. Dazu wird bei der Originalsoftware DTR auf logisch 1 und RTS auf logisch 0 gesetzt um so die negative bzw. positive Spannung der Istec zur Verf|gung zu stellen. Leider ist das gezielte Setzen einzelner Signalleitungen im serial.device des Amiga nicht vorgesehen. Hier werden immer beide Leitungen auf logisch 1 gesetzt. Um die Spannungsversorgung trotzdem zu ermvglichen, kann man einen Schnittstellenadapter basteln, der die erforderlichen Spannungen von Pin 9 und 10 des Amiga-Ports auf die beiden Signalleitungen umlegt. Nach einiger \berlegung und durch die Mithilfe von Christian Buchner ist es mir aber gelungen zu ermvglichen, da_ mit AmIstec auch die neuen Istec-Anlagen ohne diesen Hardwarezusatz am Amiga betrieben werden kvnnen. Dazu wird die DTR-Leitung direkt |ber die Hardware gesetzt, soda_ die Istec genau das bekommt, was sie erwartet. Dieser Patch wird durch den Tooltype CEPATCH aktiviert bzw. bei - einem CLI-Aufruf als Parameter mitgegeben. + einem CLI-Aufruf als Parameter mitgegeben. From: uz@wuschel.ibb.schwaben.com (Ullrich von Bassewitz) To: jhs@freebsd.org Date: Thu, 14 Nov 1996 14:44:52 +0100 (MET) Oliver von Bueren ... sent me changes a few days ago. His changes are relative to version 1.40 and they seem to work for him. The only change that was new for me, was a call to DTROff (a function of the serial port class). If this is really needed (and he stated that he checked the pins with a voltmeter), this means that there is an error in the serial module. The DTR pin should be inactive if there is no hardware handshaking enabled as is the case with ESTIC. - - + + The only thing that was really new for me was the call to DTROff. I will check the serial module, since this call cures a symptom and not the error itself (but you may use it anyway). - + If you make any changes (apart from those in Oliver's diffs), I would like to hear from it. I got a few mails from FreeBSD people and I would like to incorporate any changes that make ESTIC work for FreeBSD into the main release. This little work saves me lots of emails :-) -------------------------------------------------------------------------------- 6 People who may be interested in this port ============================================= People who may be interested in this port as it evolves: "Ullrich von Bassewitz" , "Oliver von Bueren" , "Julian H. Stacey" , "Peter Dieth" , "Terry Lambert" , "Christian Kratzer" , "Torsten Blum" , "Greg Lehey" , "Robert Eckardt" To give the FreeBSD `powers that be' confidence to commit this wrapper, I append a quote: (which can be deleted once the port is committed). > From: Robert Eckardt > Subject: Re: your mail > Date: Thu, 21 Nov 1996 01:51:23 +0100 (MET) > > .... > No, as stated above, it works fine now. > Just getting the 1.40 zip-file, applying the ports and changing the -> config file was sufficient. +> config file was sufficient. > Now you have another data point in the sets of working configurations. ------ > From: Robert Eckardt > Subject: Re: ESTIC > To: uz@ibb.schwaben.com > Date: Thu, 21 Nov 1996 10:55:36 +0100 (MET) > Cc: roberte@mep.ruhr-uni-bochum.de, jhs@freebsd.org, uz@ibb.schwaben.com > > > /usr/X11 is usually a link to /usr/X11R6. I don't know if this is true with > > FreeBSD but most Linux distributions have it. > > FreeBSD does not have it by default. > The X11 dir was changed in many other places in the makefiles, so may > be it would be a good idea to change it in the last place too. > In fact, one could use perhaps some make-var X11ROOT (don't know what's > standard). > > Nevertheless, it's a graet port for a very useful program. -------------------------------------------------------------------------------- -7 Bugs & Problems +7 Bugs & Problems ======================= - I have to start it as xestic -display :0 else I get Internal error: ScrInit: Cannot open display, file xsrc/console.cc, line 898 - When it starts I (jhs) get Malloc warning: free(): junk pointer (too high) but after that it runs fine. - Alt X does not exit properly. -- Strange error messages if a file does not exist, +- Strange error messages if a file does not exist, First I get a nice error message: Cannot open the alias file! ESC only then do I get the nasty one I remembered Internal error: Call to abstract method (= 0) file strmable.cc line 46 Source shows: void Streamable::Store (Stream&) const { 46 ABSTRACT (); } - Mouse cursor strangely converts to skull & crossbones. - Alt X does not exit properly. UZ wrote: > This is usually because of a wrong setting for the modifier keys. ESTIC > uses Mod4 for Alt and Mod3 for Alt-Gr. Unfortunately, there is no standard > modifier key mapping, not even for the x86 unices, which use the same > keyboard layout. -------------------------------------------------------------------------------- diff --git a/net-mgmt/routers2-extras/files/patch-buildwan.pl b/net-mgmt/routers2-extras/files/patch-buildwan.pl index 6636c61ac416..59408aa271b8 100644 --- a/net-mgmt/routers2-extras/files/patch-buildwan.pl +++ b/net-mgmt/routers2-extras/files/patch-buildwan.pl @@ -1,279 +1,279 @@ --- buildwan.pl.orig Fri Jun 16 00:17:53 2006 +++ buildwan.pl Thu Dec 14 15:41:08 2006 @@ -1,4 +1,4 @@ -#!/usr/bin/perl +#!%%PERL%% # # Try to build configuration files for all the routers in the WAN, # by recursively scanning them. Can take a long time to run! @@ -16,7 +16,7 @@ use strict; use Net::SNMP; use FileHandle; -use vars qw($opt_L $opt_h $opt_s $opt_c $opt_D $opt_w $opt_N $opt_A); +use vars qw($opt_L $opt_h $opt_s $opt_c $opt_D $opt_w $opt_N $opt_A $opt_p); use Getopt::Std; my( $conffile, %config,@cfgfiles, $pathsep ); @@ -32,7 +32,12 @@ my($IPIFINDEX) = "1.3.6.1.2.1.4.20.1.2"; my($IPROUTEGW) = "1.3.6.1.2.1.4.21.1.7"; my($CPUOID) = "1.3.6.1.4.1.9.2.1.58.0"; +my($FNDRYCPUOID) = "1.3.6.1.4.1.1991.1.1.2.1.35.0"; my($MEMOID) = "1.3.6.1.4.1.9.9.48.1.1.1.5.1"; # have to find out -+my($FNDRYMEMOID) = "1.3.6.1.4.1.1991.1.1.2.1.55.0"; -+my($FNDRYMAXMEMOID) = "1.3.6.1.4.1.1991.1.1.2.1.54.0"; -+my($FNDRYBGPOID) = "1.3.6.1.4.1.1991.1.2.11.1.27.0"; -+my($FNDRYTEMPOID) = "1.3.6.1.4.1.1991.1.1.1.1.18.0"; ++my($FNDRYMEMOID) = "1.3.6.1.4.1.1991.1.1.2.1.55.0"; ++my($FNDRYMAXMEMOID) = "1.3.6.1.4.1.1991.1.1.2.1.54.0"; ++my($FNDRYBGPOID) = "1.3.6.1.4.1.1991.1.2.11.1.27.0"; ++my($FNDRYTEMPOID) = "1.3.6.1.4.1.1991.1.1.1.1.18.0"; # Cisco 7200 Series Temperature my($CISCOTEMP) = "1.3.6.1.4.1.9.9.13.1.3.1"; @@ -47,7 +52,8 @@ my( $domain ) = "...\.adsw\.com"; my( @community ) = ( "public" ); my( $community ); -my( $workdir ) = "/var/rrdtool/auto"; +my( $workdir ) = "/var/db/rrdtool"; +my( $pathadd ) = "/usr/local/bin"; my( @queue ) = ( ); my( $subdir ) = ""; my( @filelist ) = (); @@ -80,8 +86,9 @@ { my($snmp, $resp, $snmperr, $k); my($n,$v,$ip); - my($cpuok,$memok) ; + my($cpuok,$memok,$bgpok,$tempok); my($rcomm) = ""; + my($fndrymaxmem); $router = $_[0]; $cpuok = $memok = ""; @@ -268,15 +275,48 @@ $routerhostname = $routerip if(!$routerhostname); # now check to see if the router has an OID for CPU and mem - $resp = $snmp->get_request( $CPUOID, $MEMOID ); + $resp = $snmp->get_request( $MEMOID ); if( $resp ) { - $cpuok = $CPUOID if( $resp->{$CPUOID} ); $memok = $MEMOID if( $resp->{$MEMOID} ); + } else { + $resp = $snmp->get_request( $FNDRYMEMOID ); + if( $resp ) { + $memok = $FNDRYMEMOID if( $resp->{$FNDRYMEMOID} ); + $resp = $snmp->get_request( $FNDRYMAXMEMOID ); + if( $resp ) { + $fndrymaxmem = $resp->{$FNDRYMAXMEMOID} if( $resp->{$FNDRYMAXMEMOID} ); + } + } } + # Try $CPUOID, if this doesn't work, try Foundry one + $resp = $snmp->get_request( $CPUOID ); + if( $resp ) { + $cpuok = $CPUOID if( $resp->{$CPUOID} ); + } else { + $resp = $snmp->get_request( $FNDRYCPUOID ); + if( $resp ) { + $cpuok = $FNDRYCPUOID if( $resp->{$FNDRYCPUOID} ); + } + } + + # Try to check if BGP routes exists + $resp = $snmp->get_request( $FNDRYBGPOID ); + if( $resp ) { + $bgpok = $FNDRYBGPOID if( $resp->{$FNDRYBGPOID} ); + } + + # Try to check if router has temp sensors (currently only foundry !) + $resp = $snmp->get_request( $FNDRYTEMPOID ); + if( $resp ) { + $tempok = $FNDRYTEMPOID if( $resp->{$FNDRYTEMPOID} ); + } + + $routers{$router} = { interfaces=>{%interfaces}, name=>$routerdesc, ip=>$routerip, hostname=>$routerhostname, community=>$rcomm, - cpu=>$cpuok, mem=>$memok }; + cpu=>$cpuok, mem=>$memok, fndrymaxmem=>$fndrymaxmem, + bgp=>$bgpok, temp=>$tempok }; print "\rFinished router $routerhostname at address $routerip\n"; @@ -332,15 +372,20 @@ my($k,$nextip,$icon); my($t,$d,$f); my($mb,$pfx); + my $descr; $n = ucfirst $n if($n !~ /\./); foreach $k ( keys %$ifp ) { + my $descr; + $descr = $ifp->{$k}->{descr}; + $descr =~ s/\n//g; $icon = "interface-sm.gif"; $pfx = ""; $d = ""; $t = $h.".".$k; - $t = $h.".".$ifp->{$k}->{descr} if($ifp->{$k}->{descr}); + #$t = $h.".".$ifp->{$k}->{descr} if($ifp->{$k}->{descr}); + $t = $h.".".$descr if($descr); $t =~ s/[\[\]#\/\\\s]+/./g; $t =~ s/\.+/./g; $t = lc $t; @@ -349,7 +394,7 @@ if(!$ifp->{$k}->{speed} or !$c or !$h) { $pfx = "# "; } - if(!$includelans and $ifp->{$k}->{descr} =~ /(ether|token)/i) { + if(!$includelans and $descr =~ /(ether|token)/i) { $pfx = "# "; } # print "$k".$ifp->{$k}{state}.": ".$ifp->{$k}{descr} @@ -388,10 +433,10 @@ print CFG $pfx."Title[".$t."]: $n"; print CFG " (".$ifp->{$k}->{ip}.")" if($ifp->{$k}->{ip}); - print CFG ": ".$ifp->{$k}->{descr}." $d\n"; + print CFG ": ".$descr." $d\n"; print CFG $pfx."PageTop[".$t."]:

Traffic analysis for " - .$ifp->{$k}->{descr}."

\n"; - print CFG $pfx."SetEnv[".$t."]: MRTG_INT_DESCR=\"".$ifp->{$k}->{descr} + .$descr."\n"; + print CFG $pfx."SetEnv[".$t."]: MRTG_INT_DESCR=\"".$descr ."\" MRTG_INT_IP=\"".$ifp->{$k}->{ip}."\"\n"; if($mb > 1000000) { print CFG $pfx."routers.cgi*UnScaled[$t]: none\n" @@ -408,7 +453,7 @@ .$ifp->{$k}->{destination}[2]." router-sm.gif\n"; } print CFG $pfx."routers.cgi*ShortDesc[$t]: " - .$ifp->{$k}->{descr}." (".(ucfirst $ifp->{$k}->{destination}[0]) + .$descr." (".(ucfirst $ifp->{$k}->{destination}[0]) .")\n" if( $ifp->{$k}->{destination}[0] # and ($ifp->{$k}->{destination}[0] !~ /^\d/i) @@ -431,7 +476,8 @@ open CFG, ">$fname"; print CFG "# MRTG config for router ".$routers{$rk}{hostname} ." community ".$routers{$rk}{community} - ."\n\nWorkdir: $workdir\nLogformat: rrdtool\nOptions[_]: growright bits \n"; + ."\n\nWorkdir: $workdir\n" + ."PathAdd: $pathadd\nLogformat: rrdtool\nOptions[_]: growright bits \n"; print CFG "routers.cgi*Icon: router-sm.gif\n" ."routers.cgi*ShortDesc: ".$routers{$rk}{name}."\n\n"; @@ -451,6 +497,7 @@ .$routers{$rk}{name}." CPU Load\n"; print CFG "PageTop[".$routers{$rk}{hostname}.".CPU]: CPU Stats\n"; print CFG "routers.cgi*Mode[".$routers{$rk}{hostname}.".CPU]: cpu\n"; + print CFG "routers.cgi*UnScaled[".$routers{$rk}{hostname}.".CPU]: none\n"; print CFG "routers.cgi*ShortDesc[".$routers{$rk}{hostname} .".CPU]: CPU Stats\n"; } else { @@ -461,7 +508,11 @@ print CFG "Target[".$routers{$rk}{hostname}.".MEM]: " .$routers{$rk}{mem}."&".$routers{$rk}{mem}.":" .$routers{$rk}{community}."\@".$routers{$rk}{hostname}."\n"; - print CFG "MaxBytes[".$routers{$rk}{hostname}.".MEM]: 64000000\n"; + if( $routers{$rk}{mem} == $FNDRYMEMOID ) { + print CFG "MaxBytes[".$routers{$rk}{hostname}.".MEM]: ".$routers{$rk}{fndrymaxmem}."\n"; + } else { + print CFG "MaxBytes[".$routers{$rk}{hostname}.".MEM]: 64000000\n"; + } print CFG "Options[".$routers{$rk}{hostname}.".MEM]: " ."nopercent integer gauge noo\n"; print CFG "routers.cgi*UnScaled[".$routers{$rk}{hostname}.".MEM]: none\n"; @@ -480,6 +531,61 @@ } else { print CFG "# Unable to identify a Memory usage OID in MIB\n"; } + + if( $routers{$rk}{bgp} ) { + print CFG "# BGP routes\n"; + print CFG "Target[".$routers{$rk}{hostname}.".BGP]: " + .$routers{$rk}{bgp}."&".$routers{$rk}{bgp}.":" + .$routers{$rk}{community}."\@".$routers{$rk}{hostname}."\n"; + print CFG "MaxBytes[".$routers{$rk}{hostname}.".BGP]: 100000000\n"; + print CFG "Options[".$routers{$rk}{hostname}.".BGP]: " + ."absolute nopercent integer gauge noo\n"; + print CFG "routers.cgi*UnScaled[".$routers{$rk}{hostname}.".BGP]: none\n"; + print CFG "Title[".$routers{$rk}{hostname}.".BGP]: " + .$routers{$rk}{name}." Total BGP routes\n"; + print CFG "ShortLegend[".$routers{$rk}{hostname}.".BGP]: Routes\n"; + print CFG "YLegend[".$routers{$rk}{hostname}.".BGP]: BGP Routes\n"; + print CFG "PageTop[".$routers{$rk}{hostname}.".BGP]: Total BGP Routes\n"; + print CFG "LegendI[".$routers{$rk}{hostname}.".BGP]: Routes:\n"; + print CFG "Legend1[".$routers{$rk}{hostname}.".BGP]: Routes\n"; + print CFG "Legend3[".$routers{$rk}{hostname}.".BGP]: Peak Routes\n"; + print CFG "routers.cgi*ShortDesc[".$routers{$rk}{hostname} + .".BGP]: BGP Routes\n"; + print CFG "routers.cgi*Options[".$routers{$rk}{hostname} + .".BGP]: noo, nopercent, absolute, nototal, nopercentile\n"; + } else { + print CFG "# No BGP routes OID in MIB\n"; + } + + if( $routers{$rk}{temp} ) { + print CFG "# Temperature\n"; + # Warning Foundry OID is temperature * 2, so we have to divide it by 2 + print CFG "Target[".$routers{$rk}{hostname}.".TEMP]: " + .$routers{$rk}{temp}."&".$routers{$rk}{temp}.":" + .$routers{$rk}{community}."\@".$routers{$rk}{hostname}." / 2\n"; -+ # 100°C is sufficient to handle this. At this temperature, we can think ++ # 100°C is sufficient to handle this. At this temperature, we can think + # that router ... near to die. + print CFG "MaxBytes[".$routers{$rk}{hostname}.".TEMP]: 100\n"; + print CFG "Options[".$routers{$rk}{hostname}.".TEMP]: " + ."absolute nopercent gauge noo\n"; + print CFG "routers.cgi*UnScaled[".$routers{$rk}{hostname}.".TEMP]: none\n"; + print CFG "Title[".$routers{$rk}{hostname}.".TEMP]: " + .$routers{$rk}{name}." Temperature\n"; -+ print CFG "ShortLegend[".$routers{$rk}{hostname}.".TEMP]: °C\n"; ++ print CFG "ShortLegend[".$routers{$rk}{hostname}.".TEMP]: °C\n"; + print CFG "PageTop[".$routers{$rk}{hostname}.".TEMP]: Temperature\n"; + print CFG "LegendI[".$routers{$rk}{hostname}.".TEMP]: Temperature\n"; + print CFG "Legend1[".$routers{$rk}{hostname}.".TEMP]: Temperature\n"; + print CFG "Legend3[".$routers{$rk}{hostname}.".TEMP]: Peak Temperature\n"; + print CFG "routers.cgi*ShortDesc[".$routers{$rk}{hostname} + .".TEMP]: Temperature\n"; + print CFG "routers.cgi*Options[".$routers{$rk}{hostname} + .".TEMP]: noo, nopercent, absolute, nototal, nopercentile\n"; + print CFG "routers.cgi*Icon[".$routers{$rk}{hostname} + .".TEMP]: temp-sm.gif\n"; + } else { + print CFG "# No Temperature OID in MIB\n"; + } + close CFG; @@ -495,10 +601,10 @@ $script = "/cgi-bin/routers2.pl"; } -getopts('hc:D:s:Lw:NA'); +getopts('hc:D:s:Lw:NAp:'); if($opt_h or $#ARGV<0) { - print "Usage: buildwan -h\n buildwan [-L][-A][-N][-s ][-c ][-D ] -w ...\n"; + print "Usage: buildwan -h\n buildwan [-L][-A][-N][-s ][-c ][-D ] -w -p ...\n"; print "-L: Include ethernet/token ring Lan interfaces\n"; print "-A: Include ethernet/token ring Lan interfaces even if they are down\n"; print "-N: Don't browse network neighors.\n"; @@ -506,6 +612,7 @@ print "-D: Specify domain name to be stripped from hostnames in descriptions\n"; print "-c: Specify SNMP community string (default is 'public'), separate with commas\n"; print "-w: Specify Work directory where the .rrd files go.\n"; + print "-p: Specify the rddtool path (default is /usr/local/bin).\n"; exit 1; } @@ -515,6 +622,7 @@ $includelans = 1 if($opt_L); $includealllan = 1 if($opt_A); $workdir = $opt_w if($opt_w); +$pathadd = $opt_p if($opt_p); @community = split /,\s*/,$opt_c if($opt_c); @community = ( 'public' ) if(!@community); if($opt_D) { diff --git a/textproc/rubygem-google-cloud-translate/pkg-descr b/textproc/rubygem-google-cloud-translate/pkg-descr index ab273ef30159..206d43cc9c7e 100644 --- a/textproc/rubygem-google-cloud-translate/pkg-descr +++ b/textproc/rubygem-google-cloud-translate/pkg-descr @@ -1,10 +1,11 @@ API Client library for the Cloud Translation API Cloud Translation can dynamically translate text between thousands of language pairs. Translation lets websites and programs programmatically integrate with the translation service. Actual client classes for the various versions of this API are defined in -versioned client gems, with names of the form google-cloud-translate-v*. The gem -google-cloud-translate is the main client library that brings the verisoned gems -in as dependencies, and provides high-level methods for constructing clients. +versioned client gems, with names of the form google-cloud-translate-v*. +The gem google-cloud-translate is the main client library that brings the +versioned gems in as dependencies, and provides high-level methods for +constructing clients.