From 423249b9d1fa786e2b413f53e088ebe179acb502 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Deuc=D0=B5?= <shurd@sasktel.net>
Date: Fri, 3 Jan 2025 16:19:02 -0500
Subject: [PATCH] Annotate intentional "missing locks"

---
 src/syncterm/ssh.c  | 2 ++
 src/uifc/uifc_ini.c | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/src/syncterm/ssh.c b/src/syncterm/ssh.c
index 1da43bbecf..597ad6252c 100644
--- a/src/syncterm/ssh.c
+++ b/src/syncterm/ssh.c
@@ -917,6 +917,8 @@ ssh_connect(struct bbslist *bbs)
 		uifc.pop(NULL);
 		uifc.pop("Getting SSH Channel");
 	}
+	// Using ssh_channel outside of ssh_mutex (which doesn't exist yet)
+	/* coverity[missing_lock] */
 	status = cryptGetAttribute(ssh_session, CRYPT_SESSINFO_SSH_CHANNEL, &ssh_channel);
 	if (cryptStatusError(status) || ssh_channel == -1) {
 		free(pubkey);
diff --git a/src/uifc/uifc_ini.c b/src/uifc/uifc_ini.c
index 42c09aba7f..683dd80feb 100644
--- a/src/uifc/uifc_ini.c
+++ b/src/uifc/uifc_ini.c
@@ -34,6 +34,8 @@ void read_uifc_ini(const char* path, uifcapi_t* uifc, int* ciolib_mode, enum tex
 	uifc->esc_delay = iniReadInteger(fp, section, "esc_delay", uifc->esc_delay);
 	if (ciolib_mode != NULL)
 		*ciolib_mode = iniReadInteger(fp, section, "ciolib_mode", *ciolib_mode);
+	// No vstatlock around ciolib_initial_scaling because the lock shouldn't exist yet
+	/* coverity[missing_lock] */
 	ciolib_initial_scaling = iniReadFloat(fp, section, "scaling", ciolib_initial_scaling);
 
 	if (fp != NULL)
-- 
GitLab