@bbockelm commented on this pull request.
> @@ -63,6 +63,12 @@ int initErrTable() lastGood = i; } } + // NOTE: On systems without EAUTH (authentication error; currently all Glibc systems but GNU Hurd), + // EAUTH is remapped to EBADE ('invalid exchange'). Given there's no current XRootD use of a + // syscall that can return EBADE, we assume EBADE really means authentication denied. +#if defined(EBADE) + Errno2String[EBADE] = "authentication failed"; +#endif
(Indeed, MacOS lacks EBADE
, that's why I had to do the #if
macro)
Is the assumption that EBADE == authentication failed reasonable? Can something else be mistaken for authentication failure because of this?
I think it's reasonable but not necessarily bulletproof. The EBADE response is pretty esoteric and I couldn't spot any syscalls used that would trigger it on MacOS.
Can I guarantee that this remains true in the future? Of course not. My feeling is this would lead to an improvement in 99.9% of cases, however.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.
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