Charalampos Stratakis: "Attaching the strace output."
Oh thanks! I guess tha the interesting syscalls are:
socket(AF_ALG, SOCK_SEQPACKET|SOCK_CLOEXEC, 0) = 3
bind(3, {sa_family=AF_ALG, sa_data="hash\0\0\0\0\0\0\0\0\0\0"}, 88) = 0
accept4(3, NULL, NULL, SOCK_CLOEXEC) = 4
send(4, "abc", 3, 0) = -1 ENOKEY (Required key not available)
close(4) = 0
test_socket calls bind() with typ='hash', name='sha256', but in the strace, I only see 'hash'.
strace is maybe outdated and fails to display the full bind() address, or Python doesn't serialize correctly the address.
--
On my Fedora 26, I see sha256 in the bind call:
socket(AF_ALG, SOCK_SEQPACKET|SOCK_CLOEXEC, 0) = 3
bind(3, {sa_family=AF_ALG, sa_data="hash\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0sha256\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"}, 88) = 0
accept4(3, NULL, NULL, SOCK_CLOEXEC) = 4
sendto(4, "abc", 3, 0, NULL, 0) = 3
recvfrom(4, "\272x\26\277\217\1\317\352AA@\336]\256\"#\260\3a\243\226\27z\234\264\20\377a\362\0\25\255", 512, 0, NULL, NULL) = 32
close(4) = 0
accept4(3, NULL, NULL, SOCK_CLOEXEC) = 4
sendto(4, "a", 1, MSG_MORE, NULL, 0) = 1
sendto(4, "b", 1, MSG_MORE, NULL, 0) = 1
sendto(4, "c", 1, MSG_MORE, NULL, 0) = 1
sendto(4, "", 0, 0, NULL, 0) = 0
recvfrom(4, "\272x\26\277\217\1\317\352AA@\336]\256\"#\260\3a\243\226\27z\234\264\20\377a\362\0\25\255", 512, 0, NULL, NULL) = 32
close(4) = 0
close(3) = 0 |