What does it really mean when I issue a close() but get back an error saying "invalid session". This happens after the client has lost it's connection, typically due to a timeout or TLS error. Are there still requests that are queued for a retry in that situation?

Essentially, XrdClFile has entered into an undefined state. While that corresponds to the POSIX definition of what happens when an error is returned on close() it doesn't play that well in the real world. Can the XrdClFile object be deleted? The current assumption is that it cannot be deleted which causes a memory leak. So, this needs to be resolved.

Second issue. It appears when you do a forced disconnect on a TLS socket it appears that the client is not going through the TLS shutdown procedure but simply closing the socket. That is bad because it generates lots of TLS errors and who knows what that triggers. Can this be investigated?

BTW The server always calls XrdTlsSocket::Shutdown() before physically closing the socket. The Shutdown() code in XrdTlsSocket skips the shutdown if a TLS error occurred. In the forced disconnect case, that is not a TLS error.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

[ { "@context": "http://schema.org", "@type": "EmailMessage", "potentialAction": { "@type": "ViewAction", "target": "https://github.com/xrootd/xrootd/issues/1437", "url": "https://github.com/xrootd/xrootd/issues/1437", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { "@type": "Organization", "name": "GitHub", "url": "https://github.com" } } ]

Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1