253a001ebcf4e65b482f203c092a048508c5e6bb
The read() in readall() to read the SOCKS4a request was sometimes failing with EAGAIN, which it wasn't prepared for, causing the request to be rejected and the test to fail. I wrote this code specifically under the assumption the fd would be in blocking mode, and in the original draft I wrote with stdin/stdout under socat that was true. But when I adapted this to do its own bind/listen/accept logic, I broke it, because POSIX leaves it unspecified whether accept() inherits the O_NONBLOCK setting or not: https://pubs.opengroup.org/onlinepubs/9799919799/functions/accept4.html And the traditional BSD semantics is to inherit O_NONBLOCK. So, just explicitly clear O_NONBLOCK on the fd returned by accept().
Heimdal
Heimdal is an implementation of:
- ASN.1/DER,
- PKIX, and
- Kerberos.
For information how to install see here.
There are man pages for most of the commands.
Bug reports and bugs are appreciated. Use GitHub issues.
For more information see the project homepage https://heimdal.software/heimdal/ or the mailing lists:
heimdal-announce@heimdal.software low-volume announcement heimdal-discuss@heimdal.software high-volume discussion
send mail to heimdal-announce-subscribe@heimdal.software and heimdal-discuss-subscribe@heimdal.software respectively to subscribe.
Build Status
Description
Languages
C
91.5%
Roff
3.2%
Shell
2.8%
Makefile
0.6%
M4
0.6%
Other
1.1%