9e23f03ca2
Use non-templated systemd service
...
The previous setup was broken
This commit also adds some code to check that the database connection is
valid before it starts, as well as refactors the code that splits
between starting and external or internal server.
2025-11-10 00:38:26 +09:00
bd4791dc17
Check that executable is not SUID/SGID for unrelated subcommands
2025-11-10 00:33:53 +09:00
c2d22ee7f8
flake.lock: bump, Cargo.lock: bump, Cargo.toml: update inputs, format, etc
Build / build (push) Has been cancelled
Build / check (push) Has been cancelled
Build / docs (push) Has been cancelled
2025-05-07 10:39:10 +02:00
a0be0d3b92
Wrap database users and database names in newtypes
...
Also, use less cloning where possible
2024-08-20 17:46:43 +02:00
338694a64e
Add more --json flags
2024-08-20 17:46:43 +02:00
cdb1fb4181
Integrate better with systemd + better logs and protocol usage
...
This commits adds the following:
- Better systemd integration and usage:
- More hardening
- A watchdog thread
- Journald native logging
as well as
- Better logs
- Some protocol usage fixes
2024-08-20 17:46:40 +02:00
e993644844
core/database_privileges: test edit-db-privs -p parser
2024-08-19 19:26:27 +02:00
0ce90ab42a
list-db -> show-db
2024-08-19 18:58:26 +02:00
51302d75f0
create-users: default to setting no password in prompt
2024-08-19 18:06:47 +02:00
b21aa0eece
Fix sql regex to work like ownership validation
2024-08-19 17:59:13 +02:00
d1d06514a9
cargo fmt + clippy
2024-08-19 17:52:16 +02:00
3556eb37ea
Dont drop privs as server
2024-08-19 17:46:08 +02:00
20669569f3
Fix binary collation issues for privs as well
...
Ref #66
2024-08-19 17:44:21 +02:00
ed12a3153b
server/config: revamp
...
- Adds options `socket_path` and `password_file`
2024-08-19 16:57:25 +02:00
48240489a7
Have server notify the client about db connection errors
2024-08-19 16:57:24 +02:00
8fdfe457ac
Remove a few TODOs, either solved or converted to issue
2024-08-19 02:43:05 +02:00
807017ea70
add shell completion
2024-08-19 02:23:31 +02:00
5d049390b8
passwd-user: check for user existence before password input
2024-08-19 00:49:20 +02:00
a6f00d4313
Ensure user/db prefix has a _ behind it
2024-08-19 00:48:13 +02:00
cd0b2c3e6d
sd_notify(ready)
2024-08-19 00:13:22 +02:00
93469a6e84
Add more serverside logging
2024-08-19 00:11:11 +02:00
e4da639d5c
Fix sqlx parse error
2024-08-19 00:09:27 +02:00
daa8e069d3
Fix sql statement for show-user
2024-08-18 22:57:01 +02:00
86b5b47f1e
Add some logging
2024-08-18 22:26:00 +02:00
9d88c95f33
Fix systemd socket activation
2024-08-18 22:24:28 +02:00
53f19b3d05
Replace socket authentication mechanism with SO_PEERCRED
2024-08-18 22:22:58 +02:00
94c9a54c14
Bump all deps, fix db connection closing issues
2024-08-18 01:33:55 +02:00
168f832aec
Readd "databases where user has privileges" to show-user
2024-08-18 00:17:55 +02:00
f957bbd9da
Don't validate prefixes and postfixes for db item ownership
2024-08-17 22:30:30 +02:00
54a38255e6
privs editor: "New user" ->"Previously unprivileged"
2024-08-17 21:27:46 +02:00
466d4a8b96
Use db name as example for privs editor
2024-08-17 21:24:59 +02:00
af86893acf
Rewrite entire codebase to split into client and server
2024-08-17 20:21:05 +02:00
20e60ca5c7
Add protocol for authenticating a unix socket
2024-08-09 19:09:04 +02:00
e420c1f4d5
edit-db-privs: display diffs and ask before commiting
2024-08-08 21:48:41 +02:00
7ee60dacdc
Misc fixups to priv diff logic, add tests
2024-08-08 21:02:25 +02:00
8a91e9a3d0
core/database_operations: replace single field struct with sqlx unwrap
2024-08-08 19:45:28 +02:00
e2193f47c1
Only pass the mysql config portion when connecting
2024-08-08 19:40:57 +02:00
39a3f8ffd1
core/common: make testable, fix some status messages
2024-08-08 19:30:42 +02:00
69870147f5
Add a few more status prints to the commands
2024-08-08 00:56:30 +02:00
f78c88517f
Add lock-user and unlock-user
2024-08-08 00:53:26 +02:00
7e71b5071f
Report back more detailed results from commands
2024-08-07 23:33:07 +02:00
21c1f8cc87
Fix clippy warnings
2024-08-07 23:10:37 +02:00
011bcf9edc
More spring cleaning for privs, add test
2024-08-07 23:00:38 +02:00
1bb1c133e8
Consistently name db connection connection
2024-08-07 21:54:13 +02:00
5a7516aed8
Rename most instances of "permission" to "privilege"
2024-08-07 21:51:03 +02:00
71c712dce0
treewide: move some code around, spring cleaning
2024-08-07 21:17:27 +02:00
833251a1a2
show-user: add databases field, report when no users
2024-08-07 20:31:05 +02:00
a3c894061c
Remove already fixed TODO
2024-08-07 17:27:29 +02:00
e1f89b7b72
cargo clippy + fmt
2024-08-07 17:25:28 +02:00
3d7d001f65
show-user: add --json flag
2024-08-07 17:22:23 +02:00