View Ticket
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.8 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.