Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 12 Apr 1998 22:24:19 -0700
From:      Dima Dorfman <webmaster@zwb.net>
To:        freebsd-questions@FreeBSD.ORG
Subject:   Re: more than 32k users
Message-ID:  <3.0.5.32.19980412222419.00933dd0@207.213.224.25>
In-Reply-To: <3.0.32.19980413005259.011936b0@peace.com.my>

next in thread | previous in thread | raw e-mail | index | archive | help
At 12:30 AM 4/13/98 +0800, you wrote:
>Sorry, this just makes me wonder :
>
>If yahoo is using FreeBSD for its services (and I presume
>that that is its free email service), how could they ramp
>up to millions of users all supposedly on the same machine
>(since everyone has the email address : user@yahoo.com).
>
>I'm sure they're using IMAPd (beats DB programming for 
>managing folders etc) so they would have had to get around
>any limit on the number of users on a machine.
>
>As for disk-space, my mind boggles. 
>
>chas
>
>
>
>>On Apr 11,  8:56pm, Steve Hovey wrote:
>>} Subject: more than 32k users
>>> 
>>> I know this has been asked before, but Ill be dipped if I can find the
>>> answer.
>>> 
>>> Is it possible to increase the maximum number of unix ids over 32k so that
>>> one can have over 32k users in /etc/passwd?
>>
>>>From looking at the header files I see that uid_t (the data type
>>used to represent the UID in the kernel and elsewhere) is an unsigned
>>32 bit integer meaning that this is possible in theory as long as
>>no programs have assumed anything about the size of uid_t.  pwd_mkdb
>>doesn't like UID's > USHRT_MAX, but will allow you to use them.
>>
>>I have created a user with UID = 100000, and it certainly doesn't
>>break anything instaneously :)
>>
>>[root@ginseng /etc]# tail -1 /etc/passwd 
>>foo:*:100000:100000:Niall Smart,Somewhere
>Someplace:/home/nsmart:/usr/local/bin/zsh
>>[root@ginseng /etc]# su foo
>>[foo@ginseng /etc]$ id
>>uid=100000(foo) gid=100000 groups=100000
>>
>>You might like to ask in -hackers about this,  if you're in an
>>environment where you can experiment with this then I'd so go ahead
>>and try it.
>>
>>Beware that any programs which do not use uid_t portably (i.e.
>>assume it can only go up to 65536) will probably have security
>>problems if you use uid's > 65536 because the variable they
>>store the UID in will wrap around.
>>
>>So, in summary, there is nothing preventing this on the kernel
>>side and correctly written programs should handle it, but be
>>careful - try and find someone else who is doing this! :)
>>
>>Niall
>>
>>-- 
>>Niall Smart.  Microsoft Suck.  See www.freebsd.org for details.
>>echo "#define if(x) if(!(x))" >> /usr/include/stdio.h
>>
>>To Unsubscribe: send mail to majordomo@FreeBSD.org
>>with "unsubscribe freebsd-questions" in the body of the message
>>
>>
>
>To Unsubscribe: send mail to majordomo@FreeBSD.org
>with "unsubscribe freebsd-questions" in the body of the message
>
>

---
Thanks!
Dima Dorfman - dima@zwb.net

"640k ought to be enough for anybody." - Bill Gates, 1981 - Bill Gates


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message



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