View Ticket
2026-06-07
19:47 Closed ticket [04c5fb8449]: tls::status -local does not work anymore plus 3 other changes artifact: 0dc76ede3c user: bohagan
2026-05-17
19:06 Ticket [04c5fb8449]: 5 changes artifact: bfd7fc6b38 user: bohagan
17:52
Fix typo preventing "tls::status -local" option from working. Fix for issue [04c5fb844986b09a] check-in: 085e10e8ba user: bohagan tags: trunk, main
2026-05-04
11:04 New ticket [04c5fb8449] tls::status -local does not work anymore. artifact: 0321699555 user: anonymous

Ticket Hash: 04c5fb844986b09a28ae849e0abb12d7270f1f93
Title: tls::status -local does not work anymore
Status: Closed Type: Code Defect
Severity: Important Priority: Immediate
Subsystem: Resolution: Fixed
Last Modified: 2026-06-07 19:47:01
7.7 days ago
Created: 2026-05-04 11:04:53
42.1 days ago
Version Found In: 2.0
User Comments:
anonymous added on 2026-05-04 11:04:53:
tls::status sock558d240d7860
success 'peername {} sbits 256 cipher ECDHE-RSA-CHACHA20-POLY1305 verifyResult ok verifyMode {} verifyDepth -1 alpn {} protocol TLSv1.2 signatureHashAlgorithm undefined signatureType undefined'

tls::status -local sock558d240d7860
error 'wrong # args: should be "tls::status ?-local? channel"': wrong # args: should be "tls::status ?-local? channel"
wrong # args: should be "tls::status ?-local? channel"
    while executing
"tls::status -local sock558d240d7860"
    invoked from within
"catch $line error"

The issue seems to be a wrongly placed ! for strcmp in StatusObjCmd():

    if (objc < 2 || objc > 3 || (objc == 3 && !strcmp(Tcl_GetString(objv[1]), "-local"))) {
        Tcl_WrongNumArgs(interp, 1, objv, "?-local? channel");
        return TCL_ERROR;
    }

when it should be

    if (objc < 2 || objc > 3 || (objc == 3 && strcmp(Tcl_GetString(objv[1]), "-local"))) {
        Tcl_WrongNumArgs(interp, 1, objv, "?-local? channel");
        return TCL_ERROR;
    }

bohagan added on 2026-05-17 19:06:03:
Should be fixed in commit [085e10e8ba66d8c1].

bohagan added on 2026-06-07 19:47:01:

Fixed, no reported occurrence.