mirror of
https://github.com/GeorgeMcMullen/rxIRC.git
synced 2026-01-27 12:43:05 +00:00
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
62aca2100b |
68
rxirc.exec
68
rxirc.exec
@@ -1,3 +1,22 @@
|
|||||||
|
/*
|
||||||
|
Local changes for VM/ESA 1.2.1 (REXX370 Vers. 4.00) or greater
|
||||||
|
-> The variable "b" in the routine "NICE" (around line 802-815)
|
||||||
|
was changed to "bb" because of the following change:
|
||||||
|
|
||||||
|
(c) Copyright IBM Corporation 1990, 1993
|
||||||
|
|
||||||
|
"462E Error 15 running fn ft, line nn: Invalid hexadecimal or binary
|
||||||
|
string
|
||||||
|
|
||||||
|
Explanation: Binary strings were new in VM/ESA Release 2, and the
|
||||||
|
language processor may now be considering the string in your statement
|
||||||
|
to be binary when that was not your intention.
|
||||||
|
|
||||||
|
... Or you may have put the 1-character symbol X, x, B, or b (the name
|
||||||
|
of the variable X or B, respectively) after a literal string, when the
|
||||||
|
string is not intended as a hexadecimal or binary specification."
|
||||||
|
*/
|
||||||
|
|
||||||
/* rxIRC
|
/* rxIRC
|
||||||
* Internet Relay Chat client program for VM/CMS systems
|
* Internet Relay Chat client program for VM/CMS systems
|
||||||
* written by Carl 'LynX' v. Loesch (loesch@informatik.uni-oldenburg.de)
|
* written by Carl 'LynX' v. Loesch (loesch@informatik.uni-oldenburg.de)
|
||||||
@@ -7,6 +26,10 @@
|
|||||||
* Scott Maxell, Juan Courcoul, Rob Blais, Mike Letourneau, Grant Pair
|
* Scott Maxell, Juan Courcoul, Rob Blais, Mike Letourneau, Grant Pair
|
||||||
* (in historical order mostly). Thank y'all very much!
|
* (in historical order mostly). Thank y'all very much!
|
||||||
*
|
*
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
* requires RXSOCKET MODULE version 2 by Arty Ecock (eckcu@cunyvm.bitnet)
|
* requires RXSOCKET MODULE version 2 by Arty Ecock (eckcu@cunyvm.bitnet)
|
||||||
*
|
*
|
||||||
* Copyright (C)1991,2,3 by Lynx & CvO University Oldenburg, Germany
|
* Copyright (C)1991,2,3 by Lynx & CvO University Oldenburg, Germany
|
||||||
@@ -16,7 +39,7 @@
|
|||||||
* By the way, this is _not_ the source code of rxIRC. There exists a
|
* By the way, this is _not_ the source code of rxIRC. There exists a
|
||||||
* special file IRC PREXX which when run through a preprocessor produces
|
* special file IRC PREXX which when run through a preprocessor produces
|
||||||
* the actual RXIRC EXEC. That file is commented. This one is not.
|
* the actual RXIRC EXEC. That file is commented. This one is not.
|
||||||
*/ vers='2.0'; trace 'O'
|
*/ vers='2.0.1'; trace 'O'
|
||||||
address "COMMAND"; signal on HALT; "VMFCLEAR"
|
address "COMMAND"; signal on HALT; "VMFCLEAR"
|
||||||
cmds='AWAY AWAIT ADMIN CHANNEL CONNECT DEOP DIE HASH INFO ISON JOIN KICK',
|
cmds='AWAY AWAIT ADMIN CHANNEL CONNECT DEOP DIE HASH INFO ISON JOIN KICK',
|
||||||
'KILL LIST LINKS LUSERS MODE MAIL MOTD NAMES NICK NOTICE NOTE OPER PASS',
|
'KILL LIST LINKS LUSERS MODE MAIL MOTD NAMES NICK NOTICE NOTE OPER PASS',
|
||||||
@@ -26,6 +49,8 @@
|
|||||||
invitation=; away=; ll.=; curll=1; logevent=0; target=time('R')
|
invitation=; away=; ll.=; curll=1; logevent=0; target=time('R')
|
||||||
v.=; al.=; varnames=; aliasnames=; cmdchar=; userinfo=; sourcing=0
|
v.=; al.=; varnames=; aliasnames=; cmdchar=; userinfo=; sourcing=0
|
||||||
have_rxwt=0; who_empty=0; catmode=0; catlist=; abortsource=0; skiplines=0
|
have_rxwt=0; who_empty=0; catmode=0; catlist=; abortsource=0; skiplines=0
|
||||||
|
|
||||||
|
|
||||||
"EXECIO * CP (STEM PF. STRING QUERY PF"
|
"EXECIO * CP (STEM PF. STRING QUERY PF"
|
||||||
do i=1 to pf.0
|
do i=1 to pf.0
|
||||||
a=word(pf.i,2)
|
a=word(pf.i,2)
|
||||||
@@ -37,9 +62,9 @@
|
|||||||
"CP TERM CHARDEL OFF"
|
"CP TERM CHARDEL OFF"
|
||||||
"CP TERM LINESIZE 130"
|
"CP TERM LINESIZE 130"
|
||||||
sock=; buffer=; alphalo=xrange('a','z'); alphahi=xrange('A','Z')
|
sock=; buffer=; alphalo=xrange('a','z'); alphahi=xrange('A','Z')
|
||||||
lf='25'x; cr='0d'x; msa='01'x; rev='02'x; beep='2f'x; undl='32'x
|
lf='25'x; cr='0d'x; msa='01'x; rev='02'x; beep='2fx; undl='32'x
|
||||||
bold='1f'x; hi='1de8'x; lo='1d60'x; yo='1d44'x
|
bold='1f'x; hi='1de8'x; lo='1d60'x; yo='1d44'x
|
||||||
nice.=; u@n.=; via.=;
|
nice.=""; u@n.=; via.=;
|
||||||
realname=; servername=;
|
realname=; servername=;
|
||||||
ignore_reply = "Your messages are not being received."
|
ignore_reply = "Your messages are not being received."
|
||||||
"IDENTIFY (LIFO"; pull me . mynode . rscs a .
|
"IDENTIFY (LIFO"; pull me . mynode . rscs a .
|
||||||
@@ -781,18 +806,18 @@ SHUT:
|
|||||||
return
|
return
|
||||||
|
|
||||||
NICE:
|
NICE:
|
||||||
parse arg a'@'b;if b="" then b=mynode
|
parse arg a"@"bb; if bb="" then bb=mynode
|
||||||
if nice.a.b^='*' then do
|
if nice.a.bb^='*' then do
|
||||||
if nice.a.b^='' then return nice.a.b
|
if nice.a.bb^='' then return nice.a.bb
|
||||||
'NAMEF :userid' a ':node' b ':nick (LIFO'
|
'NAMEF :userid' a ':node' bb ':nick (LIFO'
|
||||||
if rc=0 then do;parse pull nice.a.b .
|
if rc=0 then do;parse pull nice.a.bb .
|
||||||
return nice.a.b;end
|
return nice.a.bb;end
|
||||||
if b=mynode then do; 'NAMEF :userid' a ':node :nick (LIFO'
|
if bb=mynode then do; 'NAMEF :userid' a ':node :nick (LIFO'
|
||||||
if rc=0 then do;parse pull nice.a.b .
|
if rc=0 then do;parse pull nice.a.bb .
|
||||||
pull ln .;if ln='' then return nice.a.b;end
|
pull ln .;if ln='' then return nice.a.bb;end
|
||||||
end
|
end
|
||||||
nice.a.b='*';end
|
nice.a.bb='*';end
|
||||||
if a='RSCS' then return b
|
if a='RSCS' then return bb
|
||||||
return a
|
return a
|
||||||
|
|
||||||
U@N:
|
U@N:
|
||||||
@@ -818,7 +843,7 @@ TELL:
|
|||||||
parse arg tea
|
parse arg tea
|
||||||
parse value U@N(tea) with xid xnod tea
|
parse value U@N(tea) with xid xnod tea
|
||||||
if xid=0 then do
|
if xid=0 then do
|
||||||
call OUT xnod tea
|
call OUT xnod tea
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
err=; if translate(left(tea,4))='VIA ' then do
|
err=; if translate(left(tea,4))='VIA ' then do
|
||||||
@@ -868,6 +893,7 @@ TELL:
|
|||||||
|
|
||||||
SOURCE:
|
SOURCE:
|
||||||
arg a, b
|
arg a, b
|
||||||
|
|
||||||
if a='' then do
|
if a='' then do
|
||||||
call S "You must specify a file to /source"
|
call S "You must specify a file to /source"
|
||||||
return -1
|
return -1
|
||||||
@@ -881,6 +907,13 @@ SOURCE:
|
|||||||
'MAKEBUF'; 'EXECIO * DISKR' a '(FIFO FINIS'; skiplines=0;
|
'MAKEBUF'; 'EXECIO * DISKR' a '(FIFO FINIS'; skiplines=0;
|
||||||
do queued(); sourcing=1
|
do queued(); sourcing=1
|
||||||
parse pull l; if abortsource then iterate
|
parse pull l; if abortsource then iterate
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if skiplines=0 then call SHELL strip(l)
|
if skiplines=0 then call SHELL strip(l)
|
||||||
else skiplines=skiplines-1
|
else skiplines=skiplines-1
|
||||||
end
|
end
|
||||||
@@ -913,6 +946,11 @@ INTERP:
|
|||||||
signal on SYNTAX; INTERPRET(statement); signal off SYNTAX
|
signal on SYNTAX; INTERPRET(statement); signal off SYNTAX
|
||||||
return rc
|
return rc
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
EXECUTE:
|
EXECUTE:
|
||||||
parse arg r
|
parse arg r
|
||||||
if r='' then do
|
if r='' then do
|
||||||
|
|||||||
Reference in New Issue
Block a user