ipbox This program is used for remote access. Its main function is for stringer copy in and mailboxes out. It can also be used for syndication clients who wish to dial-in in-order to receive their copy. There is an option to access wires on the UnixBox that have already been left in spool/wires by IPWIRES or the W4 wires structure in /fip/data/w4. For Atex sites with Gateway, there is also an option to allow access to files on the J11. The main types of service are : 1. Straight copy inbound 2. Ordinary mailbox - read and store and delete 3. Syndication mailbox - reading a list and accounting for it later. poss with ability to send message AND/OR read personal box. 4. Scroll and Read wire files. 5. Send/Receive messages 6. Scroll and Read editorial system lists and queues 7. Send E-mails (actually passes file to ipsmtp) Send msg (to the user) ie incoming msgs are sent to spool/post for IPPOST to further distribute either to the Editorial System or elsewhere. Files (and messages and stored mailbox files) may optionally be received via KERMIT or X/Y/ZMODEM protocols. Once logged on, the remote user can use AAI-like commands or can be lead through via a series of menus. The Command-driven interface commands are : lo logon logon lo logon,passwd logon lo logoff sd file send file to default dest sd file-q-g send file to q-g sd file/k send file using Kermit sd file/x send file using Xmodem sd file/y send file using Ymodem sd file/z send file using Zmodem he help ?? help ca (number) call file from wire queue ca file call file from current queue ca file-q-g call file from Atex gateway ca file/a call file and do not prompt for More ca file/k call file using Kermit ca file/x call file using Xmodem ca file/y call file using Ymodem ca file/z call file using Zmodem ds display current directory ds/6 display 6 line directory ds wirename display wire directory ds wirename.1 display wire directory of yesterday's traffic (not W4 wires - use time switch instead) ds wirename/s=POOL display a selective directory of all items with 'POOL' in the Headline Selective directories may also use '&' for AND and '!' (or '|') for OR eg : ds rtr/s=usa&mexico ds wirename/k=POOL display a selective directory of all items with 'POOL' in the first part of text (W4 wires only) ds wirename/t>21:30 display a selective directory of all items after 21:30 (24 hour clock) ds syntype display syndication directory rm read msgs rm/de read msgs and delete the msg file rm/nd read msgs and do NOT delete the msg file rm/k read msgs using Kermit rm/z read msgs using Zmodem ms logonname send msg to this logonname ms logon1,logon2,logon3 send this message to these logons ms logonlist/li send msg to this logon list or group of logons sa name save file in your personal mailbox (if you have one !) zp name zap delete file from your personal mailbox ti give time and date qs queue queue switch/change directory qi file--grp (Atex j11 with Gateway only) QI file in a group em e-mail address Send an Email - note you need ipsmtp to send Mailbox Logon file (tables/mail/LOGON) has the syntax : ; comments are preceded by ';' logon:name - logon name The logon name can contain spaces when typed in which should be specified as a single underscore '_'. otherwise only letters, numbers, dashes (-_), dollar sign and apostrophes ('") are valid eg logon:fat_frank pass:pass - password default: none width:40 - width of the screen default: 80 lines:24 - no of lines of screen default: 0/none eol:\r\n - end-of-line sequence default: CR LF dest:mailbox - destination (in USERS) for incoming traffic default: mailbox box:boxname - name of valid mailbox to read.default: none syn:synname - name of valid syndication queue to read. default: none use-w4-wires: - use the same data files as for w4, the fip web browser in /fip/data/w4. The default is files in spool/savewires generated by 'ipwires'. profile: profilename - profile for wires/atex queue access (atex via NFS Gateway only) default: none fifo: - read mailbox or syn dirs in fifo order default: lifo msgonj11: - The msg file resides on the Atex J11 and NOT on the rs6000. An (optional) logon can be added if the j11 logon is different to the ipbox LOGON. eg msgonj11:albert default: msg file is on the rs6000 boxonj11: - The default mailbox file resides on the Atex J11 and NOT on the rs6000. default: mailbox file is on the rs6000 gtwysvr:host,port - Gateway is on a different rs6000 of name 'host'. The port defaults to 9130. default: Gateway is on this rs6000 purge:4 - no of days unread mail and msgs is held before deleted default: 30 days noecho: - do NOT echo commands for this logon echo: - echo commands for this logon echo:endOfLine - echo commands AND and End-of-lines (CR or NL) return-address: - for sending emails, this is used for the From fields rather than using the actual logon (FipHdr SA). menu: - allowable menu commands if using menu pls see the actual values in the 'menu' command below. extrahdr: (string) Extra FipHdr fields to add to any incoming files from this user eg extrahdr:BZ:scott default:none Examples : ;sample mailbox for remote correspondant with a PC logon:sadaam pass:qwait box:oil dest:abroad ;sample mailbox for remote correspondant with a tandy logon:arthur pass:scargill box:coal dest:home width:40 logon:paul pass:bike syn:ach dest:zibble width:0 fifo: purge:4 The Profile file (tables/mail/PROFILE) describes what access a logon has for a particular profile and has the syntax : ; comment profile:(prfname) wires: (wiresq1), .. (wireqn) profile:(prfname) box:(box1), .. (boxn) profile:(prfname) atex: (atexgrp) : (atexq1) .. (atexqn) or profile:(prfname) atex: (atexgrp) : * profile:(prfname) chrset: (mailchrset) profile:(prfname) plus: (name of SUBSEQUENT profilename) profile:(prfname) dir:(name) (command-line Directory syntax) Examples : profile:hp wires:dpa,afp,reu profile:hp atex:sys:custom,fip profile:hp atex:wir:spike,anp profile:hp atex:usr:* profile:hp atex:vk:anpbin,anpbui,anpfin profile:hp chrset:rom profile:hp box:hp,hpspt,hpfin profile:wir wires:dpa,afp,reu where : -- There can be many lines for the same profile name. -- Only one type of subkeyword - WIRES, CHRSET etc - can be specified on one line -- WIRES is a list of valid wires queues under spool/savwires. If more than one day is keep - as in reu, reu.1, reu.2 etc - only the base - reu in this example - needs to be stated. -- BOX allows access to any mailboxes in spool/mail. Note that files must be lowercase in these mailboxes. -- CHRSET - The chrset parameter is to describe character translation from the J11 to the user when using Atex Gateway. The standard chrset is in tables/mail/ATEX_CHRSET (see below). -- ATEX is dependent on program 'ipsvrgtw' running to access the j11. A star, '*', in place of the queue means all queues in that group. -- PLUS allows you to add a couple of changes to a generic profile eg: 'art' here can look at wire que 'upi' in addition to the normal 'dpa', 'afp' or 'reu' as specified in the 'wir' profile. profile:art wires:upi profile:art plus:wir profile:wir wires:dpa,afp,reu Only one 'plus' is valid - you cannot plus another profile which has a plus! Also the added-to profile - 'wir' in the case above - MUST occur AFTER the calling profile - 'art' in this case. ie PLUS must refer to a profile which is physically later on in the PROFILE file. MailBox setup file (tables/mail/BOX) has the syntax : ; comment Remarks conn:CONNECT - connect string from the modem/pad disc:NO CARRIER\r - disconnect string from the modem/pad escape:+++ - wakeup string for modem/pad setup:athv1\\j0%g1\\n0\\q1\\g1e0%d0\\d0%c1s0=1%b2400\r - setup string for modem/pad clr:ath\r - cleardown string for the modem/pad ok:OK - acknowledge string from the modem/pad speed:4800 - speed of this port send:{SL - Start of file string where the user does not log on Note this gets stripped so it will need to be added again if required default:none ssss:{BT - Start of file string from the user. default:none nnnn:^E - End of file string from the user endeol: - End of file is on the first CR or NL after the 'nnnn' conymodem - Assume X/Ymodem on receive on a new connect. def: no This allows a X/Ymodem protocol transfer to take place immediately on CONNECT and without logging on. Note that normal running will take Zmodem and Kermit automatically at any point. However, for Xmodem and Ymodem, 'ipbox' needs to prompt the sender with a 'C' for the sender to start. It can be stopped by several CntrlX's. keepall:y - For non-logon traffic - keep all characters ie do NOT flag garbles as notes mode. dest:mailbox - default destination for incoming traffic This is the FIP header field DU. p2send: - 2nd prot Start of File string from user default: none without logging on if different to normal end p2nnnn: - 2nd prot End of File string from user default: none without logging on if different to normal end p2dest:mailbox - 2nd prot default destination for incoming traffic This is the FIP header field DU. p2keepall:y - 2nd prot traffic - keep all characters ie do NOT flag garbles as notes mode. abort:\003 - abort string the user types to stop a dir next:n - next page string the user types in a dir hide:!@# - if mailbox is hidden with the '-h' input switch, this is the wakeup string to prompt for logon. default: '$$$$' bits:8 - Data is 8 bits default: 7 banner:\021\nThis is the Evening News\s - welcome banner on connect banwait:5 - wait 5 seconds before sending the banner. default: 5 secs noecho: - do NOT echo commands by default echo: - echo commands by default echo:endOfLine - echo commands AND and End-of-lines (CR or NL) echomsg: - echo all 'send message' and 'send email' data if non-protocol ie if NOT kermit, x/y/zmodem, echo the data. echo-story-data: - echo any text of a file being sent (in ASCII mode only) default is no echo reconnect: - check for a CONNECT message during a online session Normally this is ignored. pchr: - Precedent chr for modes. ie the '{' of {M0 ds:ds - 2 letter code for directory scroll ca:re - 2 letter code for message call he:he - 2 letter code for read help file lo:lo - 2 letter code for logon/logoff sd:ne - 2 letter code for new file send rm:rd - 2 letter code for read msg sm:ms - 2 letter code for send msg (normally 'ms') em:mm - 2 letter code for send an e-mail zp:zp - 2 letter code for delete mailbox file sa:pu - 2 letter code for save file in mailbox ti:da - 2 letter code for date and time qs:cd - 2 letter code for queue switch qi:zz - 2 letter code for qi (Atex J11 Gateway only) modes:yes/no - show/dont show garbles in notes mode roman:[m0 - string for roman mode notes:[m2 - string for notes mode for garbles etc nodelrms: - make ReadMsg NO DELETE (rms/nd) the default. default: rms=rms/de scroll:9 - default no of lines in a dir scroll keepall:y - non-logon traffic - keep all characters gtwysvr:host,port - Default Gateway is on a different rs6000 of name 'host'. sessvr:host,port - SES Server exists and is on this port on this 'host'. allow-desks:y - for SII and CCI systems this allows a user to specify a desk which will be used for the BQ: hdr field unless overwritten in the USERS file. allow-subdesks:y - for SII and CCI systems this allows a user to specify a subdesk which will be used for the BQ: hdr field unless overwritten in the USERS file. allow-pools:y - for SII and CCI systems this allows a user to specify a pool and user basket which will be used for the BP and BB hdr fields. allowqg:y - for Atex systems this allows a user to specify a queue-group in J11 format which will be used for the DQ: hdr field unless overwritten in the USERS file. working:WORKING - the working message : used to check when the modem is echoing messages back. This must NOT start with an existing 2 letter code such as CA, DS etc. dirhdrflds:nofrre - a series of Two letter Header codes default is NO then FR then RE dirhdrsize:80 - fixed size for the Directory Header line no default. dirlimit:100 - Limit the directory to the first 100 items and stop even if there are more. no default but you are advised to have dirlimit of 100. chkmsglogon: (filename) Check each logon in a 'msg' command against an entry in this file. The file is (uppercase) in tables/mail. Each entry is on a single line. Comment lines start with a ';'. filefetched: (Msg) File Fetched message for Atex Gateway default: none eg filefetched:{m2File Fetched by \DA at \$h:\$n \$d-\$m-\$y{m0\002 Note that modes may be added as {Mx where x is the mode number. Note that FipHdr field DA holds the logon name. keepalive: (string) Keep Alive string sent back to the client when accessing a server (like a J11). eg keepalive:\r default: none extrahdr: (string) Extra FipHdr fields to add to all incoming files eg extrahdr:#FBIN:#DH:box default:none menu: Use the Menu interface by default default is the command line interface prompt-for-password: Rather than the lo (logon),(passwd) format, prompt for first logon and then passwd without the need of an 'lo'. allowrelogon: Allow a user to logon as someoneelse without cutting the call archive-file: Name of the Log Archive file to dump data into in log/data. (same as the -A input switch) routing-file: Routing file to use in tables/route (same as the -R input switch) desks-file: File in tables/mail containing a list of valid Desks (or Atex j11 queues) This is the same as the '-d' input switch. use-lock-file: Add/zap a lock file for this incoming port number default: no accept-auto-logins: Allow sffport-style -A logons without the need to prompt. default: no search-w4-text: In the menu, when using w4 wires, search is Header AND text. default: Slug/Header only. ignore-box-filters: ignore-wire-filters: Do not prompt for and ignore the time filters for either BOXES or WIRES This parameter file may also be used to change the prompts and messages for the user. A complete list of such messages are described later. Where queue verification is required, a file containing all valid queues is created in tables/mail. This has no comments and has each queue-group on a separate line. The list of queue-groups is valid for all incoming files on that port. If the q-g specified is NOT in the list the incoming file is rejected. The queues file is specified as an input parameter in the SYSTEM file. For Atex Gateway there is a character translation table, tables/mail/ATEX_CHRSET, used for outbound text. This can be altered by the profile file. The syntax for this is : ; comment (atex chr) (outbound chr or string) (newline) where the Atexchr is either a printable or an octal no eg \003 and the outbound chr/string caan be a mixture of printable chrs, octal numbers or unix escape chrs. Note that a comment (;) needs to be specified as an octal number. ONLY those chrs that need to be changed need be in the file - all others are passed thru. If the standard messages need to be changed, they can be in the standard mailbox setup file (tables/mail/BOX by default) in addition to all the other setups. The keyword and current settings of these are : banner: "\021\021\nWelcome - Mailbox\n" msgwork: "\n \nWORKING\n" msglogon: "\021\021\nPLEASE LOG ON\n" msgpassword: "\021\021\nPASSWORD ?\n" msglogoff: "\nLOGOFF" msglogerr: "\nLOGON ERROR\n" msglogok: "\nLOGON COMPLETE\n" msgagain: "\nNO SUCH COMMAND\n msgfilebegin: "\nBEGIN FILE TRANSFER\n" msgfileends: "\nFILE RECEIVED. THANK YOU\n" msgendtranfer: "\nEND FILE TRANSFER\n" msgsendabort: "\n--ABORTED--\n" msgnoaccess: "\nSORRY, ACCESS DENIED\n" msgnosuchf: "\nSORRY, NO SUCH FILE\n" msgnosuchd: "\nSORRY, NO SUCH DIRECTORY\n" msgnoname: "\nSORRY, NO FILENAME SPECIFIED\n" msginvname: "\nSORRY, INVALID FILENAME\n" msginvdesk: "\nSORRY, INVALID DESK\n" msginvsubdesk: "\nSORRY, INVALID SUBDESK\n" msginvpool: "\nSORRY, INVALID POOL\n" msginvbasket: "\nSORRY, INVALID BASKET\n" msgnohelp: "\nSORRY, NO HELP FILE AVAILABLE\n" msgtoosmall: "\nSORRY, FILE TOO SMALL\n" msgnosvr: "\nSORRY, SERVER OR DATABASE DOWN\n" msgtimeout: "\nTIMEOUT - PLS RECONNECT\n" msgtnxs: "\nThank you : " msgtnxwrd: " words/garbles stored in file " msgtnxfil: " files/words/garbles stored, last file " msgmsgwait: "You have messages waiting !\n" msgbegindir: "\n" msgenddir: "\nEnd of Directory\n" msgendmsg: "End of Messages\n" msgnofiles: "\nThere is no files in your mailbox\n" msgnomsg: "\nThere are no messages waiting for you\n" msgmore: " Stop:" msgfilemore: " Stop:" msgnotvalidlogon: "\nNot a Valid Logon :" The menu interface can be set as default for all by specifying 'menu:' keyword in the BOX parameter file or set for this logon (If set as default, specify 'cmdline:' for individuals who still want the command line interface) The default menu is "CSRMEBWJPDHZL?X" Call a file 'C' Send a file 'S' Read Message 'R' Send Message 'M' Send E-Mail 'E' Scroll MailBox 'B' Continue reading Dir 'D' Wire Directory 'W' J11 Queue 'J' Options 'Z' QI 'Q' Save in Box 'S' Zap from Box 'Z' Help '?' Exit to CmdLine 'L' Logoff 'X' Menu Strings can be modified by : ParameterName DefaultContents menutop: \n\n\n--------------------------------------------\n menubanner: \tMailbox \\$d-\\$m-\\$y \\$h:\\$n\n\n menuerror: \n** No Such Command **\n menucall: \tC\tCall a file\n menusend: \tS\tSend a file\n menurms: \tR\tRead Messages\n menumsg: \tM\tSend a Message\n menuemail: \tE\tSend an E-Mail\n menudirbox: \tB\tScroll MailBox\n menuwires: \tW\tScroll Wire queues\n menusearch: \tI\tSearch Wires\n menuj11: \tJ\tScroll Atex queue\n menucontdir: \tD\tContinue last scroll\n menufundir: \tP\tScroll Special queues\n menuhelp: \t?\tHelp\n menuoptions: \tZ\tOther options\n menucmdline: \tL\tExit to CommandLine\n menu2ndcmdline: \t\tType 'ME' to return to the menu\n\t\t(Type '??' for Help)\n menulogoff: \tX\tLogoff\n menuchoose: \tPlease Choose : menufile: \tFileName\t: menupool: \tDestination pool (holding/bureau/source/user basket) : menubasket: \tUser Basket\t: menudesk: \tDesk\t: menusubdesk: \tSubdesk\t: menueaddr: \tE-mail Address : menusubject: \tE-mail Subject : menuproto: \tProtocol : X,Y,Zmodem,Kermit,Ascii : menuecho: \tEcho text y/n : menulistq: \tList Directories : y/n : menuque: \tWhich Directory (type number only) : menuatxque: \tWhich Atex Queue : menuqlines: \tNo Of Directory Lines : menuqtime: \tTime Before/After <0:0/>23:30 : menuqsrch: \tSearch String : menutowhom: \tSend Msg To (add /list if msglist) : menudelrms: \tDelete Msg File after Read Y/N : menuqi: \tQ\tQI a j11 file\n menusavbox: \tS\tSave a file in your mailbox\n menuzapbox: \tZ\tDelete a file in your mailbox\n The actual letters used for Call, Exit,Help etc can be modified with the 'menu-codes:' parameter which is the list of actual command codes in STRICT order. The default is : menu-codes:CSRMEBWJPDZLH?XQSZ which is to say the first position is the letter for Call, the 2nd Send etc eg position 1 Call a File default 'C' position 2 Send a file 'S' position 3 Read Message 'R' position 4 Send Message 'M' position 5 Send Email 'E' position 6 Read Box Directory 'B' position 7 Read Wire List 'W' position 8 Read J11 queue 'J' (old Atex systems only) position 9 Read DataBase Directory 'P' position 0 Continue Directory 'D' position 11 Options 'Z' position 12 Return to CmdLine 'L' position 13 Help 'H' position 14 Help2 '?' (identical to 'H') position 15 Logoff 'X' and for the Options : position 16 QI 'Q' position 17 SaveBox 'S' position 18 ZapBox 'Z' To disable any command, use a single comma or dot. eg to disable any Messages and J11 and all Options menu-codes:CS..EBW.PD.LH?X... There should be NO spaces or tabs before or embedded in the parameter. Input parameters are : Mandatory : either -s : terminal server/spider or tty port default: none -p : port if terminal server default: none or -P : Port on UnixBox to use for outbound default: none This is only used where Terminal Servers canNOT run reverse telnet correctly and need to set a Permanent Virtual Connection across the ethernet to a fixed port number on the UnixBox Where the Port is NOT on the default ethernet '-s' can be used to specify the hostname on the correct ethernet. -n : name of service default: none Optional : -1 Run for one logon/connection and then exit default: loop for the next connection This can be used in a Script to run once and stop. Do not use inside the normal SYSTEM file. -A : archive log name default: name of logon This is advisable - otherwise you will get an archive log in log/data for each logon that sends. This fills in the FipHdr field SL. -l : logon file def: tables/mail/LOGON -L : profile file def: tables/mail/PROFILE -t : mailbox setup file default: tables/mail/BOX -d : queue or desk check file default: none If specified this file should be Uppercase and in tables/mail. Only the filename should be specified. -D : Default type of queue for all directories default: b for box on mailbox This is a single chr : b - normal unix mailbox in spool/mail w - Wires queue in spool/savwires e - SES database (must have a SES server specified) a - Atex Gateway (must have a Atex Gateway specified) -E : Treat socket errors as disconnects default: error = network problems Use this switch if you are using Modem COntrol on the terminal server. -h : hide mailbox default: force logon This is where a code needs to entered for the mailbox logon prompt to be allowed. In this case sending incoming files is the default. -N : deduct 1 from the no of lines default: no ie ds/3 gives 2 lines -o : Output folder for incoming files default: spool/2go -R : service name for tables/route default: logon name This fills in the FipHdr field SR and is only used if the output queue (-o) is set to '2brouted' for iproute to check each file. -w : Wires Path default: spool/savwires -T : Timeout period in secs default: 120 secs If no chrs are received in this period the user is logged off. -C : Timeout on both characters in and since last command default: chrs only. -X : Turn Telnet Transparency off default: on For terminal servers, is the port set to transparency On or Off ? -u : Zmodem escape control chrs mode default: no -U : Raw or Telnet NO-escape mode default: telnet transparency ON For terminal servers, is the port set to transparency ? -y : terminal server uses a different banner. default: Spiderbanner -Y : terminal server has NO banner at all. default: Spiderbanner -z : add seqno to filename (6 chrs) as (3 digit) extension (6.3) ie for DEC/Atex style filenames default: no -Z : add seqno to filename: 5 chrs and 3 digits default: no ie for PC/Writer style filenames -v : display version number and exit. There are two enviornment variables : FIP_BOX_J11HDRFLDS a series of 2 letter J11 hdr field codes you wish to see in a directory line of Gateway queues. default: "NOFRRE" The default shows fields NO tab FR tab RE. This is overridden by the "dirhdrflds" parameter FIP_BOX_MINSIZE The minimum size of a file or message inbound. default: 20 chrs. The minimum size must be between 1 and 100. NOTE that to use Kermit and/or Zmodem the line/terminal server port etc MUST be setup for 8 bits, No Parity and preferably Hardware flow control NOT XON/XOFF. NOTE that as the Zmodem end of session flag is 'OO', it is advised that you do NOT use 'oo' as one of the commands !! NOTE that to send E-mail you need to point Fip Destination 'internet_mail_xbox' to an 'ipsmtp' output queue - usually spool/2smtp. NOTE that the syntax for a menu wire list before/after a time is between 6pm and 7.30 : >18<19:30 after 22:00 or 10pm : >22:00 before 6:30 pm yesterday : <-1 18.30 where -1 is used to specify yesterday, -5 for 5 days ago etc. only files in a single day's list can be searched. The same for using the Command interface is : ds news_home/t<-1 21:00 : all news_home before 21:00 yesterday ds ap/t<-2 18:00/t>-2 17:50 : all ap between 17:50 and 18:00 2 days ago --------------------------------------------------------------------------------- Version Control ;051x 14dec02 added 'protocol' in both BOX and LOGON added -1 for single shot added 'logon-script' for external logging added 'ignore-box-filters' to ignore time added kwd filters for mailboxes for BOX+LOGON ;a-l 27jan03 added STDIO with -S and use-lock-file: and echo email and allow-subdesks:yes, allow-pools:yes, and echo-story-data: and extrahdr in the LOGON file ;m 28mar03 bugette in desks ;n-q 17jun03 menu: for wires BEFORE midnight, use the 20030616_List not the toplist ;r-u 05sep03 cleanups and bugette fixes ;v 05dec03 added 'ignore-wire-filters' to ignore time and msgfilemore ;w 26jan04 read from wire is always ascii/no proto unless requested ;050o 23feb99 added E-mail ;a 20mar99 BINARY for WINNT ;b 17aug99 WINNT wirpath had dbl // ;c 18aug99 added return-address ;d 28aug99 added spaces to logon name ;e/f 26feb01 cleanup ;g/h 22mar02 cleanup ;i/j 14jun02 added type-of-wires:w4 ;k-o 22jul02 added menu-codes: and better handling of w4 lists (copyright) 2024 and previous years FingerPost Ltd.