Regarding EZASMI, I have used it quite extensively in two products that I am 
involved in - the ECB list method seems to be the only way to correctly manage 
the interface - there are just too many ways that EZASMI can get into a "never 
post" style situation. It is a bit of a pain to have to keep building and 
destroying timers around the call but worth it in the end.

GWA03PSA is the loaded address of EZASOH03 which is the EZASMI API module  


Rob Scott
Rocket Software, Inc
275 Grove Street
Newton, MA 02466
617-614-2305
[email protected]


-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of 
Joe Reichman
Sent: 19 January 2009 17:36
To: [email protected]
Subject: Re: Assembler TCP/IP

Thankx

 was that your IDEA setting ECBLIST (that way if TCP/IP doesn't post you down 
get deadlocked)

re: GLOBAL storage there are 2 storage areas defined by it


GWAUSCNT
GWA03PSA

           They dont seem to be refrenced by any of the EZASMI api's

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]]on Behalf Of 
Rob Scott
Sent: Monday, January 19, 2009 12:07 PM
To: [email protected]
Subject: Re: Assembler TCP/IP


A) The EZASMI global storage block contains important state information - 
including things like the load epaddr of the API load module. You should 
perform a USING on EZASMGWA for it.

B) If the INITAPI has been done correctly for the subtask, the logic for ASYNC 
ECB API call should be something like :

(1)  Clear TCPIP ECB
(2)  Setup timer
(3)  Build ECBLIST containing TCPIP EBC and timer ECB
(4)  Call EZASMI API
(5)  Wait on ECBLIST
(6a) If TCPIP ECB popped - cancel timer and then test TCPIP RC and ERRNO
(6b) If timer ECB popped - branch to "timeout" code


Rob Scott
Rocket Software, Inc
275 Grove Street
Newton, MA 02466
617-614-2305
[email protected]


-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of 
Joe Reichman
Sent: 19 January 2009 16:43
To: [email protected]
Subject: Re: Assembler TCP/IP

Thankx

   I am using async processing  ECB=

 a couple of more questions

 A) Why would have to pass the address of the global stroage to the SubTasks ??

 B) I debugging both Mother and Daughter task under TSO TEST ....
    if retocde = 0 for the API's that 0 is a good return code for example 
"takesocket" or "GetCleintId" should the ECB passed on WZASMI macro post in my 
case it never does maybe because I have defined a INITAPI in the SubTask

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]]on Behalf Of 
Rob Scott
Sent: Monday, January 19, 2009 8:55 AM
To: [email protected]
Subject: Re: Assembler TCP/IP


(A) Yes - and if the subtask is going to TakeSocket pay attention to the 
SUBTASK= keyword

(B) The way I have implemented this in the past is to have the mother task pass 
a parameter list to the daughter subtasks that includes the address of the 
EZASMI GLOBAL area - and then each subtask will obtain its own task storage 
(TIE).

Another couple of points :

(1) If you are writing anything non-trivial, then I would advise using the 
ASYNC ECB flavour of EZASMI.
(2) Before calling the send/recv interfaces, setup a timer and add its ECB to 
an ECBLIST along with the ECB for the EZASMI call (and also your STC "stop" ECB 
maybe) - this will help situations where communications are lost midway thru a 
conversation and your EZASMI call hangs.


Rob Scott
Rocket Software, Inc
275 Grove Street
Newton, MA 02466
617-614-2305
[email protected]


-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of 
Joe Reichman
Sent: 19 January 2009 13:39
To: [email protected]
Subject: Assembler TCP/IP

Does Anybody have any pointers re: concurrent TCP/IP Assembler programs

specfically

A)in the Subtak (attached program) do you have to issue a

INITAPI


B) It it necessary to use EZASM STORAGE=GLOBAL or STORAGE=TASK

    when writting a  concurrent (meaning using subtask to use the send and
receive) program

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions, send email to 
[email protected] 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 
[email protected] 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 
[email protected] 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 
[email protected] 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 
[email protected] 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 [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to