We're on OS v7r4
One of my programs is failing with the following error:
CommTCP_read: Socket has been shut down.
URL that I'm attempting:
http://192.168.999.998/SendEmail/SendEm ... &subj=Test
If I enter the url from a browser window, it works. When I call the url from the program on the IBM, it fails with the error msg.
Here's a code snip:
URL = 'http://' + %trim(server) + %trim(ASP) +
'?' + %trim(data);
rc = http_url_get_raw(%trim(URL): *loval: %paddr('INCOMING'):30);
Here's the debug log info:
HTTPAPI Ver 1.45 released 2021-09-20
NTLM Ver 1.4.0 released 2014-12-22
OS/400 Ver V7R4M0
http_persist_open(): entered
http_long_ParseURL(): entered
DNS resolver retrans: 2
DNS resolver retry : 2
DNS resolver options: x'00000136'
DNS default domain: domain_name
DNS server found: 192.168.999.999
Nagle's algorithm (TCP_NODELAY) disabled.
http_persist_get(): entered
http_persist_req(GET) entered.
http_persist_req(GET) entered.
http_long_ParseURL(): entered
http_long_ParseURL(): entered
do_oper(GET): entered
There are 0 cookies in the cache
GET /SendEmail/SendEmail.aspx?from=tom@myserver.com&to=tom@myserver.com&msg=Test&subj=Test
HTTP/1.1
Host: 192.168.999.998
User-Agent: http-api/1.45
recvresp(): entered
SetError() #44: CommTCP_read: Socket has been shut down.
recvresp(): end with err
http_close(): entered
Error: CommTCP_read: Socket has been shut down.
-
- Site Admin
- Posts: 872
- Joined: Sun Jul 04, 2021 5:12 am
Re: Error: CommTCP_read: Socket has been shut down.
I assume you changed the IP addresses in the log -- since they are nonsensical and invalid.
The error indicates an error reading from the network. Typically it means that the OS said there was data to read from the socket, but then when it requested the data, it got none.
This can happen with SSL sockets because some of the bytes from the network are used to handle the cryptography, so aren't actually data. Current versions of HTTPAPI understand this and will re-try.
But, this appears to be a TCP (non-SSL) socket from what you've posted. I've not heard of that happening... My guess is that there is some sort of network error, but I don't know what, specifically... never seen it before.
The error indicates an error reading from the network. Typically it means that the OS said there was data to read from the socket, but then when it requested the data, it got none.
This can happen with SSL sockets because some of the bytes from the network are used to handle the cryptography, so aren't actually data. Current versions of HTTPAPI understand this and will re-try.
But, this appears to be a TCP (non-SSL) socket from what you've posted. I've not heard of that happening... My guess is that there is some sort of network error, but I don't know what, specifically... never seen it before.
Re: Error: CommTCP_read: Socket has been shut down.
I did obfuscate the IP addresses, company policy.
So I'm thinking I'm not all the way current on httpapi - if I install the most-recent version, will I need to recompile my programs that are compiled with the httpapi headers?
Thanks
So I'm thinking I'm not all the way current on httpapi - if I install the most-recent version, will I need to recompile my programs that are compiled with the httpapi headers?
Thanks
-
- Site Admin
- Posts: 872
- Joined: Sun Jul 04, 2021 5:12 am
Re: Error: CommTCP_read: Socket has been shut down.
No, you don't have to recompile your programs.