Commit b8dfc9d
committed
(userd) Replace C++ userd with Rust implementation
- Add userd-rs crate with full user management functionality
- Remove C++ userd implementation (userd/ directory)
- Add userd binary to sonic-host-services-rs package
- Add userd.service to sonic-host-services-data package
Features:
- User CRUD operations (create, update, delete)
- Role-based access control (administrator, operator)
- SSH key management with validation
- Security policies and PAM faillock configuration
- Consistency checking on startup
- CONFIG_DB monitoring via SubscriberStateTable
The Rust implementation is a drop-in replacement for the C++ version,
producing the same 'userd' binary installed to /usr/local/bin/userd.
Signed-off-by: Manoharan Sundaramoorthy <manoharan@nexthop.ai>1 parent 5251666 commit b8dfc9d
58 files changed
Lines changed: 5937 additions & 1365 deletions
File tree
- crates/userd-rs
- src
- data
- debian
- templates
- debian
- tests/hostcfgd
- sample_output
- LDAP
- LOCAL_RADIUS
- LOCAL
- RADIUS
- TACACS_config_db_disable_accounting
- TACACS_config_db_local_and_tacacs
- TACACS_config_db_local_tacacs
- TACACS_config_db_local
- TACACS_config_db_tacacs
- userd
- debian
- src
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
5 | 6 | | |
6 | 7 | | |
7 | 8 | | |
| |||
23 | 24 | | |
24 | 25 | | |
25 | 26 | | |
26 | | - | |
| 27 | + | |
27 | 28 | | |
28 | 29 | | |
29 | 30 | | |
| |||
50 | 51 | | |
51 | 52 | | |
52 | 53 | | |
53 | | - | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
0 commit comments