Greatly expand system() shell code features

The cosmopolitan command interpreter now has 13 builtin commands,
variable support, support for ; / && / || syntax, asynchronous support,
and plenty of unit tests with bug fixes.

This change fixes a bug in posix_spawn() with null envp arg. strace
logging now uses atomic writes for scatter functions. Breaking change
renaming GetCpuCount() to _getcpucount(). TurfWar is now updated to use
the new token bucket algorithm. WIN32 affinity masks now inherit across
fork() and execve().
This commit is contained in:
Justine Tunney 2022-10-11 21:06:27 -07:00
parent e7329b7cba
commit b41f91c658
No known key found for this signature in database
GPG key ID: BE714B4575D6E328
80 changed files with 1370 additions and 344 deletions

View file

@ -8,9 +8,9 @@ struct msghdr { /* Linux+NT ABI */
void *msg_name; /* optional address */
uint32_t msg_namelen; /* size of msg_name */
struct iovec *msg_iov; /* scatter/gather array */
int msg_iovlen; /* iovec count */
void *msg_control; /* credentials and stuff */
uint32_t msg_controllen; /* size of msg_control */
int msg_iovlen; /* # elements in msg_iov */
void *msg_control; /* ancillary data c. cmsghdr */
uint32_t msg_controllen; /* ancillary data buffer len */
uint32_t __pad0; /* reconcile abi */
int msg_flags; /* MSG_XXX */
};