|
Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com |
From: Rodrigo Barbosa (aka morcego) (rodrigob
CONECTIVA.COM.BR)Date: Tue Feb 13 2001 - 18:27:14 CST
On Mon, Feb 12, 2001 at 01:12:02PM -0500, gabriel rosenkoetter wrote:
> On Sun, Feb 11, 2001 at 12:38:02AM +0100, Flatline wrote:
> > When crontab has determined the name of the user calling crontab (using
> > getpwuid()),
> > the login name is stored in a 20 byte buffer using the strcpy() function
> > (which does no bounds checking). 'useradd' (the utility used to add users
> > to the system)
> > however allows usernames of over 20 characters (32 at most on my distribution).
> >
> > Therefore, running crontab as a user whose login name exceeds 20 characters
> > crashes it.
>
> Then your useradd is broken and doing improper bounds checking.
>
> I'm not sure why Vixie chose 20 characters, but it should be enough,
> since usernames longer than 8 characters should not be expected to
> behave properly. (They system won't know they're unique.) This is a
> POSIX thing, last I heard.
Hummm, not exactly. Last time I checked, there where lots of systems that
allowed usernames to be 32 chars long.
GLIBC implementation (at least on version 2.2 and 2.1.3 from cvs) allow it.
Quick check:
#include <wtmpx.h>
main () {
printf("%d\n",__UT_NAMESIZE);
}
or, if your system does not have wtmpx.h
#include <wtmp.h>
main () {
printf("%d\n",UT_NAMESIZE);
}
If anyone can find any system that reports less then 32, it will be an exception
of the rule. Of course I mean current systems. libc5 systems, AIX 3.2 and old
systems like that will probably return 16 or even 8.
[]s
-- Rodrigo Barbosa (morcego) - rodrigob at conectiva.com.br Conectiva R&D Team - http://distro.conectiva.com.br "Quis custodiet ipsos custodiet?" - http://www.conectiva.com
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.4 (GNU/Linux) Comment: For info see http://www.gnupg.org
iD8DBQE6idDin5NdOMMM/nERAncWAKCsWHnjrwknxS1dxFIWALUoyVsdkgCgmi0F Tjejk7lBxwgj70JFzB7o+ts= =PIPr -----END PGP SIGNATURE-----
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]