Provided by: manpages-nl_20051127-1_all bug

NAAM

       setuid - zet gebruiker identiteit

OVERZICHT

       #include <unistd.h>

       int setuid(uid_t uid)

BESCHRIJVING

       setuid  zet  het geldende gebruiker ID van het huidige proces.  Als het
       geldende gebruiker-id van de aanroeper root is, dan worden de echte  en
       de bewaarde gebruiker ID’s ook gezet.

       Onder   Linux   is   setuid  gebouwd  zoals  de  POSIX  versie  met  de
       _POSIX_SAVED_IDS uitrusting.  Dit status een setuid (anders  dan  root)
       programma  toe,  al zijn gebruikers privileges te laten vallen, wat on-
       gepriviligieerd werk te doen, en dan het originele geldende  gebruikers
       ID opnieuw in te zetten op een veilige manier.

       Als  de  gebruiker root is of het programma is setuid root, dan moet er
       extra opgepast worden. De setuid functie test het geldende uid  van  de
       aanroeper  en  als  het  de  superuser  is,  worden alle met het proces
       verbonden ID’s naar uid gezet.  Nadat dit heeft plaatsgevonden  is  het
       onmogelijk voor het programma om root privileges te herwinnen.

       Dus een setuid-root programma dat wenst om tijdelijk root privileges te
       laten vallen, de identiteit aan te nemen van een  niet-root  gebruiker,
       en  dan  de root privileges te herwinnen, kan setuid niet gebruiken.  U
       kunt dat voor elkaar krijgen met de (niet-POSIX, BSD) aanroep  seteuid.

TERUGGEEF WAARDE

       Bij success wordt nul teruggegeven. Bij falen wordt -1 teruggegeven, en
       errno wordt naar behoren gezet.

FOUTEN

       EPERM  {toestemming} De gebruiker is niet de  super-gebruiker,  en  uid
              kwam  niet overeen met het geldende of bewaarde gebruiker ID van
              het aanroepende proces.

VOLDOET AAN

       SVr4, SVID, POSIX.1.  Niet helemaal verenigbaar met de 4.4BSD  aanroep,
       die  de  alle  -echte,  bewaarde en geldende- gebruiker ID’s zet.  SVr4
       beschrijft een extra EINVAL fouttoestand.

LINUX-EIGEN OPMERKINGEN

       Linux gebruikt het idee van bestandsysteem-gebruiker-ID, normaal is dat
       hetzelfde  als het geldende gebruiker ID. De setuid aanroep zet ook ook
       de  bestandssysteem  gebruiker  ID  van  het   huidige   proces.    Zie
       setfsuid(2).

       Als  uid  verschillend is van het oude geldende uid, dan zal het proces
       geen core-dumps mogen achterlaten.

ZIE

       getuid(2) {krijg uid}, setreuid(2) {zet*}, seteuid(2), setfsuid(2) {zet
       bestandsysteem uid}

VERTALING

       Dit  is  een  handleiding  uit  manpages-dev  1.29.   Alles  wat tussen
       ‘{’..‘}’ staat is aanvullende vertaling, en hoort niet bij de originele
       handleiding.  Email naar <manpages-nl@nl.linux.org>.

       $Id: setuid.2,v 1.1.1.1 2004/03/21 21:02:25 cor Exp $