Age | Commit message (Collapse) | Author |
|
Change-Id: Ie21b75abcfc3f3d0fe68d84d81e92914fc9a7c0c
|
|
Change-Id: Iaf9905852fb8cef97340da149ada6e6e4c3b6d17
|
|
Change-Id: Ia85d147d493e1d6fb5a67ff5240dc64b17afb1af
|
|
Change-Id: Ib8aec16cfca88db69765e7fa25aeaf8ea240f18d
|
|
Change-Id: Ib8ddefb7a969e5cfd7e891233d083670a0c72596
|
|
We'd like to be able to have heap-allocated syscall data,
which means we can't impl Copy.
Change-Id: Ib40dcaf7f99baeaae0dae1153e80deae88d76978
|
|
Change-Id: I6ed5bd5dffbf5706b718be4f15896b831b3d64f5
|
|
Change-Id: I93538f4fd3daa4065d70fa3d4d9f638d83093f7b
|
|
Change-Id: Ic6392ac15d249f22aec9d866de088d5901d09948
|
|
Change-Id: I12392d386027542815e2a4b96372121ece3adfeb
|
|
Change-Id: Ie9eae95ff5f6e438ef84007153a599d092953382
|
|
Change-Id: I81047a4ac68e11a37882175732e4985c2f43a183
|
|
Having macro identifiers match the "real" identifier style makes macro
code markedly more readable.
Change-Id: Ib675390cc04941ce782c75b2ee686709441081fc
|
|
Change-Id: I025b5f707b15933c4dccdf36ce9e2c8d8673fe74
|
|
Change-Id: Iaf6d5717e2d83a6f81fda34da086311d21f345c2
|
|
This doesn't specifically handle
* the distinction between borrowed/owned file descriptors
(in non-return positions, that only applies to `close`)
* "nullable" fd parameters (-1 for not-present)
* other sentinel fds, like AT_FDCWD
* fd validity in general
Change-Id: I00fa68ec94b8f24e28c661d0c007becb37c0a5f3
|
|
Change-Id: Icfcab2fccc1c152a694dfba3ba1e272cdacdbfab
|
|
Change-Id: I56731f205e065bf501fd31a69c71c10aa7a2f720
|
|
Change-Id: I092d4f47231d560a0c4ac023e63051def34c2c92
|
|
Change-Id: I26356c9b88c838e3c87e4083ac17f958c7c57bb7
|
|
Squeeze the bitflags / SyscallArg impl boilerplate into one macro.
Change-Id: I5b5213b6f3ee11bc61b6f8439ceb2510ef6dffec
|
|
Change-Id: I1b4e7e01b5d5c840ac2e94f9637552f71e61ed04
|
|
Every single syscall arg producing a warning is just noisy.
Change-Id: I339260886110e2982217ebbf9d29cb1cf91c747c
|
|
We separate type-based parsing of syscall arguments from more detailed
validation based on multiple parameters or on specific values.
The former is implemented with a macro that takes syscall signatures
and generates the relevant enum variant and parsing code.
Co-authored-by: edef <edef@unfathomable.blue>
Change-Id: I7e334d3e128e7b1461bfd6fae7c8ec5dd6ada0a8
|
|
Same bug as Ied63822001c8700fc71c89ec16d18036fbc33972, hiding missing
behaviour around dirfd. newfstatat(AT_FDCWD, path, …) is used, as is
newfstatat(fd, "", …).
Change-Id: I03b9dc5118d7a47514abef82c4a577e8362fbb4d
|
|
Our conversion always mangled it, *and* our comparison was inverted,
so both bugs remained hidden.
Change-Id: Ied63822001c8700fc71c89ec16d18036fbc33972
|
|
The fourth argument is passed in r10, not rcx, which is merely
clobbered by syscalls.
Change-Id: I0c7210c621f6955deccf21348ce6f495424555cc
|
|
Change-Id: I9ef820d2c22d54c6d8d6b259c2eea3f27d6459ac
|
|
Shuffling 3k around on the stack doesn't make anyone happy.
Change-Id: I444fc22267380d9b99ca63ca148b9a9e85238b5a
|
|
With this, minitrace has all the syscalls needed to run cc1.
Change-Id: Iaeef58769f69d64e192af2270eb520e891daec94
|
|
We were accidentally grabbing things from the prelude module already,
and this is the cleaner fix.
Change-Id: I2c6b669164df11f467eae495d109e096eb267b59
|
|
A little more explicit, and a bit more readable.
Change-Id: Id462c46236e1de547aabd36409260bd1c99f6f88
|
|
We haven't picked a license for our web content yet, so this is
LicenseRef-NONE for now.
Change-Id: Iabfc35860cb8ad0025624161214b1cbb6574e0c5
|
|
fusermount(1) gets shadowed by pkgs.fuse, but we actually need the
SUID-root one in the system PATH. This adds a wrapper script that
hunts down a SUID-root binary from PATH.
Change-Id: Icc5c6789d7b74bf8f6e3c50529333eb6b894527f
|
|
Change-Id: I8329f14bddaaa2d141e82c087821e4602bd1259a
|
|
Change-Id: I6c4d471b2840613d30ee95efe14547f2f9c0db6b
|
|
Change-Id: I0710d80e34bcad1d4b1406731f2d790a0e6972f4
|
|
Node::find would walk the tree all the way down and to the right if
given an out of bounds index. This doesn't affect the return value
(None), but it does waste some cycles walking down all the way to
the deepest rightmost leaf.
Change-Id: Ic2f72aa96291a25819fc6c3c2f060fe0182a7663
|
|
Change-Id: I319a2de0da0ff71f0f337e5a17ef199f23254b11
|
|
A single linear array does everything we need here, since we don't
actually use the cheap writes the BTreeMaps would permit us, and we
save ourselves the hassle of maintaining two parallel lookup structures.
Change-Id: I418b0aaa7a3191fab3195f36f2c68ac0f5f0382b
|
|
Change-Id: I8a928b57ecc81bea31d757e73b9ece9474628db4
|
|
This makes the filesystem more like eg /nix/store.
~/src/ripple> ./target/release/add fossil
puma5z7rnb4tmnqk8ixgryobay9ifg8txh69635snkgx8dis6quo
~/src/ripple> ./target/release/mount &
~/src/ripple> ls mnt/puma5z7rnb4tmnqk8ixgryobay9ifg8txh69635snkgx8dis6quo
benches build.rs Cargo.toml src
Change-Id: Ic35f81ffec521f49ce2e4a414919e1ff717d7041
|
|
Essentially, memtree::Node becomes more of a NodeRef, and Node gets
renamed to NodeBuf. This permits calling Node::find with an arbitrary
owned Directory, without having to move it into the enum.
Change-Id: I93838932a00f2e2073e3c7ddf7ce8d302ed4ed59
|
|
This replaces the tuples with a DirectoryEntry struct.
Change-Id: I42a49fee03f7abfac9143c48106ebeb964814ca9
|
|
Change-Id: I2c9b2a15ac066ec2295d54665afd301f396efdc1
|
|
Previously, the CLI took Directory protobufs as input or wrote them as
output. Now we just deal in store hashes.
Change-Id: I5e0f0f33929ede43d971080c33bdb865f1832b2e
|
|
These decode digests to and from zbase32 for user-facing uses.
Change-Id: Ibd2db960044a97812d18d1a3c107521d78bd7f24
|
|
stdlib code seems to place these before the blocks,
so let's copy their style.
Change-Id: Ic77ed43bc8c6807c5ddb126e624f263f8bca5b66
|
|
This changes it from building an implicit top-level directory
containing all its args, to simply accepting a directory.
Change-Id: Iaf00e07d8568367b9eb27f365e8a2eaac3576974
|
|
Change-Id: I8e976279bd7aaaaf325129dc5c68a6ca5c750dc6
|