Skip to content

Feature/radius auth and refactor - #1

Merged
iQSol merged 6 commits into
mainfrom
feature/radius-auth-and-refactor
Jul 8, 2026
Merged

Feature/radius auth and refactor#1
iQSol merged 6 commits into
mainfrom
feature/radius-auth-and-refactor

Conversation

@iQSol

@iQSol iQSol commented Jul 7, 2026

Copy link
Copy Markdown
Owner

No description provided.

iQSol added 4 commits July 7, 2026 10:49
- Add RADIUS (udp/radsec) auth backend via pyrad2 with bcrypt-hashed local
  fallback and legacy sha512 rehashing (est_handler, secureserver)
- Add Database user CRUD (insert/update user, password update) and db_update tool
- Strengthen CSR identity binding (CN/DNS/IP set-equality, SAN type checks)
- Expand test suite (esthandler, helper, database, csr_fixtures)
- Remove bundled CA handlers (certifier/openssl/xca/mscertsrv) and stale
  CI workflows / wf_data fixtures; refresh docs and Docker example

Assisted by LLM
Runs the unittest suite on push to main and all PRs (ubuntu-latest,
Python 3.12). A separate non-blocking pylint job reports the score
without gating CI; PYTHONPATH=. resolves est_proxy imports (no setup.py).

Assisted by LLM
- helper.py: move ALLOWED_SUBJECT_OIDS and CSR_EXTENSION_NAMES to module top, near imports
- helper.py/est_handler.py: condense verbose comment blocks to terse one/two-liners, match house style
- est_handler.py: replace "Fallback will be dropped" dev note with a concrete explanation
- pytest.yml: remove the non-blocking pylint job, leaving only pytest

Assisted by LLM.
- est_handler.py: drop misleading "to bcrypt" from deprecated-hash rehash warning
- test_esthandler.py: add _udp_client / _radius_send tests (udp + radsec coroutine paths)
- test_esthandler.py: add _check_csr_data cases (no CN, multi-value IP/DNS SAN match, reenroll DNS mismatch)
- test_esthandler.py: rewrite test_068 __init__ default-cfg_file case; fix path/type in test_029; correct many stale docstrings
- test_helper.py: cover equal_content_list (equal/differ) and get_cn_and_san with no CN
- csr_fixtures.py: clarify build_csr_bad_signature docstring to match actual byte-flip behavior

Assisted by LLM
@iQSol
iQSol force-pushed the feature/radius-auth-and-refactor branch from fa6141f to c4c3870 Compare July 8, 2026 11:33
iQSol added 2 commits July 8, 2026 13:41
- CHANGES.md: changelog for 0.1.0 (initial RFC 7030 EST proxy, CA handlers,
  Docker) and 0.2.0 (RADIUS auth backend, DB user management, CSR hardening)
- release.yml: tag-triggered pipeline building the Docker image and publishing
  a GitHub Release with the compressed image tarball

Assisted by LLM
- database.py: log an info line inside each migration guard (auth_backend
  column add, certificates FK rebuild) so messages appear only on real change
- database.py: drop the redundant unconditional "dbversion set to N" log
- db_update.py: report "dbversion updated X -> Y" or "already up to date"
  instead of unconditional before/after version lines
- test_database.py: assert per-migration logs fire on migration and are
  absent on a no-op run
- test_db_update_tool.py: new tests covering both wrapper branches

Assisted by LLM
@iQSol
iQSol merged commit fb315f2 into main Jul 8, 2026
1 check passed
@iQSol
iQSol deleted the feature/radius-auth-and-refactor branch July 8, 2026 12:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant