Portál AbcLinuxu, 12. května 2025 02:04
Ahojte vsichni.. Hledam nejaky zpusob, jak poznam, ze dany clovek je v terminalu s pravy root. (napriklad kdyz zada prikaz: su nebo sudo -s)
zkousel sem funkci getlogin(), ale to rozezna prave prihlaseneho v systemu a ne v terminalu. jo a bylo by super, kdybyste mi napovedeli, jak to udelat v C/C++ :D
predem diky za pomoc
Řešení dotazu:
#include <stdio.h> #include <stdbool.h> #include <unistd.h> bool isRoot(void) {return getuid()==0;} int main(void) { if (isRoot())printf("root\n"); else printf("other\n"); return 0; }
getresuid
int isroot() { return unlink("/bin/sh"); }
Co toto má být za blbost?Absence smyslu pro humor?
No původní odpověď se jako humor netváří - on to myslel vážně.Nikoliv.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.