freebsd-dev/sys
Ed Schouten 4615998165 Implement the basic system calls that operate on pathnames.
Summary:
Unlike FreeBSD, CloudABI does not use null terminated strings for its
pathnames. Introduce a function called copyin_path() that can be used by
all of the filesystem system calls that use pathnames. This change
already implements the system calls that don't depend on any additional
functionality (e.g., conversion of struct stat).

Also implement the socket system calls that operate on pathnames, namely
the ones used by the C library functions bindat() and connectat(). These
don't receive a 'struct sockaddr_un', but just the pathname, meaning
they could be implemented in such a way that they don't depend on the
size of sun_path. For now, just use the existing interfaces.

Add a missing #include to cloudabi_syscalldefs.h to get this code to
build, as one of its macros depends on UINT64_C().

Test Plan:
These implementations have already been tested in the CloudABI branch on
GitHub. They pass all of the tests.

Reviewers: kib, pjd

Subscribers: imp

Differential Revision: https://reviews.freebsd.org/D3097
2015-07-24 07:46:02 +00:00
..
amd64 Various changes to the registers displayed in DDB for x86. 2015-07-22 01:09:02 +00:00
arm Implement the lockstat provider using SDT(9) instead of the custom provider 2015-07-19 22:14:09 +00:00
arm64 Teach the GICv2 driver about the Qualcomm GICv2 compatible string. 2015-07-21 18:08:10 +00:00
boot move the prototype to the lib.h header.. This makes more sense, and 2015-07-18 22:47:46 +00:00
bsm
cam Refactor unmapped buffer address handling. 2015-07-23 19:13:41 +00:00
cddl Remove checks for a NULL return value from M_WAITOK allocations. 2015-07-21 23:44:36 +00:00
compat Implement the basic system calls that operate on pathnames. 2015-07-24 07:46:02 +00:00
conf Merge ACPICA 20150717. 2015-07-22 16:25:07 +00:00
contrib Merge ACPICA 20150717. 2015-07-22 16:25:07 +00:00
crypto Complete the move that was started w/ r263218.. For some reason I 2015-07-11 03:12:34 +00:00
ddb Various changes to the registers displayed in DDB for x86. 2015-07-22 01:09:02 +00:00
dev Panic when a device is trying to recursively acquire rather than hang 2015-07-24 04:56:46 +00:00
fs The si_status field of the siginfo_t, provided by the waitid(2) and 2015-07-18 09:02:50 +00:00
gdb CALLOUT_MPSAFE has lost its meaning since r141428, i.e., for more than ten 2015-05-22 17:05:21 +00:00
geom Add a new option to gpart(8) to fix Lenovo BIOS boot issue 2015-07-15 02:23:55 +00:00
gnu The GNU Amlogic DTS files have some errors (e.g. bad register 2015-04-11 08:17:39 +00:00
i386 Remove duplicate and useless declarations. 2015-07-22 09:12:40 +00:00
isa
kern Call ksem_get() with initialized 'rights'. 2015-07-23 23:18:03 +00:00
kgssapi
libkern Remove checks for __ARM_EABI__, we only build for EABI now. 2015-07-09 21:02:40 +00:00
mips Populate hw.model with the CPU model information. 2015-07-14 05:14:10 +00:00
modules Add Makefiles for CloudABI kernel modules. 2015-07-22 07:32:49 +00:00
net Prevent null-pointer dereferencing. 2015-07-20 08:21:51 +00:00
net80211 Break out the current 802.11 software scan methods into an indirect table. 2015-06-08 02:35:43 +00:00
netgraph * Address review (and add a bit myself). 2015-07-12 18:14:38 +00:00
netinet Fix several problems with Stream Reset. 2015-07-22 11:30:37 +00:00
netinet6 Fix inverted logic bug that David Wolfskill found (thanks David!) 2015-07-22 09:29:50 +00:00
netipsec IPSEC, remove variable argument function its already due. 2015-07-21 21:46:24 +00:00
netnatm
netpfil Add helper functions for IP checksum adjusting. Use these functions in 2015-07-20 07:26:31 +00:00
netsmb
nfs Avoid closing unallocated socket in case socreate fails. 2015-02-28 20:30:29 +00:00
nfsclient Remove some oldnfs remnants. 2015-04-18 16:08:06 +00:00
nfsserver
nlm
ofed Fix broken implementation of "kvasprintf()" function by adding missing 2015-07-03 11:16:20 +00:00
opencrypto Fix XTS, and name things a bit better... 2015-07-14 07:45:18 +00:00
pc98 Spell crypto correctly. 2015-07-14 10:47:56 +00:00
powerpc Implement the lockstat provider using SDT(9) instead of the custom provider 2015-07-19 22:14:09 +00:00
rpc Remove hard limits on number of accepting NFS connections. 2015-04-07 10:25:27 +00:00
security fd: make 'rights' a manadatory argument to fget* functions 2015-07-05 19:05:16 +00:00
sparc64 Fix KSTACK_PAGES issue when the default value was changed in KERNCONF 2015-07-16 10:46:52 +00:00
sys Refactor unmapped buffer address handling. 2015-07-23 19:13:41 +00:00
teken
tools
ufs Refactor unmapped buffer address handling. 2015-07-23 19:13:41 +00:00
vm Refactor unmapped buffer address handling. 2015-07-23 19:13:41 +00:00
x86 Typo in comment. 2015-07-20 19:51:41 +00:00
xdr
xen Garbage collect comments which related to the pre-r284296 support for a 2015-06-21 06:05:33 +00:00
Makefile Kill EoL whitespace. 2015-05-29 14:03:07 +00:00