Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 17 Mar 2013 17:46:33 +0100
From:      Pawel Jakub Dawidek <pjd@FreeBSD.org>
To:        Konstantin Belousov <kostikbel@gmail.com>
Cc:        freebsd-arch@FreeBSD.org
Subject:   Re: chflags(2)'s flags argument.
Message-ID:  <20130317164632.GI1364@garage.freebsd.pl>
In-Reply-To: <20130317162533.GT3794@kib.kiev.ua>
References:  <20130317003559.GA1364@garage.freebsd.pl> <20130317064123.GM3794@kib.kiev.ua> <20130317111112.GC1364@garage.freebsd.pl> <20130317155743.GR3794@kib.kiev.ua> <20130317162021.GG1364@garage.freebsd.pl> <20130317162533.GT3794@kib.kiev.ua>

next in thread | previous in thread | raw e-mail | index | archive | help

--ev7mvGV+3JQuI2Eo
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sun, Mar 17, 2013 at 06:25:33PM +0200, Konstantin Belousov wrote:
> On Sun, Mar 17, 2013 at 05:20:22PM +0100, Pawel Jakub Dawidek wrote:
> > On Sun, Mar 17, 2013 at 05:57:43PM +0200, Konstantin Belousov wrote:
> > > On Sun, Mar 17, 2013 at 12:11:12PM +0100, Pawel Jakub Dawidek wrote:
> > > > I know it can break API in some rare cases like in chflags(1), but =
it
> > > > results in compilation error (at least with the compilation flags we
> > > > use), so can be easly spotted and fixed, hopefully:
> > > >=20
> > > > /usr/home/pjd/p4/capkern/bin/chflags/chflags.c: In function 'main':
> > > > /usr/home/pjd/p4/capkern/bin/chflags/chflags.c:120: warning: assign=
ment from incompatible pointer type
> > > >=20
> > >=20
> > > Project aims to maintain better compatibility then to claim that
> > > the changes could be 'spotted'.
> >=20
> > Should I read this as you being against the proposed change?
>=20
> No, I do not object. But, did you considered changing the syscall argument
> to unsigned long instead ?

Well, the main reason behind this change is to make all chflags(2)
syscalls consistent. I didn't consider changing syscall argument to
unsigned long, but then I'd need to update lchflags(2) to take unsigned
long to make it consistent with others, which has the exact same
implications.

Now that I think about this, changing lchflags(2) argument to unsigned
long might be better option, because:

- It would make all those syscalls consistent with strtofflags(3) and
  fflagstostr(3).

- It would decrease the risk of possible breakage, as lchflags(2) is
  rarely used.

--=20
Pawel Jakub Dawidek                       http://www.wheelsystems.com
FreeBSD committer                         http://www.FreeBSD.org
Am I Evil? Yes, I Am!                     http://tupytaj.pl

--ev7mvGV+3JQuI2Eo
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (FreeBSD)

iEYEARECAAYFAlFF82gACgkQForvXbEpPzRvxwCfXDczTJTta1E81k0//4aONOyq
CNcAoM+o5+jscnGRgejEWfzmLbTjxU2z
=X6V/
-----END PGP SIGNATURE-----

--ev7mvGV+3JQuI2Eo--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130317164632.GI1364>