a2893a366e
getpwnam_r and getpwuid_r
2022-07-06 16:29:21 +03:00
64f6af6e94
libnss: better handling of env vars
2022-07-06 14:06:50 +03:00
59eae5fa3b
libnss: shorter code
2022-07-06 13:53:51 +03:00
9bd922a55a
better comptime
2022-07-06 13:29:36 +03:00
efdc919195
wip libnss
2022-07-06 13:19:15 +03:00
4e9f609131
show endianess better
2022-07-06 12:38:56 +03:00
f2570529d7
add missing args
2022-07-06 12:35:17 +03:00
6c6d9d9c2c
replace users_arr and groups_arr with smaller arrays
...
RSS savings are trivial, it was not worth it.
2022-07-06 12:32:52 +03:00
86d5c026be
avoid use of groups_arr
2022-07-06 12:18:53 +03:00
97dde99d5e
unix2db: use correct file permissions
2022-07-06 11:30:50 +03:00
cb9250010e
inverse headers
2022-07-06 11:17:52 +03:00
9f69a972ee
analyze: show begin/end
2022-07-06 11:16:20 +03:00
09de309b6e
turbo-analyze now shows something
2022-07-06 10:23:46 +03:00
601b1b4a6e
split calculation of lengths and offsets
2022-07-06 08:42:15 +03:00
65b0fa774d
wip: turbo-analyze
2022-07-05 09:09:32 +03:00
84eb2ca6f0
change allocator to raw_c_allocator
2022-07-05 06:03:25 +03:00
1546871e2d
use buffered reader
2022-07-05 06:03:25 +03:00
752b0bac6f
pack differently
2022-07-05 06:03:25 +03:00
eaccd00960
handle duplicate gid
2022-07-04 06:09:03 +03:00
e6b9d43646
slice pointer and unit test fixes
2022-07-04 05:46:56 +03:00
c39f89d995
realistic bugfixes
2022-07-03 09:44:09 +03:00
2e4229d613
main: trivial errors
2022-07-03 06:39:33 +03:00
c294d149fc
fix unix2db
2022-07-02 21:19:42 +03:00
e79cdaffde
fix user writing
2022-07-02 16:24:47 +03:00
83fa0c8733
better char debugging experience
2022-07-02 16:17:10 +03:00
186796fffc
user.fromLine tests
2022-07-02 09:14:02 +03:00
e7fb0c18d4
User.fromLine
2022-06-29 13:55:53 +03:00
5d171883a7
home + shell validators
2022-06-29 13:49:20 +03:00
7911287261
gecos validator
2022-06-29 13:37:36 +03:00
942c05f348
name validation
2022-06-29 10:48:37 +03:00
b703eeb37c
wip fromLine tests
2022-06-28 19:55:33 +03:00
f30510f122
wrap errors in real code with quotes
2022-06-28 16:44:44 +03:00
71f94d0600
fix error wrapping
2022-06-28 16:41:10 +03:00
3872f2af40
fix split_rev
2022-06-28 16:04:23 +03:00
0865965762
wip: failure tests
2022-06-22 21:16:13 +03:00
7d73667250
code style
2022-06-22 21:06:20 +03:00
a4d5be6fab
wip error context
2022-06-22 20:59:58 +03:00
6aa4b01692
wip handling errors in top level
2022-06-22 16:23:04 +03:00
62b643dbc2
ErrCtx: splitRev
2022-06-22 15:36:22 +03:00
675125be05
beginnings of using ErrCtx
2022-06-15 13:34:37 +03:00
eb6003c957
wip ErrCtx
2022-06-15 12:56:19 +03:00
72f6c9c6f4
don't be smart about memory continuity
2022-06-12 13:38:10 +03:00
9b803b84d2
add ErrContext
2022-06-12 13:27:12 +03:00
12561d9f3a
wip: full smoke test
2022-06-07 13:14:50 +03:00
e2d20bb805
formatting
2022-06-07 06:30:18 +03:00
a5c24ace80
writing to the db
2022-06-07 05:59:00 +03:00
31b5bb2d72
Group.fromReader
2022-06-07 05:39:16 +03:00
e238db9b60
unix2db: first stab at flag parsing
2022-06-06 10:01:15 +03:00
20bfa60f26
fixes for zig 0.10.0-dev.2473+e498fb155
2022-06-05 23:11:18 +03:00
d71f0d615b
fix one of stage2 errors
2022-05-25 09:48:39 +03:00
c602b7a039
rename lib to src
2022-05-25 09:42:42 +03:00
a8b45911aa
weekend changes
...
- move main.zig to it's own package, create lib/
- rename AllSections to DB, remove intermediate tuples
- iovec does not allocate
- remove error{Overflow} from almost everywhere
2022-03-23 12:01:13 +02:00
886382d900
clean up build a bit
2022-03-20 08:46:54 +01:00
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