From nobody Tue Jun 3 04:07:44 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4bBHHP3SR2z5xxrB; Tue, 03 Jun 2025 04:07:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4bBHHP0wpCz3hql; Tue, 03 Jun 2025 04:07:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1748923665; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V2poVpIsYMEmXGYigWU9z4y/wDbvYJGzohIk/D3Wazk=; b=YyJsNK5FKZzknbjVvL5I/PeVFITh27B/y36WE1/YpZBV/CXkSLO/72iDWTCC+mljbHjBKe hCQ2YzGHy87UKQhE3ADJoZXWg3LzrpRTRaszPiQwZGkAxA/+hQYHwHWKyIXPpxQu+rlzFl WaSWknvkg9ywZDNqXhiaS/QkGV49d81EDbbERiZnjhaW4OsdiosgXQOU4rwfAyc4MaQFit /Az1mBOhdeLimU8kQxdJMjTQQrfdFs4/4VRT8xq65hEgFfyR0R/MSlrnm83Nj21A5dAcZA cAlWaHsoJOb2+4WRdx6xO3BJQ4C9DhkMfflv3L27Tjekqh1pogGYimSq9O3FEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1748923665; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V2poVpIsYMEmXGYigWU9z4y/wDbvYJGzohIk/D3Wazk=; b=bi7zF1yd0QGOvnq5zHwcg3o7g0mpHR2Dgu1782sNp1Z6cyNQ+BKWCgM/gdVsBXhKyBF5c4 dZ8VyIdwisYqK5LM+YhkDI2h8wOnk2GF+kK1GBDhd1qsT8R2ur73M3+zsSiBc2xvnCDADo lM1+6YBE0y7o32ejiy9Bn85hbue9rjHVGBCCPNkAZcNIPfHXeNNObIHB4rSd4DRGPtPSMy hrf9hnjt9K0ylUWbB86dBWR5tqqXcucY6NeTVcdr4UiN2xdM7YnFr9eX72pirOlgpdVd2a doqtqw/jQszeie93yqgXXmpCvInyC333/S6O5hQPfw6INN80R7os93PERY8tPw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1748923665; a=rsa-sha256; cv=none; b=oClK+WWb0je5cgk8ZLoZcW/Ht2OR1IudE/91ga2CNwbFFJgsBNU0RrX7/OFoFa+RcUHqGP Ax443JJG5fu4p79JryLNdNKwIqvoFWgYOXRZdUPSdKEONwkyi6abRto3hCbR2mqP0ezh7h EQxJVsR8ezY8FGSpFVkCUZ94Y2plGWf5FfujkbCpRBDxFJ3adXy0HwNkSiHYQBMaP7g1Du Fsgd5kM4TRymEg0WembF6PEg/fg78z2/OQx13nvB7LzKNJsNr0uvQ3lAzS02GbgwknKnLx 2l8Di5WtVJgTVRZ8P60BRfYLXGlPY2Fj78M/HsBtG9IZhHpHANevqG8+xjQqHA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4bBHHP05VPz6rx; Tue, 03 Jun 2025 04:07:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 55347iWS071351; Tue, 3 Jun 2025 04:07:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 55347iAF071348; Tue, 3 Jun 2025 04:07:44 GMT (envelope-from git) Date: Tue, 3 Jun 2025 04:07:44 GMT Message-Id: <202506030407.55347iAF071348@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: e26f3836d4e1 - main - kdump(1): Use static array for header types string literals List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e26f3836d4e129c77e28854e9f84874a92723ac2 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=e26f3836d4e129c77e28854e9f84874a92723ac2 commit e26f3836d4e129c77e28854e9f84874a92723ac2 Author: Konstantin Belousov AuthorDate: 2025-05-31 22:51:20 +0000 Commit: Konstantin Belousov CommitDate: 2025-06-03 02:47:38 +0000 kdump(1): Use static array for header types string literals Also change sprintf() to snprintf(). Reviewed by: brooks Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D50633 --- usr.bin/kdump/kdump.c | 73 +++++++++++++++++---------------------------------- 1 file changed, 24 insertions(+), 49 deletions(-) diff --git a/usr.bin/kdump/kdump.c b/usr.bin/kdump/kdump.c index d45a0cba2005..a8f3df14f304 100644 --- a/usr.bin/kdump/kdump.c +++ b/usr.bin/kdump/kdump.c @@ -663,6 +663,25 @@ dumptimespec(struct ktr_header *kth) } } +static const char * const hdr_names[] = { + [KTR_SYSCALL] = "CALL", + [KTR_SYSRET] = "RET ", + [KTR_NAMEI] = "NAMI", + [KTR_GENIO] = "GIO ", + [KTR_PSIG] = "PSIG", + [KTR_CSW] = "CSW ", + [KTR_USER] = "USER", + [KTR_STRUCT] = "STRU", + [KTR_STRUCT_ARRAY] = "STRU", + [KTR_SYSCTL] = "SCTL", + [KTR_CAPFAIL] = "CAP ", + [KTR_FAULT] = "PFLT", + [KTR_FAULTEND] = "PRET", + [KTR_ARGS] = "ARGS", + [KTR_ENVS] = "ENVS", + [KTR_EXTERR] = "EERR", +}; + static void dumpheader(struct ktr_header *kth, u_int sv_flags) { @@ -671,56 +690,12 @@ dumpheader(struct ktr_header *kth, u_int sv_flags) const char *arch; const char *type; - switch (kth->ktr_type) { - case KTR_SYSCALL: - type = "CALL"; - break; - case KTR_SYSRET: - type = "RET "; - break; - case KTR_NAMEI: - type = "NAMI"; - break; - case KTR_GENIO: - type = "GIO "; - break; - case KTR_PSIG: - type = "PSIG"; - break; - case KTR_CSW: - type = "CSW "; - break; - case KTR_USER: - type = "USER"; - break; - case KTR_STRUCT: - case KTR_STRUCT_ARRAY: - type = "STRU"; - break; - case KTR_SYSCTL: - type = "SCTL"; - break; - case KTR_CAPFAIL: - type = "CAP "; - break; - case KTR_FAULT: - type = "PFLT"; - break; - case KTR_FAULTEND: - type = "PRET"; - break; - case KTR_ARGS: - type = "ARGS"; - break; - case KTR_ENVS: - type = "ENVS"; - break; - case KTR_EXTERR: - type = "EERR"; - break; - default: - sprintf(unknown, "UNKNOWN(%d)", kth->ktr_type); + if (kth->ktr_type < 0 || (size_t)kth->ktr_type >= nitems(hdr_names)) { + snprintf(unknown, sizeof(unknown), "UNKNOWN(%d)", + kth->ktr_type); type = unknown; + } else { + type = hdr_names[kth->ktr_type]; } /*