obmedzenie na 64k UID

Miloš happz na volny.cz
Středa Únor 9 19:28:43 CET 2000


From: Jan Matis <damned na hq.alert.sk>
Date: 9. února 2000 17:52


Dobry den.


>z toho co som sa medzicasom dozvedel tak v 2.2.x koli POSIX compliant
>problem je ale vraj v 2.3.x je to uz 32bit .... najde sa kernel hacker co
>to objasni presnejsie ?


Nevi, jestli jsem zrovna kernel hacker, ale neco malo vim. jen nevim jestli
je to spravne, a tak pokud se najde nekdo s presnejsimi informacemi, dejte
mi vedet  :-)

Posledni jadra (nevim, od ktere verze) uz pouzivaji pro uid 32 bitove cislo.
Puvodne se pouzival short, coz je jenom 16 bitu. To byl prave limit 64k
uzivatelu. Od doby int a jeho 32 bitu je to nejakyjch 2 ^ 32 (4G) uzivatelu
s jedinecnym uid.

>> > filesystemy ( menovite nfs, ext2, a pripadne reiserfs)
>> >  z mojej strany no idea, totiz tymto smerom su moje vedomosti
>> >  naozaj nulove .. predstavujem si to vsak tak ze vo FS strukturach
>> >  je to uid (a podobne aj gid) njekde ulozene, cize Q: aky velky
>> >  priestor je na to vyhradeny ....
>> Tam by problem byt mohl. (No nevim...)


Tohle presne nevim, ale pokud ten fs pouziva hlavickove soubory jadra
(nektere urcite, ale ...) a v nich definici uid, tak pokud prekompilujete
nove jadro pro 4G uzivatelu, bude fs nacitat bloky a v nich hledat jenom 32
bitove uid - zbytek celeho bloku, ve kterem je uid jenom 16 bitu  (uid byva
asi jenom v tech dulezitych, bohuzel - inodu, atd.) bude posunuty
nedostanete se k datum.

>> A napadlo vas, jak udelat treba /etc/passwd pro >64k uzivatelu? :-)
>> Takove sekvencni prohlizeni, to by nebyla zadna sranda...
>pam ? a passwd v databaze alebo LDAP ? :)))))


To uz je jenom otazka stroje a spravce ;-)

Milos Prchlik



Další informace o konferenci Linux