cosmopolitan/libc/sock
Justine Tunney b107d2709f Add /statusz page to redbean plus other enhancements
redbean improvements:

- Explicitly disable corking
- Simulate Python regex API for Lua
- Send warmup requests in main process on startup
- Add Class-A granular IPv4 network classification
- Add /statusz page so you can monitor your redbean's health
- Fix regressions on OpenBSD/NetBSD caused by recent changes
- Plug Authorization header into Lua GetUser and GetPass APIs
- Recognize X-Forwarded-{For,Host} from local reverse proxies
- Add many additional functions to redbean Lua server page API
- Report resource usage of child processes on `/` listing page
- Introduce `-a` flag for logging child process resource usage
- Introduce `-t MILLIS` flag and `ProgramTimeout(ms)` init API
- Introduce `-H "Header: value"` flag and `ProgramHeader(k,v)` API

Cosmopolitan Libc improvements:

- Make strerror() simpler
- Make inet_pton() not depend on sscanf()
- Fix OpenExecutable() which broke .data section earlier
- Fix stdio in cases where it overflows kernel tty buffer
- Fix bugs in crash reporting w/o .com.dbg binary present
- Add polyfills for SO_LINGER, SO_RCVTIMEO, and SO_SNDTIMEO
- Polyfill TCP_CORK on BSD and XNU using TCP_NOPUSH magnums

New netcat clone in examples/nc.c:

While testing some of the failure conditions for redbean, I noticed that
BusyBox's `nc` command is pretty busted, if you use it as an interactive
tool, rather than having it be part of a pipeline. Unfortunately this'll
only work on UNIX since Windows doesn't let us poll on stdio and sockets
at the same time because I don't think they want tools like this running
on their platform. So if you want forbidden fruit, it's here so enjoy it
2021-04-23 18:53:57 -07:00
..
accept-nt.c Cleanup socket code 2021-02-05 23:58:50 -08:00
accept-sysv.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
accept.c Change license 2020-12-27 17:18:44 -08:00
accept4-sysv.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
accept4.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
bind-nt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
bind.c Implement syslog (#136) 2021-04-01 19:32:39 -07:00
closesocket-nt.c Cleanup socket code 2021-02-05 23:58:50 -08:00
connect-nt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
connect-sysv.c Implement syslog (#136) 2021-04-01 19:32:39 -07:00
connect.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
epoll.c Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
epoll.h Add epoll and do more release readiness changes 2020-11-28 12:01:51 -08:00
fixupnewsockfd.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
getpeername-nt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
getpeername-sysv.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
getpeername.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
getsockname-nt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
getsockname-sysv.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
getsockname.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
getsockopt-nt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
getsockopt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
inet_addr.c Add IP address conversion helpers 2021-02-20 22:53:22 -08:00
inet_aton.c Add IP address conversion helpers 2021-02-20 22:53:22 -08:00
inet_ntoa.c Add IP address conversion helpers 2021-02-20 22:53:22 -08:00
inet_ntop.c Change license 2020-12-27 17:18:44 -08:00
inet_pton.c Add /statusz page to redbean plus other enhancements 2021-04-23 18:53:57 -07:00
internal.h Add /statusz page to redbean plus other enhancements 2021-04-23 18:53:57 -07:00
iovec2nt.c Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
ipclassify.internal.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
kntwsadata.c Perform some code cleanup 2021-02-27 10:33:32 -08:00
listen-nt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
listen.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
mapdoserrortoerrno.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
parseport.c Change license 2020-12-27 17:18:44 -08:00
poll-nt.c Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
poll.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
recv.c Change license 2020-12-27 17:18:44 -08:00
recvfrom-nt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
recvfrom.c Fix test failure on Windows 2021-04-07 23:36:05 -07:00
recvmsg.c Fix test failure on Windows 2021-04-07 23:36:05 -07:00
select-nt.c Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
select.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
select.h Get Cosmopolitan into releasable state 2020-11-25 08:19:00 -08:00
send.c Change license 2020-12-27 17:18:44 -08:00
sendfile.c Remove more nonstandard stuff from cosmopolitan.h 2021-03-01 00:18:23 -08:00
sendmsg.c Fix test failure on Windows 2021-04-07 23:36:05 -07:00
sendto-nt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
sendto.c Fix test failure on Windows 2021-04-07 23:36:05 -07:00
setsockopt-nt.c Add /statusz page to redbean plus other enhancements 2021-04-23 18:53:57 -07:00
setsockopt.c Add /statusz page to redbean plus other enhancements 2021-04-23 18:53:57 -07:00
shutdown-nt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
shutdown.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
sock.h Add /statusz page to redbean plus other enhancements 2021-04-23 18:53:57 -07:00
sock.mk Implement syslog (#136) 2021-04-01 19:32:39 -07:00
socket-nt.c Cleanup socket code 2021-02-05 23:58:50 -08:00
socket-sysv.c Have redbean show zip listing as default / handler 2021-03-29 01:22:49 -07:00
socket.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
socketconnect.c Change license 2020-12-27 17:18:44 -08:00
socketpair-nt.c Perform fine-tuning of socketpair and pipe 2021-03-16 22:44:54 -07:00
socketpair-sysv.c Perform fine-tuning of socketpair and pipe 2021-03-16 22:44:54 -07:00
socketpair.c Perform fine-tuning of socketpair and pipe 2021-03-16 22:44:54 -07:00
syslog.c Implement syslog (#136) 2021-04-01 19:32:39 -07:00
syslog.h Implement syslog (#136) 2021-04-01 19:32:39 -07:00
winsockblock.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
winsockerr.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
xinet_ntop.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
yoink.inc Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00