Module Process::UID
In: process.c

The Process::UID module contains a collection of module functions which can be used to portably get, set, and switch the current process’s real, effective, and saved user IDs.

Methods

Public Instance methods

Change the current process’s real and effective user ID to that specified by integer. Returns the new user ID. Not available on all platforms.

   [Process.uid, Process.euid]          #=> [0, 0]
   Process::UID.change_privilege(31)    #=> 31
   [Process.uid, Process.euid]          #=> [31, 31]

Returns the effective user ID for this process.

   Process.euid   #=> 501
eid=(p1)

Alias for grant_privilege

Set the effective user ID, and if possible, the saved user ID of the process to the given integer. Returns the new effective user ID. Not available on all platforms.

   [Process.uid, Process.euid]          #=> [0, 0]
   Process::UID.grant_privilege(31)     #=> 31
   [Process.uid, Process.euid]          #=> [0, 31]

Exchange real and effective user IDs and return the new effective user ID. Not available on all platforms.

   [Process.uid, Process.euid]   #=> [0, 31]
   Process::UID.re_exchange      #=> 0
   [Process.uid, Process.euid]   #=> [31, 0]

Returns true if the real and effective user IDs of a process may be exchanged on the current platform.

Returns the (real) user ID of this process.

   Process.uid   #=> 501

Returns true if the current platform has saved user ID functionality.

Switch the effective and real user IDs of the current process. If a block is given, the user IDs will be switched back after the block is executed. Returns the new effective user ID if called without a block, and the return value of the block if one is given.

To view or add comments on this documentation, please go to the API wiki.

[Validate]