Re: Multi-line "Srchfor" Utility?



-----Original Message-----
From: IBM Mainframe Discussion List On Behalf Of Binyamin Dissen

On Fri, 12 Jun 2009 07:58:50 -0500 Mark Zelden
<mark.zelden@xxxxxxxxxxxx>
wrote:

:>On Fri, 12 Jun 2009 08:05:48 -0400, Mike Myers
<mike@xxxxxxxxxxxxxxxxxxx> wrote:
:>
:>>If you were to take Dave's approach, I wrote a REXX EXEC that will
:>>execute the same edit macro against all members of a PDS or PDSE,
given
:>>the name of the PDS and the name of the macro as input.

:>See EDMACALL on my web site (URL below) or CBT file 434.

Been a while for me, but wouldn't the QUERY security generate some
literal
data that could be searched for in the load library? Should be easier
than
scanning source.

The need is not just to see whether the program issues a specific
command, but also to see specifically what values or references were
specified on the command.

While it's true that the CICS preprocessor generates a unique literal
for each EXEC CICS command, that literal is a bit string (arg 0 in the
DFHEI1 call) which would then require translation back to the original
source, e.g.:

x'0c02b000270000cc00f0f0f0f4f5404040'

From the first two bytes ("function") I can tell you that the command is
EXEC CICS GETMAIN, but beyond that I'd need to refer to the CICS Data
Areas manual to decode the rest of it, and there's no way I could "fill
in all the blanks". In the first place, how would I find the specific
code that refers to that particular bit string? Here's the machine code
generated for this particular bit string (offsets omitted
intentionally):

D210 D140 3106
4150 D140
5050 D128
4150 2004
5050 D12C
D201 D158 312B
4150 D158
5050 D130
4150 2014
5050 D134
4150 2008
5050 D138
9680 D138
4110 D128
58F0 3000
4100 A140
58C0 9080
05EF

Even if I could reliably correlate this code sequence with the specific
bit string, I still can't get the labels of the data areas coded
originally.

Just FYI, here's the pre-processed command that produced the bit string
I cited above:

*EXEC CICS GETMAIN
* SET (GETMAIN-PTR)
* FLENGTH (GETMAIN-SIZE)
* INITIMG (NULL-DATA)
* NOHANDLE
*END-EXEC.
Call 'DFHEI1' using by content x'0c02b000270000cc00f0f0f0f4f5
- '404040' by reference GETMAIN-PTR by content x'0000' by
reference NULL-DATA by reference GETMAIN-SIZE end-call.

-jc-

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to listserv@xxxxxxxxxxx with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html
.



Relevant Pages

  • Re: Multi-line "Srchfor" Utility?
    ... :>> Been a while for me, but wouldn't the QUERY security generate some ... :>specified on the command. ... that literal is a bit string (arg 0 in the ... :>EXEC CICS GETMAIN, but beyond that I'd need to refer to the CICS Data ...
    (bit.listserv.ibm-main)
  • Re: SQL Parameterized Command versus Custom String
    ... I would use the EXEC String ... command object is trying to execute so you can test it against SQL ... SQL Profiler? ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: Rubys Kernel::exec (and system and %x)
    ... No shell interpretation would ever be done on the argument. ... Give it one string, and that's the program it runs. ... so exec() without forkis a not-so-useful combination. ... and would pass it through the platform's command ...
    (comp.lang.ruby)
  • Re: invoke tcl GUI and environmental variable
    ... > I don't understand still is that I can do this in a command line and it ... "exec", "xtclsh", and the result of the source command (the null ... xtclsh and a null string as arguments. ...
    (comp.lang.tcl)
  • Re: perl scp problem
    ... The 'exec' function DOESN'T RETURN. ... string to your favorite shell. ... and put it in this command ... This is the script: ...
    (perl.beginners)