From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from list by lists.gnu.org with archive (Exim 4.90_1) id 1lHyFn-0004aU-PO for mharc-grub-devel@gnu.org; Thu, 04 Mar 2021 19:23:39 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:51804) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lHyFi-0004OK-28 for grub-devel@gnu.org; Thu, 04 Mar 2021 19:23:35 -0500 Received: from mail-qt1-x830.google.com ([2607:f8b0:4864:20::830]:44755) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lHyFW-0006UG-4p for grub-devel@gnu.org; Thu, 04 Mar 2021 19:23:33 -0500 Received: by mail-qt1-x830.google.com with SMTP id b19so418124qto.11 for ; Thu, 04 Mar 2021 16:23:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=efficientek-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=67tELQmYXjII3zxmdvNOXPe3+GVxAFqpIsZc482qPDA=; b=cf/9VhXbalGr4mv4SvPwQRbnT6y3xTmIXNc/uzjNJE99Mfg2ml4iHecBV52OlO+fYg oFPTrYSCt7acW1xW6OBOVDhNNOy6/2amuma/Y3CmnrflBurcSKsiC0F7ROUZdEzQC/qO nBrMWQW7WxDDsqjadMnBXt/gDk3pWnUzldYJEd4znrJuDyi5LwcQIy1Rd3mgwO2NtGud yU0gvS/38yangO1VgYTRBcPs+n6q3BCwztuXzH314hNEYkUouHoVAhe/f+UBbUpk9p6V PPkLoN7MBoMHnRvWE1QeG4FLq+1GJo743JfC1jCkvnllfAj6z2sTgttfFasgmXObI+ml fJwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=67tELQmYXjII3zxmdvNOXPe3+GVxAFqpIsZc482qPDA=; b=Ir9zZf985KXSQLKIwK9uG0EnW0RtGyGuoO4dfuRMcZFaks1KqJvOUhODOMnC+30Bg9 y6Fgl+O0V4hRMOB89lSPj3ieHNnYnrqxevcr/zx3iSw+sJSVJ3WrulJdGsZUCs3jZ3tZ MT4TuwsuAX1qsLqtlHNGBwG8qefwr0vVt/pyrffCRmEg5gminD/+qh8S3KD+ACFBprG7 OCfHTvjA1BUf6E44KlLqC9Ob2GmMfImORlaPycAWi6CLVSm7RoZGDkvQbwD+KtKUtEE8 JK4cqm3UDfIcXjhb65yhTK51u7WbCoGPLgdaxoTKAFUuGyzS7x+bswl5Qn+cJ10Llg/9 M0Zg== X-Gm-Message-State: AOAM5313YAlJrSCuXQRn56Nw1p6MtjRu+0gnYxT62sAcX0le2LMJfAj9 g8XAbXZ8oijCfdEiDUXXYAHbUDrPsTvFJA== X-Google-Smtp-Source: ABdhPJwZ+ssAmAELuqPzo5mtx2NMR3T9K61OzqW0n+OeyAmT/b8uvAFzhKUD/8AsIhznsIuk5cNq3w== X-Received: by 2002:a05:622a:28d:: with SMTP id z13mr6456185qtw.87.1614903798932; Thu, 04 Mar 2021 16:23:18 -0800 (PST) Received: from localhost.localdomain ([2605:a601:aac5:3700:9763:81c2:19e4:8a8f]) by smtp.gmail.com with ESMTPSA id 75sm674558qkd.114.2021.03.04.16.23.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 Mar 2021 16:23:18 -0800 (PST) From: Glenn Washburn To: grub-devel@gnu.org, Daniel Kiper Cc: Glenn Washburn Subject: [PATCH v6 13/14] error: Do compile-time format string checking on grub_error Date: Thu, 4 Mar 2021 18:22:44 -0600 Message-Id: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=2607:f8b0:4864:20::830; envelope-from=development@efficientek.com; helo=mail-qt1-x830.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 05 Mar 2021 00:23:36 -0000 This should help prevent format string errors and thus improve the quality of error reporting. Signed-off-by: Glenn Washburn --- include/grub/err.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/include/grub/err.h b/include/grub/err.h index 24ba9f5f5..b08d5d0de 100644 --- a/include/grub/err.h +++ b/include/grub/err.h @@ -85,7 +85,8 @@ struct grub_error_saved extern grub_err_t EXPORT_VAR(grub_errno); extern char EXPORT_VAR(grub_errmsg)[GRUB_MAX_ERRMSG]; -grub_err_t EXPORT_FUNC(grub_error) (grub_err_t n, const char *fmt, ...); +grub_err_t EXPORT_FUNC(grub_error) (grub_err_t n, const char *fmt, ...) + __attribute__ ((format (GNU_PRINTF, 2, 3))); void EXPORT_FUNC(grub_fatal) (const char *fmt, ...) __attribute__ ((noreturn)); void EXPORT_FUNC(grub_error_push) (void); int EXPORT_FUNC(grub_error_pop) (void); -- 2.27.0