I have my "UNIX file" program, that I asked about a week or so ago, running.
Thanks for your help.

SYSCALLS did not behave quite as I expected. Perhaps this is documented but
I did not see it.

Does a Rexx program have to be running from a UNIX shell or the like to be
able to issue ADDRESS SYSCALLS? My Rexx is running under IRXJCL (or
IKJEFT01) in "legacy" batch and I consistently got a -3 for ADDRESS
SYSCALLS. Is that to be expected? Does it need instead to run under SH or
similar? Or am I missing something else?

In the past I have just used ADDRESS SYSCALL "function parms ..." and that
works under IKJEFT01 batch. Is there anything wrong with doing it that way?
I did find you cannot say fd = ADDRESS SYSCALL "open ..."; you have to get
the fd from RC. I also had to code my own O_CREAT, etc.

By the way, re the unrelated persistent storage discussion, I did not need
persistent storage but since I already had code that managed the "user"
pointer in the Rexx environment block I did use that. Persisting the storage
let me build the ECBLIST list once rather than every time; a few small
things like that. If I were working from scratch I would probably not have
bothered with persistent storage. The negative of the Rexx user pointer is
that all called routines share one word and have to coordinate their usage.
I have a management routine, it might be problematic with a disparate group
of developers. If I needed persistent storage I would use name/token to keep
the pointer around.

Thanks again.

Charles 

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to