• src/ssh/test/test_auth.c

    From Deuc¨@VERT to Git commit to main/sbbs/master on Wed Mar 25 00:49:07 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/a9b8ad269a7a66caf2f395f3
    Modified Files:
    src/ssh/test/test_auth.c
    Log Message:
    ssh-auth.c coverage: defensive, client, and edge-case tests (23 new)

    Defensive/edge-case tests (11):
    - Server with NULL username_out parameters
    - get_methods with zero-size and small buffer
    - FAILURE response with DEL char in method names
    - 4/8/9-byte method names that don't match none/password/publickey
    - Password change callback returning NULL prompt
    - Publickey auth with algo name > 64 bytes (truncation)
    - Banner with no language field
    - get_methods small buffer (copylen truncation)

    Client-side failure tests (12):
    - SERVICE_REQUEST and get_methods send failures
    - Password CHANGEREQ: callback error and send failure
    - KBI initial send and recv failures
    - Publickey: no key, pubkey fail, sign fail, send fail, recv fail
    - Publickey with BANNER before auth response

    ssh-auth.c missed branches: 71  62 (77.9%  80.6%).

    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wed Mar 25 00:49:07 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/ebbad235a958da5195d88084
    Modified Files:
    src/ssh/test/test_auth.c
    Log Message:
    ssh-auth.c coverage: server send-fail + edge cases (13 new tests)

    Server send-failure tests for password-change and publickey-with-sig:
    - Password change: success/changereq/failure send failures
    - Publickey with bad signature: verify-fail send failure
    - Publickey accepted: success send failure
    - Publickey rejected after valid sig: failure send failure

    Defensive/edge-case tests:
    - Tiny/short SERVICE_REQUEST (payload <= 5 bytes)
    - PASSWD_CHANGEREQ with no language field / truncated lang data
    - KBI with empty response (response_lens[i] == 0)

    ssh-auth.c missed branches: 55  30 (83.3%  90.6%).

    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Tue Mar 24 20:58:43 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/8b18695f8e548d3476877ad5
    Modified Files:
    src/ssh/test/test_auth.c
    Log Message:
    ssh-auth.c coverage: server send-failure tests (12 new tests)

    Use pipe-close technique: after client sends the auth request, close
    the s2c pipe so the server's response send_packet fails. Each test
    covers a specific send path in auth_server_impl:

    - SERVICE_ACCEPT send failure
    - none auth: success/failure send
    - password auth: success/failure/no-callback/changereq send
    - publickey: no-callback/probe-ok/probe-rejected/unknown-algo send
    - unknown method: failure send

    ssh-auth.c missed branches: 93  71 (71.8%  77.9%).

    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net