' "SOAK and UNSOAK -- enable and disable scripting of ftp transactions" SOAK #DECL ("VALUE" ) ALARM-OFF ALARM T % (300) "USER " (230 200 330) "PASS " ( 230 200 331) "ACCT " (230 200) "TYPE " (200) "BYTE " "MODE " CHANNEL-CLOSED RESPONSE-LINE OUTCHAN "FTP: " % "0123456789" % WAIT-ACT (ACTIVATION) "CHAR" SL "NET" "PRINT" "SOCK " % #FALSE ("Datachannel timed-out") % "READB" #FALSE ( "BAD ICP STATE") #FALSE ("Read of socket number failed") "READ" #FALSE ( "No Network Channels Available") ICP-WAIT % #FALSE ( "ICP timed out")]>> .GLUE > )] 12>> > "CONNECT -- connect to ftp server at a specified host arg1 -- host (fix) arg2 -- access instructions, or false. if true, must be list of items, as follows: 1/ string, arg for user command 2/ string, to be used as arg to password command, if empty or false, none will be issued 3/ string, to be used as arg to account command arg3 -- type of transfer (string) false--none arg4 -- byte size (fix) false--none arg5 -- mode of transfer (string) false--none -- returns list of input and output channels, or #false(reason.string)" > FIX )] 24>> "GETLINE -- get a response from ftp connection, including continuation lines" > > "NETCHR -- kludge to handle new telnet protocol without lossage waiting for response... returns a character, like readchr, but if sees rubout or 377, reads next char and throws it away." CHANNEL)] 417>> "WAITRESP -- given a channel, read until one of a supplied set of response codes is received --returns code received (fix), or #false(reason) -- arg1/ channel -- arg2/ list of fixes, codes to watch for. in all cases, responses beginning with 0 as a code are ignored" CHANNEL LIST)] 447>> "WATCH -- error/interrupt handler for net channels -- returns from an activation (sl) if we are in it (sleeping) " CHANNEL)] 625>> "ACC -- function to issue a ftp command to transfer data -- opens another socket in direction indicated, and issues a 'sock xxx' command over ftp telnet channels. waits for channel connection to be established, and returns the channel. if trouble, returns #false(reason) -- arg1/ telnet channel pair arg2/ command line to issue after 'sock' command arg3/ direction -- usually read or print arg4/ byte size for channel opening" STRING STRING FIX)] 666>> "ICP -- icp function, returns false or list of input and output channels -- arg1/ host number arg2/ socket to issue icp to val/ list of input and output channel" > > FIX FIX "OPTIONAL" FIX)] 833>> "WAIT-FOR-IT -- wait for interrupt that indicates channel ready" CHANNEL FIX)] 1059>> \ "ICP-NETINT -- interrupt handler for icp channels" UVECTOR CHANNEL)] 1143>>