mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-07-05 02:38:31 +00:00
Add socketpair (#122)
This commit is contained in:
parent
6388ef21f8
commit
ca88ce5026
7 changed files with 238 additions and 4 deletions
|
@ -67,6 +67,7 @@ hidden extern int __vforked;
|
|||
hidden extern unsigned __sighandrvas[NSIG];
|
||||
hidden extern struct Fds g_fds;
|
||||
hidden extern const struct NtSecurityAttributes kNtIsInheritable;
|
||||
hidden extern const char kPipeNamePrefix[];
|
||||
|
||||
int __reservefd(void) hidden;
|
||||
void __releasefd(int) hidden;
|
||||
|
@ -290,6 +291,8 @@ int __mkntpathat(int, const char *, int, char16_t[PATH_MAX]) hidden;
|
|||
unsigned __wincrash_nt(struct NtExceptionPointers *);
|
||||
ssize_t sys_readv_nt(struct Fd *, const struct iovec *, int) hidden;
|
||||
ssize_t sys_writev_nt(struct Fd *, const struct iovec *, int) hidden;
|
||||
char16_t *CreatePipeName(char16_t *) hidden;
|
||||
size_t UintToChar16Array(char16_t *, uint64_t) hidden;
|
||||
|
||||
/*───────────────────────────────────────────────────────────────────────────│─╗
|
||||
│ cosmopolitan § syscalls » metal ─╬─│┼
|
||||
|
|
|
@ -27,9 +27,9 @@
|
|||
#include "libc/nt/runtime.h"
|
||||
#include "libc/sysv/consts/o.h"
|
||||
|
||||
static const char kPipeNamePrefix[] = "\\\\?\\pipe\\cosmo\\";
|
||||
const char kPipeNamePrefix[] = "\\\\?\\pipe\\cosmo\\";
|
||||
|
||||
static size_t UintToChar16Array(char16_t *a, uint64_t i) {
|
||||
size_t UintToChar16Array(char16_t *a, uint64_t i) {
|
||||
size_t j = 0;
|
||||
do {
|
||||
a[j++] = i % 10 + '0';
|
||||
|
@ -40,7 +40,7 @@ static size_t UintToChar16Array(char16_t *a, uint64_t i) {
|
|||
return j;
|
||||
}
|
||||
|
||||
static char16_t *CreatePipeName(char16_t *a) {
|
||||
char16_t *CreatePipeName(char16_t *a) {
|
||||
static long x;
|
||||
unsigned i;
|
||||
for (i = 0; kPipeNamePrefix[i]; ++i) a[i] = kPipeNamePrefix[i];
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue