mirror of
https://github.com/0x1d/rcond.git
synced 2025-12-14 10:16:50 +01:00
65846a33c006df0a6664f7cf4885609867b8b3ab
rcond
A simple daemon to manage network connections through NetworkManager's D-Bus interface.
It provides a REST API to:
- Create and activate WiFi connections
- Deactivate WiFi connections
- Remove stored connection profiles
The daemon is designed to run on Linux systems with NetworkManager.
Build and Run
make build
make run
API
The full API specification can be found in api/rcond.yaml.
Endpoints
| Method | Path | Description |
|---|---|---|
| GET | /health |
Health check endpoint that returns status |
| POST | /network/up |
Create and activate a WiFi access point |
| POST | /network/down |
Deactivate a WiFi interface |
| POST | /network/remove |
Remove the stored connection profile |
Response Codes
- 200: Success
- 400: Bad request (invalid JSON payload)
- 405: Method not allowed
- 500: Internal server error
Request/Response Format
All endpoints use JSON for request and response payloads.
1) Bring a network up
curl -v -X POST http://localhost:8080/network/up \
-H "Content-Type: application/json" \
-d '{
"interface": "wlan0",
"ssid": "MyNetworkSSID",
"password": "SuperSecretPassword"
}'
2) Bring a network down
curl -v -X POST http://localhost:8080/network/down \
-H "Content-Type: application/json" \
-d '{
"interface": "wlan0"
}'
3) Remove the stored connection
curl -v -X POST http://localhost:8080/network/remove
Description
Languages
Go
96.8%
Makefile
3.2%