"Valdis Klētnieks" <valdis.kletnieks@vt.edu> writes:
On Fri, 29 Nov 2019 23:37:35 -0500, Jeffrey Walton said:
repl: bad addresses: Valentin VidiD <vvidic@valentin-vidic.from.hr> -- no mailbox in address, only a phrase (Valentin VidiD)
On Fri, Nov 29, 2019 at 3:04 PM Jeffrey Walton <noloader@gmail.com> wrote:
... So now I am at:
$ gcc -Wall -g2 -O1 ktls.c -o ktls $ ./ktls setsockopt failed, 524, Unknown error 524
Now open in the Fedora bug tracker: https://bugzilla.redhat.com/show_bug.cgi?id=1778348
Looks like the 'unknown error' issue is a glibc strerror() problem. On the kernel side, git blame says:
[/usr/src/linux-next] git blame include/linux/errno.h | grep -C 5 524 ^1da177e4c3f4 (Linus Torvalds 2005-04-16 15:20:36 -0700 22) ^1da177e4c3f4 (Linus Torvalds 2005-04-16 15:20:36 -0700 23) /* Defined for the NFSv3 protocol */ ^1da177e4c3f4 (Linus Torvalds 2005-04-16 15:20:36 -0700 24) #define EBADHANDLE 521 /* Illegal NFS file handle */ ^1da177e4c3f4 (Linus Torvalds 2005-04-16 15:20:36 -0700 25) #define ENOTSYNC 522 /* Update synchronization mismatch */ ^1da177e4c3f4 (Linus Torvalds 2005-04-16 15:20:36 -0700 26) #define EBADCOOKIE 523 /* Cookie is stale */ ^1da177e4c3f4 (Linus Torvalds 2005-04-16 15:20:36 -0700 27) #define ENOTSUPP 524 /* Operation is not supported */ ^1da177e4c3f4 (Linus Torvalds 2005-04-16 15:20:36 -0700 28) #define ETOOSMALL 525 /* Buffer or request is too small */ ^1da177e4c3f4 (Linus Torvalds 2005-04-16 15:20:36 -0700 29) #define ESERVERFAULT 526 /* An untranslatable error occurred */
So I'm mystified why glibc's strerror() doesn't handle it. Though I think Alexander is correct on why the kernel returns ENOTSUPP.
include/linux/errno.h is kernel internal only. The UAPI header is uapi/linux/errno.h, which is an alias for uapi/asm/errno.h. There is no 524 in include/uapi/asm-generic/errno.h or include/uapi/asm-generic/errno-base.h The codes in include/linux/errno.h should be translated for userspace. This does look like a bug in the kernel tls code. Bjørn