cosmopolitan/libc/sock
Justine Tunney 281a0f2730 Implement raw system call for redbean lua code
You can now call functions like fork() from Lua and it'll work across
all supported platforms, including Windows. This gives you a level of
control of the system that Lua traditionally hasn't been able to have
due to its focus on old portable stdio rather modern POSIX APIs. Demo
code has been added to redbean-demo.com to show how it works.

This change also modifies Lua so that integer literals with a leading
zero will be interpreted as octal. That should help avoid shooting in
the foot with POSIX APIs that frequently use octal mode bits.

This change fixes a bug in opendir(".") on New Technology.

Lastly, redbean will now serve crash reports to private network IPs.
This is consistent with other frameworks. However that isn't served
to public IPs unless the -E flag is passed to redbean at startup.
2022-04-13 08:53:24 -07:00
..
accept-nt.c Improve system call support 2021-08-25 21:36:17 -07:00
accept-sysv.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
accept.c Make signal handling work well across platforms 2022-03-25 07:28:57 -07:00
accept4-sysv.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
accept4.c Introduce --strace flag for system call tracing 2022-03-18 18:07:28 -07:00
alg.h Perform build and magnum tuning 2021-08-10 10:26:13 -07:00
bind-nt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
bind.c Implement raw system call for redbean lua code 2022-04-13 08:53:24 -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 Make signal handling work well across platforms 2022-03-25 07:28:57 -07:00
dupsockfd.c Improve system call support on NT 2022-04-07 20:30:04 -07:00
epoll.c Make signal handling work well across platforms 2022-03-25 07:28:57 -07:00
epoll.h Add epoll and do more release readiness changes 2020-11-28 12:01:51 -08:00
firewall.c Improve ZIP filesystem and change its prefix 2021-08-22 01:11:53 -07:00
fixupnewsockfd.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
gethostips.c Add test for ioctl(SIOCGIFCONF) and polyfill on BSDs 2021-06-25 18:44:04 -07:00
getpeername-nt.c Make minor revisions to previous change 2021-06-30 10:45:27 -07:00
getpeername-sysv.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
getpeername.c Introduce --strace flag for system call tracing 2022-03-18 18:07:28 -07: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 Introduce --strace flag for system call tracing 2022-03-18 18:07:28 -07:00
getsockopt-nt.c Add SSL to redbean 2021-06-24 13:20:50 -07:00
getsockopt.c Add support for symbol table in .com files 2022-03-23 06:34:46 -07:00
goodsocket.c Refactor out some duplicated code 2021-08-14 06:17:56 -07:00
goodsocket.internal.h Refactor out some duplicated code 2021-08-14 06:17:56 -07: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 Introduce --strace flag for system call tracing 2022-03-18 18:07:28 -07:00
inet_pton.c Add /statusz page to redbean plus other enhancements 2021-04-23 18:53:57 -07:00
internal.h Improve system call support on NT 2022-04-07 20:30:04 -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
ispublicip.c Improve ZIP filesystem and change its prefix 2021-08-22 01:11:53 -07:00
kntwsadata.c Get Redbean fork() working on the New Technology 2022-03-20 08:01:14 -07:00
listen-nt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
listen.c Introduce --strace flag for system call tracing 2022-03-18 18:07:28 -07:00
parseport.c Add protoent and netent (#209) 2021-07-10 12:36:35 -07:00
poll-metal.c Make numerous improvements 2021-09-28 01:52:34 -07:00
poll-nt.c Make signal handling work well across platforms 2022-03-25 07:28:57 -07:00
poll.c Make signal handling work well across platforms 2022-03-25 07:28:57 -07:00
recv.c Make signal handling work well across platforms 2022-03-25 07:28:57 -07:00
recvfrom-nt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
recvfrom.c Make signal handling work well across platforms 2022-03-25 07:28:57 -07:00
recvmsg.c Make signal handling work well across platforms 2022-03-25 07:28:57 -07:00
select-nt.c Make signal handling work well across platforms 2022-03-25 07:28:57 -07:00
select.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
select.h Make numerous improvements 2021-09-28 01:52:34 -07:00
send.c Make signal handling work well across platforms 2022-03-25 07:28:57 -07:00
sendfile.c Make numerous improvements 2021-09-28 01:52:34 -07:00
sendmsg.c Make signal handling work well across platforms 2022-03-25 07:28:57 -07:00
sendto-nt.c Polish recent changes and make improvements 2022-03-19 03:37:00 -07:00
sendto.c Make signal handling work well across platforms 2022-03-25 07:28:57 -07:00
setsockopt-nt.c Add /statusz page to redbean plus other enhancements 2021-04-23 18:53:57 -07:00
setsockopt.c Add support for symbol table in .com files 2022-03-23 06:34:46 -07:00
shutdown-nt.c Remove dollars from system call support symbols 2021-02-03 19:35:29 -08:00
shutdown.c Introduce --strace flag for system call tracing 2022-03-18 18:07:28 -07:00
sock.h Introduce --strace flag for system call tracing 2022-03-18 18:07:28 -07:00
sock.mk Add SSL to redbean 2021-06-24 13:20:50 -07:00
sockdebug.c Fix more things 2022-03-24 00:12:29 -07:00
sockdebug.h Introduce --strace flag for system call tracing 2022-03-18 18:07:28 -07:00
socket-nt.c Improve system call support on NT 2022-04-07 20:30:04 -07:00
socket-sysv.c Have redbean show zip listing as default / handler 2021-03-29 01:22:49 -07:00
socket.c Add support for symbol table in .com files 2022-03-23 06:34:46 -07:00
socketpair-nt.c Make improvements 2022-04-07 00:15:35 -07:00
socketpair-sysv.c Perform fine-tuning of socketpair and pipe 2021-03-16 22:44:54 -07:00
socketpair.c Implement raw system call for redbean lua code 2022-04-13 08:53:24 -07:00
syslog.c Delete most undocumented New Technology APIs 2022-04-11 23:41:12 -07:00
syslog.h Implement syslog (#136) 2021-04-01 19:32:39 -07:00
winsockblock.c Make numerous improvements 2021-09-28 01:52:34 -07: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