We have a lot of HLASM and XL/C modules doing attach/wait/post/detach. The problem seems to be that the POSIX(ON) is not inherited by an attached subtask. Recoding to use threads and semaphores would effectively be rewriting the server - I'll think I'll leave that for the next generation! It's a bit poor that IBM's SSL implementation does not properly support traditional MVS programs; it's a part of TCP/IP, after all. I tried experimenting with BPX1SDD (set_dub_default) to make TCB's processes and threads but I still got the EDC5167I.
Thanks Robin -----Original Message----- From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf Of David Crayford Sent: 17 March 2016 21:18 To: [email protected] Subject: Re: Linking C module with SSL On 17/03/2016 10:05 PM, Robin Atwood wrote: > Now I have hit the problem I thought might be lurking. The module I fixed > before with the POSIX(ON) pragma is the listener. It attaches a number of > worker tasks it givesockets an incoming session to. When the worker does its > takesocket it must then do a gsk_secure_socket_open() to start the SSL > handshake. This failed with a EDC5167I so I added the POSIX(ON) pragma. > Restarting, the STC immediately failed in a call to BPX1MSS, rc=156, rsn= > 0D070201, which means: I take it you are attaching your subtasks using MVS services. That won't happen if you use pthreads. > JRAlreadySigSetUp: BPX1MSS found the process already set up for > signals > Action: Only one task can be set up for signals at any one time. > Issue the signal unset (BPX1MSD) service on the task that did the last > setup and then reissue this service. > > So it seems I can only have POSIX(ON) in one TCB? That's a bit of a > showstopper. :( > > Thanks > Robin > > -----Original Message----- > From: IBM Mainframe Discussion List [mailto:[email protected]] > On Behalf Of Charles Mills > Sent: 14 March 2016 21:24 > To: [email protected] > Subject: Re: Linking C module with SSL > > Yup ... > > Be aware that changing to POSIX(ON) will introduce other subtle changes in > behavior. For example, fopen()'s decision on what is a legacy dataset and > what is a UNIX file changes. I was surprised to see that DD:SYSPRINT was now > the name of a new UNIX file and happily created it under /u/! Really. > >> Is this telling me SSL can only be used under USS? > Yes, but realize that USS is z/OS, and you can have a program that runs from > conventional JCL and looks externally like it could have been written in 1970 > that in fact "runs under USS." > > Charles > > -----Original Message----- > From: IBM Mainframe Discussion List [mailto:[email protected]] > On Behalf Of Robin Atwood > Sent: Monday, March 14, 2016 2:40 AM > To: [email protected] > Subject: Re: Linking C module with SSL > > Thanks. I had just spotted Charles's post back in 2012 with the same > problem and used a pragma. Now the init function fails with 202 > (KEYRING OPEN ERROR) but that looks like an admin problem. :) > > ---------------------------------------------------------------------- > For IBM-MAIN subscribe / signoff / archive access instructions, send > email to [email protected] with the message: INFO IBM-MAIN > > ---------------------------------------------------------------------- > For IBM-MAIN subscribe / signoff / archive access instructions, send > email to [email protected] with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
