Strong!

--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3

________________________________________
From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
David Spiegel [dspiegel...@hotmail.com]
Sent: Tuesday, April 14, 2020 2:02 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Apparent bug in CBT 617 SMFREPT

What type of coffee?

On 2020-04-14 13:56, Seymour J Metz wrote:
> Sorry, not enough coffee.
>
>
> --
> Shmuel (Seymour J.) Metz
> http://mason.gmu.edu/~smetz3
>
> ________________________________________
> From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
> Seymour J Metz [sme...@gmu.edu]
> Sent: Tuesday, April 14, 2020 12:31 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: Apparent bug in CBT 617 SMFREPT
>
>>> FOO = ARG(1)
>>> BAR = ARG(2)
>>> SOJACK = ARG(3)
>> No.  That works only for Rexx:
>      CALL BINTDECR FOO, BAR, SOJACK
>
> Ass opposed to what?
>
>> Use PARSE ARG FOO BAR SOJACK, which preserves case.
> The parse arg may be better style, but it is fully equivalent to the three 
> assignment statements. Don't confuse arg foo with foo=arg(1).
>
>
> --
> Shmuel (Seymour J.) Metz
> http://mason.gmu.edu/~smetz3
>
>
> ________________________________________
> From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> on behalf of 
> Paul Gilmartin <0000000433f07816-dmarc-requ...@listserv.ua.edu>
> Sent: Tuesday, April 14, 2020 12:08 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: Apparent bug in CBT 617 SMFREPT
>
> On Tue, 14 Apr 2020 08:50:27 -0700, Charles Mills wrote:
>> I got an off-list note from Sam Golob asking me to submit an actual fix, so
>> I downloaded CBT 617 to have a clean copy to start from and it is *not* the
>> source of the program I am using (and complaining about here).
>>
>> It *does* however have the same bug:
>>
>> BINTDECR:
>> NUMERIC DIGITS 20
>> ARG LITERAL
>> INTZ = "LITERAL = C2X(''LITERAL'')"
>> INTERPRET INTZ
>> ...
> Ouch!  INTERPRET is unnecessary, and perhaps dangerous
> because of the possibility of code injection via the value of ARG.
> "A little learning is a dangerous thing."
>
>> Not sure exactly where to go from here. This misuse of ARG for binary fields
>> seems to be pervasive! I don't have the time to be "Mr. Fix all the CBT Rexx
>> misuses of ARG."
>>
> They probably expect you to prepare your input with CAPS ON.
>
>> If you are using any Rexx code that processes binary data (such as SMF
>> records) you might want to do a quick FIND on ARG and see if it has the same
>> problem. Easy to fix:
>>
>> ARG FOO becomes FOO = ARG(1)
>>
> OK.
>
>> ARG FOO BAR SOJACK becomes
>>
>> FOO = ARG(1)
>> BAR = ARG(2)
>> SOJACK = ARG(3)
>> Etc.
>>
> No.  That works only for Rexx:
>      CALL BINTDECR FOO, BAR, SOJACK
>
> Use PARSE ARG FOO BAR SOJACK, which preserves case.
>
> -- gil
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
> .

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to