From:	CRDGW2::CRDGW2::MRGATE::"SMTP::CRVAX.SRI.COM::RELAY-INFO-VAX"  7-JUL-1990 11:17:55.51
To:	MRGATE::"ARISIA::EVERHART"
CC:	
Subj:	MAILSHR_PATCH_FOR_AT_02  2/2

Received:  by crdgw1.ge.com (5.57/GE 1.70)
	 id AA26182; Sat, 7 Jul 90 10:07:22 EDT
Received: From SLCS.SLB.COM by CRVAX.SRI.COM with TCP; Fri,  6 JUL 90 14:02:06 PDT
Received: from sjosu1.sinet.slb.com
	by SLCS.SLB.COM (4.1/SLCS Mailhost 3.3)
	id AA04989; Fri, 6 Jul 90 16:00:47 CDT
Received: from sdrvx2.psi by sjosu1.sinet.slb.com (4.0/SINet-4.0.1)
	id AA11608; Fri, 6 Jul 90 14:04:13 PDT
Date: Fri, 6 Jul 90 14:04:13 PDT
From: barbe@sdrvx2.sinet.slb.com (Claude Barbe - SDR - 1 203 431 5524)
Message-Id: <9007062104.AA11608@sjosu1.sinet.slb.com>
To: info-vax@crvax.sri.com
X-Vms-To: PSI%SJOSU1::CRVAX.SRI.COM::INFO-VAX
Subject: MAILSHR_PATCH_FOR_AT_02  2/2

-+-+-+-+-+-+-+-+ START OF PART 2 -+-+-+-+-+-+-+-+
X       '`09subl`09#108,sp`09`09' ! ; end of outbuf
X       '`09movl`09sp,-(r2)`09' ! ; make outbuf
X       '`09movzwl`09#100,-(r2)`09' ! ; make outbuf
X       '`09pushl`09r5`09`09`09' ! ; #5 Second sub string A
X       '`09pushl`09r6`09`09`09' ! ; #4 first  sub string B
X       '`09pushl`09r2`09`09`09' ! ; #3 outbuf
X       '`09pushl`09r3`09`09`09' ! ; #2 outlen
X       '`09pushl`09r4`09`09`09' ! ; #1 ctrstr
X       '`09calls`09#5,@#7FFEDF50`09`09' ! ; calls   #05,g`5Esys$fao
X       '`09blbs`09r0,N103$'
X       '`09jmp`09cdberr'
X       'N103$:`09movw`09(r3),(r2)`09`09' ! ; complete ptr to final text
X       '`09jmp`09cdbcom'
X       !; check if all alpha numerical + .-_$% returns non zero`20
X       'cdbck1:`09cmpb`09#`5Ex41,(r1)'
X       '`09bgtr`09cdbck11'
X       '`09cmpb`09#`5Ex5A,(r1)'
X       '`09bgeq`09cdbck19'
X       'cdbck11: cmpb`09#`5Ex61,(r1)'
X       '`09bgtr`09cdbck12'
X       '`09cmpb`09#`5Ex7A,(r1)'
X       '`09bgeq`09cdbck19'
X       'cdbck12: cmpb`09#`5Ex30,(r1)'
X       '`09bgtr`09cdbck13'
X       '`09cmpb`09#`5Ex39,(r1)'
X       '`09bgeq`09cdbck19'
X       'cdbck13: cmpb`09#`5Ex24,(r1)'
X       '`09beql`09cdbck19'
X       '`09cmpb`09#`5Ex25,(r1)'
X       '`09beql`09cdbck19'
X       '`09cmpb`09#`5Ex2D,(r1)'
X       '`09beql`09cdbck19'
X       '`09cmpb`09#`5Ex2E,(r1)'
X       '`09beql`09cdbck19'
X       '`09cmpb`09#`5Ex5F,(r1)'
X       '`09rsb'
X       'cdbck19: incl`09r1'
X       '`09sobgtr`09r0,cdbck1'
X       '`09rsb'
X       !; check if we have at least one dot (then r0 > 0)
X       'cdbck2:`09cmpb`09#`5Ex2E,(r1)'
X       '`09bneq`09cdbck29'
X       '`09rsb'
X       'cdbck29: incl`09r1'
X       '`09sobgtr`09r0,cdbck2'
X       '`09rsb'
X       !;
X       'cdberr: movab`09@B`5E4(ap),r2`09' !; If SYS$FAO fails, use original
V addr
X       'cdbcom:`09MOVQ    #`5EX00000001,-(SP)'
X       '`09movl`09B`5E8(ap),-(sp)'
X       '`09pushl`09r2'
X       '`09CALLS   #04,L`5EADD_ADDR'
X       '`09ret`09`09`09' !; this is the only RET for ALTER_TO
XEXI
X! Above was the new code
X! Below is the patch in the existing code that
X! will make use of the ALTER_TO new code
XRE
XMAIL$$ADD_ADDR
X'MOVQ    #`5EX00000001,-(SP)'
X'MOVQ    B`5E04(AP),-(SP)'
X'CALLS   #04,W`5EADD_ADDR'
X'RET'
XEXIT
X'MOVQ    B`5E04(AP),-(SP)'
X'CALLS   #02,ALTER_TO'
X'RET'
XEXIT
X! And now update if we reached this point without a single error
XU
X!---------------------- end of patch ----------------------
$ CALL UNPACK MAILSHR_PATCH_FOR_AT_02.COM;11 1534595522
$ v=f$verify(v)
$ EXIT

