mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-08-03 16:30:29 +00:00
Revamp posix_spawn() implementation
This commit is contained in:
parent
b41f91c658
commit
0cee831da3
15 changed files with 383 additions and 215 deletions
41
libc/stdio/posix_spawn.internal.h
Normal file
41
libc/stdio/posix_spawn.internal.h
Normal file
|
@ -0,0 +1,41 @@
|
|||
#ifndef COSMOPOLITAN_LIBC_STDIO_SPAWNA_INTERNAL_H_
|
||||
#define COSMOPOLITAN_LIBC_STDIO_SPAWNA_INTERNAL_H_
|
||||
#include "libc/calls/struct/sched_param.h"
|
||||
#include "libc/calls/struct/sigset.h"
|
||||
|
||||
#define _POSIX_SPAWN_CLOSE 1
|
||||
#define _POSIX_SPAWN_DUP2 2
|
||||
#define _POSIX_SPAWN_OPEN 3
|
||||
|
||||
#if !(__ASSEMBLER__ + __LINKER__ + 0)
|
||||
COSMOPOLITAN_C_START_
|
||||
|
||||
struct _posix_spawna {
|
||||
char flags;
|
||||
bool schedparam_isset;
|
||||
bool schedpolicy_isset;
|
||||
bool sigmask_isset;
|
||||
int pgroup;
|
||||
int schedpolicy;
|
||||
struct sched_param schedparam;
|
||||
sigset_t sigmask;
|
||||
sigset_t sigdefault;
|
||||
};
|
||||
|
||||
struct _posix_faction {
|
||||
struct _posix_faction *next;
|
||||
int action;
|
||||
union {
|
||||
int fildes;
|
||||
int oflag;
|
||||
};
|
||||
union {
|
||||
int newfildes;
|
||||
unsigned mode;
|
||||
};
|
||||
const char *path;
|
||||
};
|
||||
|
||||
COSMOPOLITAN_C_END_
|
||||
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
|
||||
#endif /* COSMOPOLITAN_LIBC_STDIO_SPAWNA_INTERNAL_H_ */
|
Loading…
Add table
Add a link
Reference in a new issue