Thankx again Rob

Knew if I posted you would come up with something the ECB is only 4 bytes

I know when I was coding this TCP/IP
App you told me to have a stimer ECB
So that EZASMI calls wouldn't hang I could then check the return code

Sent from my iPhone

On Mar 19, 2010, at 7:02 AM, Rob Scott <rsc...@rocketsoftware.com> wrote:

Joe,

Can you tell us more about the failure :

(1) Did it abend? If so - with what code and where
(2) Did it just not POST the ECB?

A few things to check :

(1) Where is "MY_PARM"? - is this in working storage?
(2) How was "MY_PARM" defined?
(3) What was specified on the INITAPI ?


One last "gotcha" with EZASMI is that the "ECB=" keyword must point to a 104-byte field and NOT a 4-byte field.

I know that sounds crazy - but EZASMI uses the last 100 bytes as a "workarea".

(Why this "workarea" was not a separate keyword I just don't know....)


Rob Scott
Developer
Rocket Software
275 Grove Street * Newton, MA 02466-2272 * USA
Tel: +1.617.614.2305
Email: rsc...@rs.com
Web: www.rocketsoftware.com

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On Behalf Of Joe Reichman
Sent: 19 March 2010 10:40
To: IBM-MAIN@bama.ua.edu
Subject: Re-entrancy problem

Hi,



The following code works (ECB is posted by TCP/IP) except when I catalouge the program RENT=(REUS)



Would anybody have any ideas



*-- -------------------------------------------------------------------*

*           GET THE SOCKET TO READ                                  *

*-- -------------------------------------------------------------------*

        MVC    COMM,=CL8'TAKESOCK'

        XC    MY_PARM(MY_PARM_LEN),MY_PARM    CLEAR PARAMTER LIST

        LA    R10,MY_ECB           GET MAIN TASK ECB

        ST    R10,ECB_LIST        STORE IT

        LA    R10,MVS_ECB          GET MAIN TASK ECB

        ST    R10,ECB_LIST+4      STORE IT

        OI    ECB_LIST+4,X'80'      MARK END

        EZASMI TYPE=TAKESOCKET,  Issue INITAPI Macro X

              SOCRECV=SOCKET,
X

              CLIENT=CLIENT,     SPECIFY SUBTASK IDENTIFIER
X

              ERRNO=ERRNO,       (Specify ERRNO field)
X

              RETCODE=RETCODE,   (Specify RETCODE field)
X

              ECB=MY_ECB,
X

              ERROR=ERROR,       ABEND IF ERROR ON MACRO
X

              TASK=MYTIE,
X

              MF=(E,MY_PARM)

*

*        WAIT  ECB=MY_ECB

*        B     CK_RET

        WAIT  1,ECBLIST=ECB_LIST

        L     R10,ECB_LIST+4     GET MVS ECB

        CLC   1(3,R10),=3X'00'   POSTED

        BE    RETURN             YES; GO BACK




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

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

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

Reply via email to