|
b220dd92e3
|
iovec
|
2022-03-20 08:42:51 +01:00 |
|
|
787fbcf375
|
[cmph] do our own definitions
so we don't import headers any more.
|
2022-03-20 08:42:22 +01:00 |
|
|
f4012c8694
|
constructing header
|
2022-03-18 18:22:35 +01:00 |
|
|
bb3577f7b3
|
fix one-off bugs
|
2022-03-18 18:11:45 +01:00 |
|
|
0331364da2
|
test ergonomics
thanks tsmanner
|
2022-03-18 17:55:45 +01:00 |
|
|
e4e845384f
|
endianess and nblocks
|
2022-03-18 17:48:33 +01:00 |
|
|
692d80cdd7
|
corpus: add root
|
2022-03-18 06:34:28 +01:00 |
|
|
4daa6fd38a
|
sections: store offsets in indices
|
2022-03-18 06:17:52 +01:00 |
|
|
a426c46efa
|
tidy up imports
|
2022-03-18 05:52:21 +01:00 |
|
|
4e36d7850e
|
rewrite shells
- Shell is up to 256 bytes long.
- Store up to 255 shells in the Shells area.
- Remove padding from the User struct.
|
2022-03-17 17:07:33 +01:00 |
|
|
d526f1fab8
|
fix shell unit test
|
2022-03-16 07:12:35 +02:00 |
|
|
c721fa6d5d
|
split bdz int and str tests
|
2022-03-16 07:08:57 +02:00 |
|
|
e142621753
|
nits in tests
|
2022-03-16 06:59:12 +02:00 |
|
|
9c2f0969dc
|
sections: gc on error
|
2022-03-16 06:57:35 +02:00 |
|
|
8a4bb62613
|
shr user and group offsets
by 3 bits, all of them.
|
2022-03-15 10:56:50 +02:00 |
|
|
249cdb1a31
|
remove corpus.users and corpus.groups
These use cases are now fully replaced with MultiArrayList
|
2022-03-15 10:07:05 +02:00 |
|
|
0a0559824a
|
Bdz index helper
|
2022-03-15 08:09:28 +02:00 |
|
|
92ee170d54
|
bdz/cmph nits
|
2022-03-15 06:35:48 +02:00 |
|
|
6bf3e10eed
|
test packed users iterator
|
2022-03-15 06:27:03 +02:00 |
|
|
2c4e61d0ed
|
remove redundant sections
|
2022-03-13 14:22:49 +02:00 |
|
|
3b2f135d5c
|
refactor ShellReader, so it can be included
|
2022-03-10 19:20:25 +02:00 |
|
|
1751f6c996
|
replace PackedUserHash with simple PackedUser
passing hashes is OK
|
2022-03-10 19:20:25 +02:00 |
|
|
c78a2c0def
|
Implement Groupmembers and Groups section without tests
|
2022-03-10 19:20:25 +02:00 |
|
|
d6ba7bed63
|
group_members
|
2022-03-10 19:20:25 +02:00 |
|
|
4cc655de24
|
store members_offset as a varint
|
2022-03-10 13:02:38 +02:00 |
|
|
ba56ff8d3b
|
user gids are unpadded
|
2022-03-10 13:02:38 +02:00 |
|
|
8fbd605b8d
|
use Multi where appropriate
|
2022-03-10 13:02:38 +02:00 |
|
|
15e018389a
|
username2groups -> user2groups
|
2022-03-10 13:02:38 +02:00 |
|
|
c79741f4e2
|
groupname2users -> group2users
|
2022-03-10 13:02:38 +02:00 |
|
|
9aa52e5a69
|
offsets are u64, indices are u32
|
2022-03-10 13:02:38 +02:00 |
|
|
fc469acbf9
|
offsets are u64
|
2022-03-10 13:02:38 +02:00 |
|
|
d2ace3e125
|
remove redundant fields
|
2022-03-10 13:02:38 +02:00 |
|
|
9bf0a35689
|
add a struct for all sections
|
2022-03-10 13:02:38 +02:00 |
|
|
24d984d712
|
bdz.search_u32: search directly
|
2022-03-06 18:18:35 +02:00 |
|
|
1caf3f1184
|
some explicit errors in function signatures
|
2022-03-06 18:01:52 +02:00 |
|
|
d3be68b51d
|
generalize Shell2Index for hash and test stubs
|
2022-03-06 17:55:29 +02:00 |
|
|
a6349cd114
|
wip writing of users
|
2022-03-06 13:11:06 +02:00 |
|
|
e3fd1c833c
|
userGids unit test
|
2022-03-06 09:57:44 +02:00 |
|
|
efd3cfc367
|
expose len to the delta-compressed iterator
|
2022-03-06 09:39:18 +02:00 |
|
|
039aeb80dd
|
delta decompression iterator
|
2022-03-06 06:37:24 +02:00 |
|
|
ec95b231fa
|
varint iterator
|
2022-03-05 10:19:42 +02:00 |
|
|
e17b2c9641
|
expose native shell sections
|
2022-03-05 06:08:01 +02:00 |
|
|
869f3f3a65
|
less memory thrashing
|
2022-03-05 05:40:00 +02:00 |
|
|
87c424aab9
|
get rid of Corpus struct
it had some non-useful internal state
|
2022-03-04 11:12:04 +02:00 |
|
|
b81072f726
|
add usergids
|
2022-03-04 10:55:09 +02:00 |
|
|
a4e3e08f5f
|
packing shell sections
|
2022-03-03 18:05:46 +02:00 |
|
|
e1bdb6c529
|
more robust bdz for numbers + helpers
|
2022-03-03 11:32:12 +02:00 |
|
|
4fc54e5b65
|
[Section] slices instead of ArrayLists
It will need to be only indexed and interated anyway.
|
2022-03-02 07:15:08 +02:00 |
|
|
9721e1be7f
|
start with real sections
|
2022-03-02 06:50:15 +02:00 |
|
|
a526379fd8
|
cosmetic changes
|
2022-03-02 06:18:19 +02:00 |
|
|
0ccbdc4215
|
indentation
|
2022-03-02 06:07:07 +02:00 |
|
|
9392922216
|
some negative tests
|
2022-03-02 06:02:45 +02:00 |
|
|
321d1f6afd
|
sort and use unmanaged ArrayLists
|
2022-03-02 06:02:04 +02:00 |
|
|
e5870a95fe
|
make corpus smoke test pass
|
2022-03-02 05:42:23 +02:00 |
|
|
3c4455efeb
|
cloning users and groups
|
2022-03-01 15:03:51 +02:00 |
|
|
7df1296ce1
|
corpus test passing
|
2022-03-01 05:47:44 +02:00 |
|
|
3eec9a3274
|
starting with sections
|
2022-02-28 20:34:15 +02:00 |
|
|
40deb3f0be
|
preparing for bringing this all together
|
2022-02-28 06:19:32 +02:00 |
|
|
0b0e917086
|
deltaDecompress
|
2022-02-28 06:02:16 +02:00 |
|
|
ca67bf56e7
|
implement delta compression
|
2022-02-28 05:48:43 +02:00 |
|
|
df8ab1fbbf
|
PackedGroup
|
2022-02-27 18:40:05 +02:00 |
|
|
1ef962d64a
|
mutate users in tests
|
2022-02-27 06:26:01 +02:00 |
|
|
b4c7cba627
|
mutable/immutable PackedUser
|
2022-02-26 11:20:44 +02:00 |
|
|
f4c4dc535c
|
remove redundant comment
|
2022-02-26 10:46:06 +02:00 |
|
|
b02edc7190
|
use ArrayList instead of slices
The API is more ergonimic.
|
2022-02-26 10:29:41 +02:00 |
|
|
87b4b81a48
|
formatting
|
2022-02-25 15:22:05 +02:00 |
|
|
22c61d1207
|
fix PackedUser.maxSize
|
2022-02-25 15:17:24 +02:00 |
|
|
b0d74c0cad
|
formatting
|
2022-02-25 14:01:35 +02:00 |
|
|
eed4f4e234
|
add some clarifying comments
|
2022-02-25 13:58:06 +02:00 |
|
|
b9fb07121b
|
remove debug statements
|
2022-02-25 13:50:24 +02:00 |
|
|
2154205711
|
refactoring UserReader
|
2022-02-25 13:47:23 +02:00 |
|
|
751b51b859
|
change size treatment for PackedUser
|
2022-02-24 17:37:22 +02:00 |
|
|
49a7d79b05
|
PackedUser is now readable
|
2022-02-24 17:33:27 +02:00 |
|
|
0f43f8b2d0
|
wip refactoring PackedUser
|
2022-02-24 17:09:17 +02:00 |
|
|
b924e3a935
|
start packed group
|
2022-02-24 10:13:26 +02:00 |
|
|
3bf1b3fc01
|
bring back additional_gids_offset
|
2022-02-24 05:32:27 +02:00 |
|
|
c0afca00b0
|
shorten cmph pack by 4 bytes
|
2022-02-23 20:30:42 +02:00 |
|
|
3498167108
|
add bdz.zig
|
2022-02-23 18:30:35 +02:00 |
|
|
4f1bada988
|
start with cmph.zig and bdz.zig
|
2022-02-23 18:24:23 +02:00 |
|
|
609ab3d2b6
|
overflow tests
|
2022-02-23 10:19:50 +02:00 |
|
|
d555994960
|
wip varint
|
2022-02-23 07:10:49 +02:00 |
|
|
b58063ef63
|
Implementation status for each section
|
2022-02-23 06:31:25 +02:00 |
|
|
bb4b5eba03
|
add utf8 validation; rework user iterator
|
2022-02-23 06:09:42 +02:00 |
|
|
0e5365127a
|
increase gecos length
|
2022-02-22 15:22:30 +02:00 |
|
|
e06cac38b2
|
remove 3 bytes from PackedUser
additional_gids will be stored separately.
|
2022-02-22 15:16:45 +02:00 |
|
|
78dc63669d
|
add tests for upper limits
|
2022-02-22 15:04:59 +02:00 |
|
|
26fbfc5f08
|
fix non-packed iterator
|
2022-02-22 14:37:47 +02:00 |
|
|
ab0562950c
|
add some guard rails w.r.t. padding
|
2022-02-21 13:54:35 +02:00 |
|
|
f77d94e624
|
remove padding
|
2022-02-21 13:48:11 +02:00 |
|
|
91849c128f
|
non-packed user iterator
|
2022-02-20 14:13:06 +02:00 |
|
|
f2434e3d3c
|
working on iterator
|
2022-02-20 13:47:17 +02:00 |
|
|
54ec710f10
|
wip iterator
|
2022-02-20 12:44:21 +02:00 |
|
|
e54c153dd8
|
style
|
2022-02-20 09:47:47 +02:00 |
|
|
9487194c95
|
simplify catch
|
2022-02-20 09:19:59 +02:00 |
|
|
988ab9f6d4
|
update padded user alignment
|
2022-02-20 09:10:25 +02:00 |
|
|
330db487ac
|
add roundUp assertion
|
2022-02-19 22:12:49 +02:00 |
|
|
4dbc7b03bc
|
buffer is a pointer
|
2022-02-19 22:10:55 +02:00 |
|
|
ae2d3d5443
|
generalize padding funcs
|
2022-02-19 21:23:33 +02:00 |
|
|
2fc925923f
|
wip between-user padding
|
2022-02-19 18:20:50 +02:00 |
|
|
4e45c6e5a9
|
simplify appendUser
|
2022-02-19 16:56:53 +02:00 |
|