From nobody Tue May 06 22:02:11 2025 X-Original-To: dev-commits-src-all@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 4ZsXS42kdpz5vWQQ; Tue, 06 May 2025 22:02:12 +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 4ZsXS40Cbcz3NYL; Tue, 06 May 2025 22:02:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1746568932; 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=fRvhT2kRvsgrHNPsi74vGgzM2Zf4XHP7IODcbRr0EcU=; b=cUfaS4+cNIYBClFKAY96/GoYrPzaO+RkDArlEoRkPFQRagpoB+ZOTJNfYLmicWuz3NBjHR /xYIXmWjSkZxcGLFZltCzzRc+Fsh33ubY3tp9dEtsl0s1spzvyz0M+GyMCxdQMeb/EHIc9 /mVmzT6Yf2TqWZi2Tfqfznp2ta4zLFWfZlh9L/kmjBP+zJp3ZcuJywGpYh/FPIFiz16gPh 4Jt5srkrs0g7ZBH8OBihCvQG9fz7mwuIWrVh+Gvny0lE0gam/QKPw5M4qbuZTBEtyoejUC 7gKSIVwk8ys2obxzQeNG1wmRCLH2EajIv2TcnL8l34GohioKL83+uxSq9CTfUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1746568932; 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=fRvhT2kRvsgrHNPsi74vGgzM2Zf4XHP7IODcbRr0EcU=; b=b5T6pO3BworKqrF4iSFsODEVDtaPVGe0t2LgP2eAiLNS5CzfeoU5rdb1XlmgWAASJyY0e/ 3qayLc7nAmHOu/pHXRfWL2SpRgD3xUb9Ec07MGT+b0oG/SHjr6iizZZ+7mAtmXYDUzVNVP zSVMrQLh2xFd1kfQ/n83Mqk+C54/I5R7nFJHoKIqvNoKFBTzfN9QzFyQf4xO8cpLfegBdN c8i/935vZERDpCpk+Lxb70YPyAlk900c3n7Pvyzlx1/Jfi51/aNGZaex1WQ2IczOi7VUVT owjN6GKv73oX2FmxivdoP9stPwmcVEkrG2odZnvz3QP5u3X8JOYhRXJJMog2VQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1746568932; a=rsa-sha256; cv=none; b=m0KP696KPS29fcAgKU22oSV5RVIZRkq35bXslQJKDAWy1BI/qT2hPL0tLD9zpjUVQI7gER EiYX71n/rrPN6pu7aJgc6xzJ7YFt2R7NkK8ZPdpzksF+AvjrHcZcpV5RwYNPNGa7gF3lZs w63Nw9wvrtomQHEqIEM/zx0gEomNaLUEStgnWI0n9O5CldYd5eAveWRqy7jk3A5zVh+1VX i0l1u/LMLqDBM4nT6b4sqi5nUFkXWXcHpB0VraIRfWAHj5I3zhf7rfCF3tk6Y7+AGFVQST KtGlEtKChmFni6f3NiwHOgsG6LqP7KnMPvjUvAyl0BnQSZ2uLH2It2UQSxSzww== ARC-Authentication-Results: i=1; mx1.freebsd.org; none 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 4ZsXS36kGmz1H7c; Tue, 06 May 2025 22:02:11 +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 546M2Bk1041771; Tue, 6 May 2025 22:02:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 546M2B5X041754; Tue, 6 May 2025 22:02:11 GMT (envelope-from git) Date: Tue, 6 May 2025 22:02:11 GMT Message-Id: <202505062202.546M2B5X041754@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: f8aa0ee8d017 - main - devinfo: Introduce function for printing indent List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f8aa0ee8d017a276d22521fa7c809aa0f3349be2 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=f8aa0ee8d017a276d22521fa7c809aa0f3349be2 commit f8aa0ee8d017a276d22521fa7c809aa0f3349be2 Author: ktullavik AuthorDate: 2024-10-17 15:37:44 +0000 Commit: Warner Losh CommitDate: 2025-05-06 22:01:45 +0000 devinfo: Introduce function for printing indent When libxo is added we want the whole indentation to be printed in a single call. Otherwise the html will be spammed with indentation tags. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1480 --- usr.sbin/devinfo/devinfo.c | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/usr.sbin/devinfo/devinfo.c b/usr.sbin/devinfo/devinfo.c index 4ca417368514..306d752e884e 100644 --- a/usr.sbin/devinfo/devinfo.c +++ b/usr.sbin/devinfo/devinfo.c @@ -31,7 +31,8 @@ * Print information about system device configuration. */ -#include +#include + #include #include #include @@ -57,6 +58,20 @@ struct indent_arg void *arg; }; + +static void +print_indent(int n) +{ + static char buffer[1024]; + + if (n < 1) + return; + n = MIN((size_t)n, sizeof(buffer) - 1); + memset(buffer, ' ', n); + buffer[n] = '\0'; + printf("%s", buffer); +} + /* * Print a resource. */ @@ -86,14 +101,12 @@ print_device_matching_resource(struct devinfo_res *res, void *arg) { struct indent_arg *ia = (struct indent_arg *)arg; struct devinfo_dev *dev = (struct devinfo_dev *)ia->arg; - int i; if (devinfo_handle_to_device(res->dr_device) == dev) { /* in 'detect' mode, found a match */ if (ia->indent == 0) return(1); - for (i = 0; i < ia->indent; i++) - printf(" "); + print_indent(ia->indent); print_resource(res); printf("\n"); } @@ -107,7 +120,7 @@ int print_device_rman_resources(struct devinfo_rman *rman, void *arg) { struct indent_arg *ia = (struct indent_arg *)arg; - int indent, i; + int indent; indent = ia->indent; @@ -117,8 +130,7 @@ print_device_rman_resources(struct devinfo_rman *rman, void *arg) print_device_matching_resource, ia) != 0) { /* there are, print header */ - for (i = 0; i < indent; i++) - printf(" "); + print_indent(indent); printf("%s:\n", rman->dm_desc); /* print resources */ @@ -155,12 +167,11 @@ static int print_device(struct devinfo_dev *dev, void *arg) { struct indent_arg ia; - int i, indent; + int indent; if (vflag || (dev->dd_name[0] != 0 && dev->dd_state >= DS_ATTACHED)) { indent = (int)(intptr_t)arg; - for (i = 0; i < indent; i++) - printf(" "); + print_indent(indent); print_dev(dev); printf("\n"); if (rflag) {