home *** CD-ROM | disk | FTP | other *** search
- __
- / // //__)_ / /
- (__/(__// (_)(_(_
-
- the UUCP polling server R0.68 92/08/03
-
- (c)Copyright 1991,92 Ralf S. Engelschall, All Rights Reserved.
- (c)Copyright 1991,92 Cyvaned Systems, All Rights Reserved.
-
-
- 0 - DISTRIBUTION
-
- This material is neither freeware nor shareware nor public domain.
- It's copyrighted because it was developed for own usage only but may be
- freely destributed to help the Amiga community as long as no changes are
- made in the whole material and no charge is made for the distribution
- except for magnetic media, mailing materials and postage.
-
- Using this program implies that you have accepted all licence
- statements and/or conditions specified within this document.
-
-
- 1 - DISCLAIMER
-
- THE AUTHOR MAKES NO WARRANTIES, EITHER EXPRESSED OR IMPLIED, WITH
- RESPECT TO THE MATERIAL DESCRIBED HEREIN, ITS QUALITY, PERFORMANCE,
- MERCHANTABILITY, OR FITNESS FOR ANY PARTICULAR PURPOSE. THIS MATERIAL
- IS PROVIDED "AS IS" AND THE ENTIRE RISK AS TO ITS QUALITY AND
- PERFORMANCE IS WITH THE USER. IN NO EVENT WILL THE AUTHOR BE LIABLE FOR
- ANY GENERAL OR SPECIAL DAMAGES, INCLUDING DIRECT, INDIRECT, INCIDENTAL
- OR CONSEQUENTIAL DAMAGES RESULTING FROM THE USE OF THIS PROGRAM
- (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED
- INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF
- THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS).
-
-
- 2 - RIGHTS RESERVED
-
- The author reserves the right to make changes in the whole material
- identified in this puplication without notice and to distribute other
- revisions under different licence statements and/or conditions.
-
-
- 3 - NOTE
-
- Please excuse my uneven english, because it's not my nativeƔlanguage.
- But writing this documentation in german would decrease the number of
- people who can understand the function of UUPOLL and I hate german
- descriptions of international spreaded material because of the
- non-technical character of the german language. Thanks in advance!
-
-
- 4 - ABOUT
-
- 4.1 SHORT OVERVIEW
-
- - controls the execution of a UUCICO child as the parent part
- - checks for correct hostname and polling-time violation
- - controls abortion of UUCICO due to a precalculated restriction time
- - operates dependendly on status of last session
- - operates dependendly on (specific) pending work
- - controls dialup retries due to busy line or other UUCICO failures
- - controls abortions due to user interupts
- - can be disabled through a job control feature for crontab interventions
- - can abort a startup due to or break an already running UUCICO process
- - can give information about polling times and host status
- - can setup your modem before start of a polling session
- - can spawn UUCICO with additional options
- - can spawn own user command after a (successful) session
- - full UUCP logfile support similar to UUCICO
- - can run under full runtime debugging with variable debug level
-
-
- 4.2 DETAILED DESCRIPTION
-
- UUPOLL is a polling server written for the UUCICO from the Amiga UUCP
- package (V1.15 or later). If you don't know anything about UUCP this
- utility won't be for you and you should stop reading here and discard
- it. If you have already installed and configured an UUCP package (at
- least the transport layer and the main configuration from Amiga UUCP
- V1.15D or later is needed) on your system you should be able to use
- UUPOLL directly without setups. If not, stop here and configure your
- UUCP system first, really!
-
- You will probably ask, why we need a polling server? UUCP's UUCICO
- command handles all we need when polling a host, i.e. all transfer
- operations in detail. So if you are polling your NewsFeed once a week
- (which is actually ok for a leafsite only!), calling UUCICO manually is
- simple and works. But if you have many polling operations a day the
- handling of UUCICO will actually require nerves of steel because it is a
- simple transfer command for UUCP connections only and doesn't provide
- great comfort.
-
- Another boring thing to us was that we often need many polling retries
- before successfully connecting to heavily loaded hosts with few idle
- telco lines. At this situation we had to reenter the UUCICO command
- manually for each retry operation while waiting in front of our machines
- observing the polling processes. At first we had used a AmigaDOS(tm)
- batch script distributed with AmigaUUCP 1.13D to automate the retry
- procedure. This worked fine but not very elegant, because it used bad
- things like a dummy transfer file to check if UUCICO's last retry was
- actually successful.
-
- Another big problem (also not handled by UUCICO or the batch script
- mentioned) is that UUCICO doesn't stop when the polling time is over due
- to a given time restriction, i.e. the polling time is reserved but
- limited by the remote system. One of our remote systems for example
- reserves us a polling time of one half hour from four o'clock to half
- past four every morning to do all daily transfers. No other host had
- the right to poll at this time interval. This has the advantage that
- there aren't any retries when connecting because the telco line is
- explicitly reserved for us. The "disadvantage" is, that at half past
- four another reserved polling time (of another host) starts, which means
- that we have actually only the right to use the phoneline up to half
- past four and no longer.
-
- At half past four the phoneline have to be given free, otherwise we
- will become a great deal of flames from the sysop of the host polling
- after us because we had used his reserved time interval. Usually we had
- a connection time between 15 and 25 minutes on this polling sequence.
- But sometimes there is so many traffic inside our requested newsgroups
- that we still transferring data at half past four. At this situation we
- had to interrupt UUCICO because our polling time is over. To solve this
- problem we had stopped UUCICO via 'break' command started by our
- 'crontab' at half past four. This worked also fine but only little
- elegant.
-
- The next big problem was the fact, that after breaking UUCICO the
- remote host will hold not already transferred data until we poll again.
- That's ok so no data will be lost. But the really problem is that a lot
- of data is waiting for us if we break the next polling session again and
- then the next one also and the next one... To solve this we had started
- UUCICO at a second time (some hours later) where all host can poll which
- don't have a reserved polling-time. So we had the ability to receive
- all remaining data from this remote host at this session but we had to
- do this manually because if the first connection wasn't breaked the
- second one would be redundant and cost phone units only. The only way
- to solve this correct and elegant is to know, whether the last polling
- session was successful.
-
- You see, these are all problems which can be solved by writing a
- intelligent server program for UUCICO which handles _all_ this
- situations _automatically without us_. So UUPOLL mushroomed out of my
- brian...
-
-
- 5 - REQUIREMENTS
-
- As mentioned above you have to install a UUCP package like AmigaUUCP
- from Matt Dillon (V1.15 or later) or compatible. For detail have a look
- at the manual pages of _your_ UUCP software. UUPOLL relies on UUCICO
- and UUXQT of V1.15D or later only, but you should have a correct package
- at all.
-
-
- 6 - INSTALLATION
-
- If you have a already configured UUCP system, installing UUPOLL will
- be quite simple: Just copy UUPOLL to the same directory where your
- UUCICO stays. Thats important because otherwise UUPOLL wouldn't be able
- to fork the UUCICO command. Usually UUPOLL and UUCICO are staying at
- UUBIN: or UUCP:C/ where all other UUCP command are. Of course you can
- (but why should you?) give UUPOLL another name by renaming it. It acts
- in all situations with its AmigaDOS(tm) name.
-
- But be sure that the following things are already configured before
- you try to run UUPOLL successful. Otherwise do it now!
-
- You need a correct UULIB:l.sys file, where UUPOLL can extract
- informations about the host you want to poll (i.e. if it exists,
- baudrate, allowed polling times). This should already exist and
- configured correctly because this is also used by SENDMAIL and UUCICO.
- For example, have a look at a part of UULIB:l.sys of site CyvaNT2
- (angle.muc.sub.org):
-
- :
- | # CyvaNT1 (cyvaned.sub.org)
- !| cyvaned Any SER: 9600 ATS7=060DP97990 ogin: Uangle sword: XXXXXX
- |
- | # Alcolix (brumuc.muc.sub.org)
- !| brumuc 04:00-04:30,08:00-10:00,12:15-12:45,13:15-15:00,
- ... 16:15-18:30,19:00-20:30 SER: 9600 ATDP0893544971 in: Uangle rd: XX
- !| brumuc 04:15-04:50 SER: 9600 ATDP0893544023 in: Uangle rd: XX
- :
-
- As you can see, `angle' has direct connections to hosts `cyvaned' and
- `brumuc'. At `cyvaned' there is one phoneline only, `brumuc' has two
- phonelines. Notice that UUPOLL supports such multiline entries, too.
- Both have many reserved times, so `angle' have to know all these time
- intervals where it is allowed to poll each host (these times are given,
- not the reserved ones!). UUPOLL checks for these time intervals, so be
- careful: Take them up to date! Notice, a bad time-field (the second
- field) will produce a bad `host status' ("-i").
-
- If you want to use the `automatic hostname' feature (which is useful,
- if you poll only one host or one host the most of the time), i.e. not
- specifying one of the "-s" or "-S" option, make sure that UUPOLL can
- open a file called UULIB:config where it can find a field named
- "DefaultHost". For example, `angle's config-file looks like this:
-
- :
- | NodeName angle
- | UserName rse
- | RealName Ralf S. Engelschall
- | Organization Cyvaned Systems
- | DomainName .muc.sub.org
- !| DefaultNode brumuc.muc.sub.org
- | TimeZone CET
- | LockDir uuspool:
- | MungeCase N
- | Debug 0
- | Filter ed -sticky
- | RFilter ed -sticky
- | MailEditor ed -sticky
- | NewsEditor ed -sticky
- :
-
- UUPOLL strips off domains automatically when extracting the hostname,
- setting this field to "brumuc", "brumuc.uucp" or "brumuc.muc.sub.org"
- results always in a default hostname of "brumuc".
-
- If you want to use the modem setup function ('-m') make sure, that
- UUPOLL can find a correct setup file called UULIB:modemsetup. For
- details about the layout of this file see the paragraph below where the
- '-m' option is explained.
-
- The only thing which UUPOLL uses and which you need not configure is
- the UUCP logfile, called UUSPOOL:logfile. Here, UUPOLL appends (as
- UUCICO, UUXQT, etc. do) his logbook-messages. Notice, that UUPOLL
- defaults to do no console output. The only way to check what was done
- or went wrong is to look at this file (unless the runtime debug is
- enabled).
-
-
- 7 - USAGE
-
- 7.1 SHORT OVERVIEW
-
- uupoll [-s [System]] [-S [System]] [-r Num] [-d Sec] [-t Min]
- [-u Arg] [-m] [-n [UserName]] [-e [Cmnd]] [-E [Cmnd]]
- [-p [[+|-]Files]] [-P [[+|-]Bytes]] [-a] [-c [Mode]] [-j [Status]]
- [-i] [-I] [-x Num] [-v] [-?]
-
- s poll the specified system u additional uucico arguments
- S as 's' but ignore time restriction m setup modem before startup
- r number of retries before giving up n notify user if session fails
- d seconds of retry delay time e execute after polling session
- t minutes of restriction time E as 'e' but execute always
-
- p poll only if pending files i short host status information
- P poll only if pending (k)bytes I long host status information
- a always poll - ignore success status x number of debuglevel
- c check for already spawned uucico v version info
- j switch/set job control status ? usage info
-
-
- 7.2 DETAILED DESCRIPTION
-
- [-s [System]] "poll the specified system"
-
- This specifies the system which UUPOLL should poll. Use the UUCP
- name, not the logic one, i.e. at `angle' I have to set it to `cyvaned'
- instead of `CyvaNT1' and `brumuc' instead of `Alcolix'. If this option
- isn't used, UUPOLL extracts the hostname of the field "DefaultHost" in
- UULIB:config.
-
-
- [-S [System]] "as 's' but ignore time restriction"
-
- This specifies also the system which UUPOLL should poll, but with the
- addition that this "profanes" the holy situation of restriction time
- violation. This is similar to UUCICO's -S option.
-
- The advantage of this option would be that you can use a polling trick
- introduced by T.Lotterer (joedust@cyvaned.cyvaned.sub.org). Think about
- his situation: He wanted to poll one of his NewsFeeds and waits until
- no reserved time is active because he didn't want to steal someone's
- reserved time. Now he starts to dialup his NewsFeed but the line was
- busy, busy, busy...
-
- The reason why this happens was clear: All other hosts act similar.
- The only solution to avoid this situation would be to start polling a
- few minutes before all other would do, i.e. starting _before_ the
- reserved time would be over. Oh, you think thats not ok, because now we
- use someones reserved time? That's right, but no one would disagree
- because if someone is still polling at his reserved time, he could not
- be interrupted and if he has already finished he has no reason why he
- should disagree with us.
-
- So if T.Lotterer wanted to poll his NewsFeed he waits until 30% or
- more of the currently active reserved time is over and then started to
- dialup his NewsFeed.
-
- This feature is also useful for debugging without having to alter the
- l.sys file.
-
-
- [-r Num] "number of retries before giving up"
-
- This indicates the total number of re(!)tries. Remember that retries
- means that the first retry is trial number 2! A retry of zero (the
- default) forces UUPOLL to try only once and then give up.
-
-
- [-d Sec] "seconds of retry delay time"
-
- This indicates the number of seconds which UUPOLL will wait until it
- starts a new dial retry. Default is no delay time (0 seconds). This
- was originally introduced for special situations to avoid too many dials
- which result in a lot of unused telephone units due to a telephone
- number change without notice by one of our NewsFeeds.
-
- It also keeps the line a bit idle between retries, allowing remote
- sites to log into your local system.
-
-
- [-t Min] "minutes of restriction time"
-
- If specified with a number not equal zero this sets the number of
- minutes after which UUPOLL should terminate UUCICO. This timer starts
- immediately after you have started UUPOLL. I call this the 'restriction
- time' for the polling session. If this option is left, UUPOLL
- calculated the minutes out of the given time intervals found in
- UULIB:l.sys.
-
-
- [-u Arg] "additional UUCICO arguments"
-
- This specifies the additional(!) arguments for the UUCICO call.
- UUPOLL starts UUCICO always with "UUCICO -S{hostname}" and will
- optionally add this string to the end of that `calling command'. If you
- wish no addidtionl args you have to specify `-u' only. The default is
- "-7" which indicates that UUCICO should use a 7-Wire-Handshake.
-
- But notice, you have to specify the option argument string in a
- special form if you use a seperation blank between UUPOLLs option and
- the option argument. You have to write `-u " -X -Y -Z ..."' (notice the
- blank character after the first quotation mark!) instead of `-u "-X -Y
- -Z ..."'. This is no bug in UUPOLL, its a special case in option
- parsing.
-
-
- [-m] "setup modem before startup"
-
- If specified this indicates UUPOLL to setup your modem according to
- the commands found in UULIB:modemsetup before it starts the first UUCICO
- process.
-
- This configuration file is the only introduction of UUPOLL, all other
- configuration files should already exist. The layout of this file is
- similar to NEWSCTL:sys of CNEWS, which specifies the newsgroups
- interchanged with each host. Instead of explaining this, please have a
- exact look at 'angle' ones.
-
- :
- !| default:\
- | ATZ,ATE1,ATH0,ATK1,ATL3,ATM2,ATQ0,ATV1,ATX4,\
- | ATS0=000,ATS2=043,ATS3=013,ATS4=010,ATS5=008,ATS6=002,ATS7=060,ATS8=002,ATS9=010,\
- | ATS10=015,ATS12=050,ATS18=000,ATS25=000,ATS26=000,\
- | AT&B0,AT&C1,AT&D2,AT&H1,AT&L0,AT&M0,AT&R2,\
- | AT*A0,AT*D0,AT*E1,AT*F3,AT*P0,AT*Q0,AT*S1,AT*E1,AT*U0,\
- | AT&W
- |
- !| cyvaned:\
- | AT*E1,AT&W
- |
- !| brumuc:\
- | AT*E0,AT&W
- :
-
- ATTENTION! Don't forget the "AT&W" (or your modem equivalent) command
- at the end of your AT command sequence. If you forget this, no setup
- effect will happen because when UUPOLL closes the serial.device after
- its modemsetup the serial.device will drop the DTR (Data Terminal Ready)
- signal which has the result that your modem will reset itself to its
- last configuration which had exist before the last AT&W command. Use
- the third field of UULIB:l.sys for setups which should not remain after
- the polling session and use UUPOLL's UULIB:modemsetup for permanent
- setups only.
-
- Notice, if no entry for the current host can be found in
- UULIB:modemsetup, the modemsetup function uses the commands given at the
- fake-hostentry named "default".
-
- BE CAREFUL! Use the ModemSetup with care. No, it has no serious bugs
- in code, but has a lot of problems with the other commands of the UUCP
- package, i.e. UUCICO and GETTY. The first problem occurs if you try to
- poll with modemsetup while GETTY is running. GETTY locks the
- serial.device explicitly, so UUPOLL wouldn't be able to open the
- serial.device. The second problem comes up, if you try to run UUPOLL
- with the LOCKSERIAL command. This works fine for UUPOLL, i.e. it now
- could setup your modem, but UUCICO will hang forever because it tries to
- lock the serial.device too and comes never back... The only solution is
- either to kill GETTY when using the modemsetup function of UUPOLL or to
- leave this feature unused.
-
-
- [-n [UserName]] "notify user if session fails"
-
- If you specify this option and the polling session fails due to a
- restriction timeout or maximal number of retries the given user (or per
- default `postmaster') will be notified about this. The user will
- receive a message like the following:
-
- | From UUPOLL-DAEMON Fri, 12 Jun 1992 22:23:40 +0200
- | Return-Path: <UUPOLL-DAEMON>
- | Received: by angle.muc.sub.org (\/<>\/ SmailAmiga 1.02j21)
- | id <m0lwK20-00002Qc>; Fri, 12 Jun 1992 22:23:40 +0200
- | Message-Id: <m0lwK20-00002Qc@angle.muc.sub.org>
- | Date: Fri, 12 Jun 1992 22:23:40 +0200
- | From: UUPOLL-DAEMON@angle.muc.sub.org (UUCP Admin Subsystem)
- | To: postmaster
- | Subject: brumuc: polling failed
- | X-Status: OR
- |
- | [autogenerated message]
- |
- | Local Time : Fri Jun 12 22:23:36 1992
- | Remote Host : brumuc
- | Status : polling failed
- |
- | --
- | UUPOLL-DAEMON
-
-
- [-e [Cmnd]] "execute after polling session"
-
- This specifies the user command which will be executed by UUPOLL after
- a polling session. The default is the UUXQT command. It will be
- executed after..
- .. a successful UUCICO session
- .. UUPOLL was aborted due to a restriction timeout
- .. UUPOLL was aborted by the user or by a UUCICO break/software error
- To disable the execution of a user command specify `-e' only.
-
-
- [-E [Cmnd]] "as 'e' but execute always"
-
- This is the same as 'e' but with the only difference that this will
- force UUPOLL to execute the user command _always_, even if it terminates
- due to a internal error or any other conditions. To force the default
- user command to be executed always, specify `-E' - not `-E ""' because
- this will indicate `no user command'.
-
-
- [-p [[+|-]Files]] "poll only if pending files"
-
- This option indicates UUPOLL to poll only if there is pending work,
- i.e. number of spooled files, for the host. Per default (or if the
- option `-p0' is given) UUPOLL does no such check. If `-p{N}' is
- specified UUPOLL polls according to the following rules:
-
- N>0 : poll only if more or equal to N pending files
- N=0 : poll independend of any pending files (same as not specifing
- this option)
- N<0 : poll only if less or equal to N pending files
-
- The default (if '-p' is specified without an argument) is one or more
- pending files (so, '-p' is equal to '-p1'). This option was introduced
- for `DEMAND' pollings.
-
-
- [-P [[+|-]Bytes]] poll only if pending (k)bytes
-
- This option indicates UUPOLL to poll only if there is pending work,
- i.e. number of spooled kilo bytes, for the host. Per default (or if
- the option `-P0' is given) UUPOLL does no such check. If `-P{N}' is
- specified UUPOLL polls according to the following rules:
-
- N>0 : poll only if more or equal to N KBytes data
- N=0 : poll independend of any pending data (same as not specifing
- this option)
- N<0 : poll only if less or equal to N KBytes data
-
- The default (if '-P' is specified without an argument) is one or more
- pending files (so, '-P' is equal to '-P10'). This option was introduced
- for `DEMAND' pollings. Notice, this option has higher priority as '-p'!
-
-
- [-a] "always poll - ignore last status"
-
- This forces UUPOLL to start the polling procedure independend of its
- status of the last session, i.e. whether the last session was
- successful or not.
-
- UUPOLL sets a enviroment variable (`UUPOLL.STAT.{hostname}') for each
- host automatically after a polling session to `SUCCESSFUL' or `FAILED'
- according to the results of the polling procedure. At startup UUPOLL
- checks for this variable and does nothing if its status is already
- `SUCCESSFUL'. But if you specify this option UUPOLL treats it always as
- `FAILED' and starts the polling procedure even if the last one was
- already successful. This should be used in the following context with a
- `crontab', e.g. here is `angle's crontab:
-
- :
- | 05 03 * * * trimsys
- | 10 03 28 * * autoinpaths angle mailto
- ... pathsurvey@stasys.sta.sub.org
- | 10 03 * * * uppub
- | 15 03 * * * bms batch
- | 20 03 * * * batchsite cyvaned
- | 25 03 * * * gettyctl run on
- | 40 03 * * * uupoll -p -c0 -d120 -r3 -t20 -Scyvaned
- ... -u " -7 -p3"
- | 45 03 * * * gettyctl off shut
- | 50 03 * * * batchsite brumuc
- !| 00 04 * * * uupoll -a -c1 -d120 -r6 -t30 -Sbrumuc
- ... -u " -7 -p3" -e poll.workup
- | 55 04 * * * uumsg.daily
- | 59 04 * * * shutdown
- :
-
- :
- !| 00 08 * * * uupoll -c1 -d120 -r6 -t60 -Sbrumuc
- | 59 08 * * * shutdown
- :
-
- As you can see, the cron-daemon starts a polling session every morning
- at four o'clock to connect to host `brumuc'. As mentioned above,
- `angle' has a reserved polling time at host `brumuc' from four to half
- past four. So UUPOLL is started with a restriction time of 30 minutes
- (of course this could be left, then UUPOLL calculates these 30 minutes
- out of the UULIB:l.sys entry for host `brumuc).
-
- UUPOLL now connects to `brumuc' with a maximum of 30 minutes. If
- there would be more data than `angle' could get in this time interval,
- UUPOLL breaks at half past four. Then the status of this polling
- session is set to `FAILED' which lets the second UUPOLL (started at
- eight o'clock) to go on with the transmission. If the first sesssion
- would be successful the second UUPOLL does nothing!
-
-
-
- [-c [Mode]] "check for already spawned UUCICO"
-
- This option was introduced for special situations. It tells UUPOLL to
- check for a running UUCICO process at startup. Have a look again at my
- crontab:
-
- :
- | 25 03 * * * gettyctl run on
- | 40 03 * * * uupoll -p -c0 -d120 -r3 -t20 -Scyvaned
- ... -u " -7 -p3"
- | 45 03 * * * gettyctl off shut
- :
-
- First, the background: the connection `angle' <-> `cyvaned' is a
- daily DEMAND connection, i.e. if one of these hosts have pending work,
- it polls the other. To implement this connection we could give
- `cyvaned' a time from 03:00-03:30 to poll `angle' and a time from
- 03:30-04:00 for `angle' to poll `cyvaned'. Then at each host UUPOLL is
- started with the `-p' option (see above) to poll only if pending work.
- This would work fine, because if `cyvaned' had work it polls angle
- first, then `angle' will not poll back even if there _was_ work, but
- will poll if `cyvaned' hadn't polled.
-
- The only "problem" is, that we had to reserve two(!) polling times!
- To solve this "problem", we can use the `-c0' option from UUPOLL:
-
- We reserve only one polling time from 03:30 for both polling
- directions. As you can see from 03:25-03:45 the GETTY command runs to
- observe the phoneline and to answer incoming calls. This is done
- because `cyvaned' tries always to start a connection first. So
- `cyvaned' has 15 (actually 20 but it start dialing `angle' at 03:30!)
- minutes to dial `angle'. If `cyvaned' didn't poll `angle' (due to no
- pending work) and `angle' has pending work, `angle' polls `cyvaned' ten
- minutes after the polling time interval starts (i.e. 03:40). If
- `cyvaned' polls `angle', `angle' (i.e. UUPOLL on `angle') had to now at
- 03:40 if it should poll back or not.
-
- The `-p' option does a goof work only, if the connection would be less
- than 10 minutes (i.e. the connection is finished at 03:40). If the
- connection still in process, this doesn't work. But the '-c0' option
- tells UUPOLL to abort immediately after startup if there is still a
- connection active (i.e. a still running UUCICO process).
-
- Another feature is `-c1': This tells UUPOLL to break a UUCICO process
- which is still active at UUPOLL startup. This is useful when you want
- your system to poll out even if there is still a active incoming polling
- process (i.e. a host is still polling your system).
-
-
- [-j [Status]] "switch/set job control status"
-
- UUPOLL can be disabled via this option, i.e. you can forbid UUPOLL to
- do anything (except host status) until you permit it again. `-j'
- switches the status from `disabled' to `enabled' or vice versa. `-j0'
- disables, `-j1' enables UUPOLL. UUPOLL uses the enviroment variable
- UUPOLL.JOBCTL to store the status of this flag.
-
- This option was introduced for crontab interventions.
-
-
- [-i [Mode]] "current host status information"
-
- This option tells UUPOLL not to poll actually but to give you the
- current host status. This function can be used in conjunction with `-s'
- to display a particular host status. You can specify an argument to
- this option: "0" for short host status (without the 72 hour chart) and
- "1" for long hoststatus. Specifing no argument to `-i' acts like `-i0',
- i.e. the short hoststatus is displayed.
-
- The short host status will look like the following:
-
- | UUPoll Host Status on angle Sat Jun 06 20:24:28 1992
- |
- | remote host : brumuc
- | last polling : failed
- |
- | ACTIVE polling time intervall [#] NEXT polling time intervall
- | from Sat/19:00 to Sat/20:30 from Sun/04:00 to Sun/04:50
- | total time 01:30, remaining 00:06 total time 00:50, in 07:36
-
- The long host status will look like the following:
-
- | UUPoll Host Status on angle Sat Jun 0 ...
- |
- | remote host : brumuc [|] ...
- | last polling : failed [.]
- | ...
- | 55 ||...||.||.#............||...||.||.|............||...||.|
- | 50 ||...||.||.#............||...||.||.|............||...||.| ...
- | 45 ||...||.||.#........|...||...||.||.|........|...||...||.|
- | 40 ||..|||.||.#........|...||..|||.||.|........|...||..|||.| ...
- | 35 ||..|||.||.#........|...||..|||.||.|........|...||..|||.|
- | 30 ||..|||.||.#........|...||..|||.||.|........|...||..|||.| ...
- | 25 ||..|||.|||#X.......|...||..|||.|||||.......|...||..|||.|
- | 20 ||..|||.|||##.......|...||..|||.|||||.......|...||..|||.| ...
- | 15 ||..|||.|||##.......|...||..|||.|||||.......|...||..|||.|
- | 10 ||....|..||##.......|...||....|..||||.......|...||....|.. ...
- | 05 ||....|..||##.......|...||....|..||||.......|...||....|..
- | 00 ||....|..||##.......|...||....|..||||.......|...||....|.. ...
- | ^
- | 890123456789012301234567890123456789012301234567890123456 ...
- | 1 2 Sun 1 2 Mon 1
- | ...
- | ACTIVE polling time intervall [#] NEXT polling time inter
- | from Sat/19:00 to Sat/20:30 from Sun/04:00 to Sun/0 ...
- | total time 01:30, remaining 00:05 total time 00:50, in 07
-
- As you can see this will give you a full overview of all essential
- polling information. You will get
-
- - the local time (upper right hand corner)
- - the remote host and its last polling status
- - a 72 hour polling time chart (hours on x-axis, minutes on y-axis)
- - information about the time interval which is currently active
- - information about the next permitted time interval
-
- Look a while at this output to understand it and you will love it!
-
-
- [-x Num] "number of debuglevel"
-
- Because UUPOLL does no console output (except polling time violation
- message or host status) until you set the Runtime-Debugging you can
- specify the debuglevel (0-9) with this option. A level of zero means no
- debugging info, a level of nine means full debug output to the console.
-
-
- [-v] "version info"
- [-?] "usage info"
-
- Specify one of these options to let UUPOLL display either the version
- page or the usage page to the console.
-
-
-
- 8 - EXAMPLES
-
- $ uupoll
-
- This is the simplest way to use UUPOLL. It will extract the hostname
- of UULIB:config, does no retries and delays, calculates its restriction
- timeout to the current active time situation, spawns UUCICO via 'UUCICO
- -s{defaulthost} -7', does no modem setup, polls only if the last polling
- has failed and gives no console output.
-
- $ uupoll -i -scyvaned
-
- This will display the host status for `cyvaned'. No polling is
- actually done.
-
- $ uupoll -a -r10 -scyvaned
-
- This will poll host `cyvaned', ignore the current host status to and
- do a maximum of 10 retries if it couldn't connect.
-
- $ uupoll -a -p -Sbrumuc
-
- Now UUPOLL would always poll host `brumuc', even if there is a
- reserved time currently active (`-S') or if the last status was
- successful (`-a'), but not if there is no pending work for this site.
-
- $ uupoll -a -r10 -p3 -d120 -t30 -scyvaned -e poll.workup
-
- Now UUPOLL would poll host `cyvaned' idependently of the last session,
- but only if at least three command files are waiting for `cyvaned' in
- the spool directory. UUPOLL has thirty minutes to operate, should do a
- maxium of ten retries and waits two minutes between each retry. After
- completing the polling session successful UUPOLL should execute the
- script file `poll.workup' (script bit set!).
-
-
- 9 - REPORTS
-
- If you have any questions, incitements, comments, criticisms or bug
- reports, please contact me via email and let me know about it!
-
-
- Ralf S. Engelschall
- rse@angle.sub.org
-
-