uadmin(2)                                                            uadmin(2)


NAME
     uadmin - administrative control

SYNOPSIS
     #include <sys/uadmin.h>

     int uadmin(int cmd, int fcn, int mdep);

DESCRIPTION
     uadmin provides control for basic administrative functions.  This system
     call is tightly coupled to the system administrative procedures and is
     not intended for general use.  The argument mdep is provided for
     machine-dependent use and is not defined here.

     As specified by cmd, the following commands are available:

     A_SHUTDOWN     The system is shut down.  All user processes are killed,
                    the buffer cache is flushed, and the root file system (and
                    no other) is unmounted.  The action to be taken after the
                    system has been shut down is specified by fcn.  The
                    functions are generic; the hardware capabilities vary on
                    specific machines.

                    AD_HALT     Halt the system.

                    AD_BOOT     Reboot the system.

                    AD_IBOOT    Interactive reboot; the system goes to
                                firmware mode and the user is prompted for
                                bootable program name.  Not supported; it is
                                treated the same as AD_HALT.

                    AD_POWEROFF Halt the processor and turn off the power with
                                A_REBOOT or A_SHUTDOWN.  With A_SETFLAG,
                                simply sets the flag so that a subsequent
                                A_SHUTDOWN or A_REBOOT also powers off.

     A_REBOOT       The system stops immediately without any further
                    processing.  The action to be taken next is specified by
                    fcn as above.

     A_REMOUNT      The root file system is mounted again after having been
                    fixed.  This should be used only during the startup
                    process.

     A_KILLALL      All processes are killed except those belonging to the
                    process group specified by fcn.  They are sent the signal
                    specified by mdep.

     A_SETFLAG      Set a flag to control later actions.  Currently
                    implemented only for AD_POWEROFF.


     uadmin fails if any of the following are true:

     EPERM          The calling process does not have super-user privilege.

DIAGNOSTICS
     Upon successful completion, the value returned depends on cmd as follows:

          A_SHUTDOWN   Never returns.
          A_REBOOT     Never returns.
          A_REMOUNT    0
          A_KILLALL    0

     Otherwise, a value of -1 is returned and errno is set to indicate the
     error.

CAPABILITIES
     Require the following in the permitted capability set:

     CAP_SHUTDOWN   Privilege to shutdown or reboot the system.

SEE ALSO
     syssgi(2), uadmin(1), capabilities(4).


                                                                        Page 2