lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 17 Aug 2010 23:05:31 +0900 (JST)
From:	Atsushi Nemoto <anemo@....ocn.ne.jp>
To:	mcuos.com@...il.com
Cc:	geert@...ux-m68k.org, akpm@...ux-foundation.org,
	a.zummo@...ertech.it, linux-kernel@...r.kernel.org
Subject: Re: rtc/m41t80: use rtc_valid_tm() to check returned tm

On Fri, 13 Aug 2010 09:43:38 +0800, Wan ZongShun <mcuos.com@...il.com> wrote:
> 2010/8/13 Geert Uytterhoeven <geert@...ux-m68k.org>:
> >> -       return 0;
> >> +       return rtc_valid_tm(t);
> >
> > warning: passing argument 1 of ‘rtc_valid_tm’ from incompatible pointer type
> >
> > `t' is of type `struct rtc_wkalrm *', not `struct rtc_time *'.
> > Probably the intention was:
> >
> >        return rtc_valid_tm(&t->time);
> 
> Okay, thank you point this warning.
> 
> Andrew ,
> 
> Could you please fix this warning directly for me?
> 'return rtc_valid_tm(t)' should be insteaded by 'return
> rtc_valid_tm(&t->time);'.

No, t->time does not contain complete date/time.  It just holds some
alarm settings and -1 for some fields.

So rtc_valid_tm(&t->time) will always returns -EINVAL.
The correct fix would be just reverting rtc_valid_tm here.

------------------------------------------------------
From: Atsushi Nemoto <anemo@....ocn.ne.jp>
Subject: [PATCH] rtc: m41t80: do not use rtc_valid_tm in m41t80_rtc_read_alarm

The commit b485fe5ea ("rtc/m41t80: use rtc_valid_tm() to check
returned tm") added rtc_valid_tm to m41t80_rtc_read_alarm() but it was
wrong while the t->time does not contain complete date/time.

This patch also fix a warning:
warning: passing argument 1 of ‘rtc_valid_tm’ from incompatible pointer type

Signed-off-by: Atsushi Nemoto <anemo@....ocn.ne.jp>
---
 drivers/rtc/rtc-m41t80.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/rtc/rtc-m41t80.c b/drivers/rtc/rtc-m41t80.c
index 66377f3..d60557c 100644
--- a/drivers/rtc/rtc-m41t80.c
+++ b/drivers/rtc/rtc-m41t80.c
@@ -364,7 +364,7 @@ static int m41t80_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *t)
 	t->time.tm_isdst = -1;
 	t->enabled = !!(reg[M41T80_REG_ALARM_MON] & M41T80_ALMON_AFE);
 	t->pending = !!(reg[M41T80_REG_FLAGS] & M41T80_FLAGS_AF);
-	return rtc_valid_tm(t);
+	return 0;
 }
 
 static struct rtc_class_ops m41t80_rtc_ops = {

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ