Skip to main content

We are using sockets for an internet app.  Sometimes when it does a read from the app it hangs and I cannot get the dll to return control to me.

We then need to kill the port and restart the service.  We originally did not use a timeout but now using value of -1 which is the default?

MOVE "Servicing HTTP request 1:" TO W-COMMAND
PERFORM V910-DISPLAY-PROMPT
* Setup Socket to return buffer length
MOVE -1 TO W-SVR-LNGTH
CALL "C$SOCKET" USING AGS-READ, W-CLI-HANDLE,
W-SVR-RCVD(W-SVR-RCVD-SUB:),
W-SVR-LNGTH

********************CLT 16/6/2023
, W-SVR-TIMEOUT
GIVING W-SVR-READ

We are using sockets for an internet app.  Sometimes when it does a read from the app it hangs and I cannot get the dll to return control to me.

We then need to kill the port and restart the service.  We originally did not use a timeout but now using value of -1 which is the default?

MOVE "Servicing HTTP request 1:" TO W-COMMAND
PERFORM V910-DISPLAY-PROMPT
* Setup Socket to return buffer length
MOVE -1 TO W-SVR-LNGTH
CALL "C$SOCKET" USING AGS-READ, W-CLI-HANDLE,
W-SVR-RCVD(W-SVR-RCVD-SUB:),
W-SVR-LNGTH

********************CLT 16/6/2023
, W-SVR-TIMEOUT
GIVING W-SVR-READ

What version are you using? This fix was made for V 10.2.1 and later 

SUBJECT: Timeout value not honored in C$SOCKET
Change Number:  ECN-4584
New Version: 10.2.1
When using the timeout parameter of C$SOCKET READ, the read would wait
forever instead of timing out.

What version are you using? This fix was made for V 10.2.1 and later 

SUBJECT: Timeout value not honored in C$SOCKET
Change Number:  ECN-4584
New Version: 10.2.1
When using the timeout parameter of C$SOCKET READ, the read would wait
forever instead of timing out.

Thank you for this.

Sounds like this could be the issue. Checking with my customer re the version - they normally keep to the latest.  Was the change in acu or in the dll?  Is there a newer version of the $socket.dll available?

ours is dated 2019..  Also is the dll provided by Acu?

Very new to this forum - where would I go and see the details around the change?


Thank you for this.

Sounds like this could be the issue. Checking with my customer re the version - they normally keep to the latest.  Was the change in acu or in the dll?  Is there a newer version of the $socket.dll available?

ours is dated 2019..  Also is the dll provided by Acu?

Very new to this forum - where would I go and see the details around the change?

Acu does not provide a $socket.dll. The COBOL code would be very different to use an external dll. The CALL "C$SOCKET" - this C$SOCKET is a library routine within the Acu runtime. Typically if you're encountering an issue you would contact Micro Focus Customer Care - https://www.microfocus.com/en-us/contact-support/stackb 


Acu does not provide a $socket.dll. The COBOL code would be very different to use an external dll. The CALL "C$SOCKET" - this C$SOCKET is a library routine within the Acu runtime. Typically if you're encountering an issue you would contact Micro Focus Customer Care - https://www.microfocus.com/en-us/contact-support/stackb 

okay that makes sense thank you.. much appreciated.  We are using the c$socket routine..


We are using sockets for an internet app.  Sometimes when it does a read from the app it hangs and I cannot get the dll to return control to me.

We then need to kill the port and restart the service.  We originally did not use a timeout but now using value of -1 which is the default?

MOVE "Servicing HTTP request 1:" TO W-COMMAND
PERFORM V910-DISPLAY-PROMPT
* Setup Socket to return buffer length
MOVE -1 TO W-SVR-LNGTH
CALL "C$SOCKET" USING AGS-READ, W-CLI-HANDLE,
W-SVR-RCVD(W-SVR-RCVD-SUB:),
W-SVR-LNGTH

********************CLT 16/6/2023
, W-SVR-TIMEOUT
GIVING W-SVR-READ

Hmmmmm .... looks very familiar Christine?



------------------------------
Peter Clayton
Developer
Cobsolv Cc
Midrand ZA
------------------------------