feat(tarpit): port-selective tc netem tarpit mode with live log events
- GET/POST/DELETE /api/v1/deckies/{name}/tarpit (admin write, viewer GET)
- get_container_veth() + get_container_pid() in network.py via iflink/ip-link
- TarpitRule SQLModel table + TarpitMixin repo (upsert/get/delete/list)
- Background tarpit_watcher_worker: polls /proc/{pid}/net/tcp every 15s,
emits tarpit_enter/tarpit_exit log events (edge-triggered, with duration)
- tarpit_enabled/tarpit_disabled logs on operator POST/DELETE actions
This commit is contained in:
@@ -179,6 +179,12 @@ from .workers import (
|
||||
WorkersResponse,
|
||||
WorkerStatus,
|
||||
)
|
||||
from .tarpit import (
|
||||
TarpitEnableRequest,
|
||||
TarpitRule,
|
||||
TarpitRuleResponse,
|
||||
TarpitStatusResponse,
|
||||
)
|
||||
|
||||
__all__ = [
|
||||
# _base
|
||||
@@ -334,4 +340,9 @@ __all__ = [
|
||||
"WorkerControlResponse",
|
||||
"WorkersResponse",
|
||||
"WorkerStatus",
|
||||
# tarpit
|
||||
"TarpitEnableRequest",
|
||||
"TarpitRule",
|
||||
"TarpitRuleResponse",
|
||||
"TarpitStatusResponse",
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user