From: "Ulrich Windl" <Ulrich.Windl@rz.uni-regensburg.de>
To: linux-kernel@vger.kernel.org
Cc: trivial@rustcorp.com.au, Paul Gortmaker <p_gortmaker@yahoo.com>
Subject: Re: [PATCH] 2.4.19 do_adjtimex parameter checking
Date: Thu, 21 Mar 2002 16:22:27 +0100 [thread overview]
Message-ID: <3C9A08C2.13553.1CBE6CD@localhost> (raw)
In-Reply-To: <3C99E2E2.30DCCF46@yahoo.com>
On 21 Mar 2002, at 8:40, Paul Gortmaker wrote to me:
> Spotted by Tajthy.Tamas @ datentechnik.hu:
>
> Adjtimex modes may contain other bits set in addition to
> ADJ_OFFSET_SINGLESHOT bits, and hence tests for strict (in)equality
> are not appropriate - must test for ADJ_OFFSET_SINGLESHOT
> bits set in modes. Three places in the code where this test
> is made - oddly enough the 3rd is already correct.
Hello,
masters of the bits,
basically no: adjtimex() is either adjtime() or ntp_adjtime or
ntp_gettime(). While one could think to set multiple bit combinations,
it was never intended. At the user level adjtimex() should never have
existed. This patch would open a new incompatible use of adjtimex() by
blessing what was illegal before IMHO.
ADJ_OFFSET_SINGLESHOT has be be used alone, specifically also to return
the correct return value.
Regards,
Ulrich
>
>
> --- linux/kernel/time.c~ Thu Feb 28 09:37:32 2002
> +++ linux/kernel/time.c Thu Mar 21 08:27:49 2002
> @@ -216,7 +216,7 @@
>
> /* Now we validate the data before disabling interrupts */
>
> - if (txc->modes != ADJ_OFFSET_SINGLESHOT && (txc->modes & ADJ_OFFSET))
> + if (((txc->modes & ADJ_OFFSET_SINGLESHOT) != ADJ_OFFSET_SINGLESHOT) && (txc->modes & ADJ_OFFSET))
> /* adjustment Offset limited to +- .512 seconds */
> if (txc->offset <= - MAXPHASE || txc->offset >= MAXPHASE )
> return -EINVAL;
> @@ -275,7 +275,7 @@
> }
>
> if (txc->modes & ADJ_OFFSET) { /* values checked earlier */
> - if (txc->modes == ADJ_OFFSET_SINGLESHOT) {
> + if ((txc->modes & ADJ_OFFSET_SINGLESHOT) == ADJ_OFFSET_SINGLESHOT) {
> /* adjtime() is independent from ntp_adjtime() */
> time_adjust = txc->offset;
> }
>
>
next parent reply other threads:[~2002-03-21 15:36 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <3C99E2E2.30DCCF46@yahoo.com>
2002-03-21 15:22 ` Ulrich Windl [this message]
2002-03-24 10:14 ` [PATCH] 2.4.19 do_adjtimex parameter checking Paul Gortmaker
2002-03-25 7:45 ` Ulrich Windl
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=3C9A08C2.13553.1CBE6CD@localhost \
--to=ulrich.windl@rz.uni-regensburg.de \
--cc=linux-kernel@vger.kernel.org \
--cc=p_gortmaker@yahoo.com \
--cc=trivial@rustcorp.com.au \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.