util-linux.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sami Kerola <kerolasa@iki.fi>
To: util-linux@vger.kernel.org
Cc: kerolasa@iki.fi
Subject: [PATCH 4/5] dmesg: inform user when klogctl() or read_buffer() fails
Date: Wed, 25 Jul 2012 21:15:44 +0200	[thread overview]
Message-ID: <1343243745-1172-27-git-send-email-kerolasa@iki.fi> (raw)
In-Reply-To: <1343243745-1172-1-git-send-email-kerolasa@iki.fi>

Fix to small regression which made 'dmesg --clear' not to error
when running without root privileges.  Same happen with '-D' and
few other options as well.

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
---
 sys-utils/dmesg.c | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/sys-utils/dmesg.c b/sys-utils/dmesg.c
index 1819c7c..15b9fae 100644
--- a/sys-utils/dmesg.c
+++ b/sys-utils/dmesg.c
@@ -985,7 +985,7 @@ static int read_kmsg(struct dmesg_control *ctl)
 int main(int argc, char *argv[])
 {
 	char *buf = NULL;
-	ssize_t  n;
+	ssize_t  n, r;
 	int  c;
 	int  console_level = 0;
 	static struct dmesg_control ctl = {
@@ -1138,6 +1138,7 @@ int main(int argc, char *argv[])
 	argc -= optind;
 	argv += optind;
 	n = 0;
+	r = 0;
 
 	if (argc > 1)
 		usage(stderr);
@@ -1158,9 +1159,9 @@ int main(int argc, char *argv[])
 		if (ctl.method == DMESG_METHOD_KMSG && init_kmsg(&ctl) != 0)
 			ctl.method = DMESG_METHOD_SYSLOG;
 
-		n = read_buffer(&ctl, &buf);
-		if (n > 0)
-			print_buffer(&ctl, buf, n);
+		r = read_buffer(&ctl, &buf);
+		if (r > 0)
+			print_buffer(&ctl, buf, r);
 		if (!ctl.mmap_buff)
 			free(buf);
 		break;
@@ -1180,8 +1181,10 @@ int main(int argc, char *argv[])
 	if (ctl.kmsg >= 0)
 		close(ctl.kmsg);
 
-	if (n < 0 && ctl.method == DMESG_METHOD_SYSLOG)
+	if (n < 0)
 		err(EXIT_FAILURE, _("klogctl failed"));
+	if (r < 0)
+		err(EXIT_FAILURE, _("read_buffer failed"));
 
 	return EXIT_SUCCESS;
 }
-- 
1.7.11.3


  parent reply	other threads:[~2012-07-25 19:16 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-25 19:15 [PATCH 0/27] preparation to release some time soon Sami Kerola
2012-07-25 19:15 ` [PATCH 1/3] tests: partx changed default output format Sami Kerola
2012-07-26 10:07   ` Karel Zak
2012-07-25 19:15 ` [PATCH 2/3] tests: look: add words file Sami Kerola
2012-07-26 10:08   ` Karel Zak
2012-07-25 19:15 ` [PATCH 3/3] tests: fdisk: change expected test output Sami Kerola
2012-07-26 10:32   ` Karel Zak
2012-07-25 19:15 ` [PATCH 01/19] mkswap: fix shadow declaration Sami Kerola
2012-07-26 10:32   ` Karel Zak
2012-07-25 19:15 ` [PATCH 02/19] libmount: " Sami Kerola
2012-07-26 10:33   ` Karel Zak
2012-07-25 19:15 ` [PATCH 03/19] sulogin: " Sami Kerola
2012-07-26 10:34   ` Karel Zak
2012-07-25 19:15 ` [PATCH 04/19] blkid: " Sami Kerola
2012-07-26 10:35   ` Karel Zak
2012-07-25 19:15 ` [PATCH 05/19] lslocks: " Sami Kerola
2012-07-25 19:15 ` [PATCH 06/19] whereis: " Sami Kerola
2012-07-25 19:15 ` [PATCH 07/19] eject: " Sami Kerola
2012-07-25 19:15 ` [PATCH 08/19] lscpu: " Sami Kerola
2012-07-25 19:15 ` [PATCH 09/19] setterm: " Sami Kerola
2012-07-25 19:15 ` [PATCH 10/19] more: " Sami Kerola
2012-07-25 19:15 ` [PATCH 11/19] ul: " Sami Kerola
2012-07-25 19:15 ` [PATCH 12/19] hexdump: " Sami Kerola
2012-07-25 19:15 ` [PATCH 13/19] include: define format to be constant in xasprintf() Sami Kerola
2012-07-25 19:15 ` [PATCH 14/19] fdisk: add noreturn function attribute Sami Kerola
2012-07-25 19:15 ` [PATCH 15/19] libblkid: " Sami Kerola
2012-07-25 19:15 ` [PATCH 16/19] libmount: " Sami Kerola
2012-07-25 19:15 ` [PATCH 17/19] vipw: " Sami Kerola
2012-07-25 19:15 ` [PATCH 18/19] script: add noreturn function attributes Sami Kerola
2012-07-25 19:15 ` [PATCH 19/19] more: add noreturn function attribute Sami Kerola
2012-07-25 19:15 ` [PATCH 1/5] ddate: russian manual missing from package Sami Kerola
2012-07-25 19:15 ` [PATCH 2/5] docs: clean up sulogin.8 manual Sami Kerola
2012-07-25 19:15 ` [PATCH 3/5] wdctl: fix conflicting types on old systems Sami Kerola
2012-07-25 19:15 ` Sami Kerola [this message]
2012-07-25 19:15 ` [PATCH 5/5] docs: tell about irc channel Sami Kerola
2012-07-26 10:07 ` [PATCH 0/27] preparation to release some time soon Karel Zak
2012-07-26 12:16 ` Karel Zak

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1343243745-1172-27-git-send-email-kerolasa@iki.fi \
    --to=kerolasa@iki.fi \
    --cc=util-linux@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).