Commit graph

28 commits

Author SHA1 Message Date
3c0b210d04 fix: sudo pkill -HUP for reload, with sudoers rule (NoNewPrivileges already removed) 2026-07-29 09:50:42 +00:00
5e742cbe2d fix: use pkill -HUP dnsmasq instead of systemctl (no polkit needed), display pinned hostname in table 2026-07-29 09:48:28 +00:00
db081b6b04 fix: null-safe input lookup in confirmEditForm 2026-07-29 09:37:16 +00:00
60e05cd8fe fix: guard null selectors in showEditForm when button type varies 2026-07-29 09:33:35 +00:00
2e60e19877 feat: separate Pin/Edit/Unpin — one-click pin when hostname exists, inline edit for pinned leases 2026-07-29 09:31:55 +00:00
7793c9edde fix: improve pin form CSS visibility, use inline-flex for layout 2026-07-29 09:29:06 +00:00
1b645ea821 docs: update README with DNS name service, systemctl capabilities, architecture diagram 2026-07-29 09:25:14 +00:00
646b708104 fix: add dnsmasq restart-on-failure override for container boot race 2026-07-29 09:21:51 +00:00
16b5850aa6 feat: pin leases with optional hostname — adds DNS address=/name/IP record for network-wide name resolution 2026-07-29 08:35:01 +00:00
2b65c25219 feat: smart interface detection — lists all interfaces, validates choice, auto-detects subnet mask 2026-07-29 07:40:54 +00:00
075c914a36 fix: remove bind-interfaces from dnsmasq config (breaks veth/LXC interfaces) 2026-07-29 07:38:58 +00:00
6554078246 fix: use systemctl directly with CAP_SYS_ADMIN capability instead of sudo (broken by NoNewPrivileges) 2026-07-25 18:26:40 +00:00
da01893aa3 feat: reload also scrubs expired leases from lease file before reloading dnsmasq 2026-07-25 18:22:34 +00:00
efeb993d20 fix: filter out expired DHCP leases from table (keep pinned) 2026-07-25 18:21:24 +00:00
cad0458f1e fix: security hardening — sanitize config input, atomic writes, error leak, rate limit, dead code 2026-07-24 11:51:54 +00:00
45ad3a2b9b docs: add README.md with install guide, remove redundant setup.sh 2026-07-24 11:36:56 +00:00
026c97598b fix: add zoraxy.csrf.Token meta tag needed by $.cjax() 2026-07-24 11:21:25 +00:00
81271b6ce6 fix: load jQuery and utils.js (needed for $.cjax()) from Zoraxy paths 2026-07-24 11:12:50 +00:00
4f48790a5a fix: use $.cjax() (Zoraxy CSRF-safe AJAX wrapper) instead of raw fetch() 2026-07-24 11:09:00 +00:00
76e7fc3d5c fix: switch to form-encoded POST + CSRF as query param + form field 2026-07-24 10:54:45 +00:00
78cae8dea4 fix: only add CSRF body field on POST requests, not GET 2026-07-24 10:51:20 +00:00
037791bbd5 fix: send CSRF token in POST body field, header, and X-CSRF-Token header 2026-07-24 10:30:57 +00:00
8b0bd75f29 fix: reload returns 200 JSON on error, fix missing buttons, handle non-JSON responses, add -buildvcs=false 2026-07-24 10:08:12 +00:00
e14164921c fix: add || true to all read commands, disable pipefail during detect_defaults 2026-07-24 09:53:38 +00:00
c7cd5550bc fix: handle pipefail exits in detect_defaults, docker ps, and curl|jq pipelines 2026-07-24 09:48:58 +00:00
e1260ba5d3 feat: add --remove flag to install.sh for clean uninstall 2026-07-24 09:41:00 +00:00
b360ffd6af feat: add multi-OS interactive install script, update default paths to /opt/zoraxy/conf/dhcp/ 2026-07-24 09:37:08 +00:00
d1e2908fdc chore: initial commit of dhcp-lease-manager plugin 2026-07-24 09:17:04 +00:00