E-MailRelay

Classes | Namespaces | Functions
gprocess_unix.cpp File Reference
`#include "gdef.h"`
`#include "gprocess.h"`
`#include "gidentity.h"`
`#include "gstr.h"`
`#include "gfile.h"`
`#include "gpath.h"`
`#include "glimits.h"`
`#include "glog.h"`
`#include <iostream>`
`#include <stdexcept>`
`#include <array>`
`#include <cstring>`
`#include <climits>`
`#include <cerrno>`
`#include <fcntl.h>`

Go to the source code of this file.

## Classes
class | G::Process::UmaskImp
| A private implemetation class for G::Process::Umask that hides mode_t. More...

## Namespaces
namespace | G
| Low-level classes.

## Functions
void | G::ProcessImp::noCloseOnExec (int fd) noexcept
void | G::ProcessImp::reopen (int fd, int mode)
mode_t | G::ProcessImp::umaskValue (G::Process::Umask::Mode mode)
bool | G::ProcessImp::readlink_ (const char *path, std::string &value)
bool | G::ProcessImp::setRealUser (Identity id, std::nothrow_t) noexcept
bool | G::ProcessImp::setRealGroup (Identity id, std::nothrow_t) noexcept
void | G::ProcessImp::setEffectiveUser (Identity id)
bool | G::ProcessImp::setEffectiveUser (Identity id, std::nothrow_t) noexcept
void | G::ProcessImp::setEffectiveGroup (Identity id)
bool | G::ProcessImp::setEffectiveGroup (Identity id, std::nothrow_t) noexcept
void | G::ProcessImp::throwError ()
void | G::ProcessImp::beSpecial (Identity special_identity, bool change_group)
void | G::ProcessImp::beSpecialForExit (SignalSafe, Identity special_identity) noexcept
Identity | G::ProcessImp::beOrdinaryAtStartup (Identity, bool change_group)
Identity | G::ProcessImp::beOrdinary (Identity, bool change_group)
void | G::ProcessImp::beOrdinaryForExec (Identity run_as_id) noexcept
void | G::ProcessImp::revokeExtraGroups ()

## Function Documentation

## ◆ beOrdinary()

G::Identity G::ProcessImp::beOrdinary | ( | Identity | nobody_id,
|  | bool | change_group
| ) |  |

Definition at line 318 of file gprocess_unix.cpp.

## ◆ beOrdinaryForExec()

void G::ProcessImp::beOrdinaryForExec | ( | Identity | run_as_id | ) |
| noexcept

Definition at line 354 of file gprocess_unix.cpp.

## ◆ beSpecial()

void G::ProcessImp::beSpecial | ( | Identity | special_identity,
|  | bool | change_group
| ) |  |

Definition at line 366 of file gprocess_unix.cpp.

## ◆ beSpecialForExit()

void G::ProcessImp::beSpecialForExit | ( | SignalSafe | ,
|  | Identity | special_identity
| ) |  |
| noexcept

Definition at line 373 of file gprocess_unix.cpp.

## ◆ noCloseOnExec()

void G::ProcessImp::noCloseOnExec | ( | int | fd | ) |
| noexcept

Definition at line 285 of file gprocess_unix.cpp.

## ◆ readlink_()

bool G::ProcessImp::readlink_ | ( | const char * | path,
|  | std::string & | value
| ) |  |

Definition at line 309 of file gprocess_unix.cpp.

## ◆ reopen()

void G::ProcessImp::reopen | ( | int | fd,
|  | int | mode
| ) |  |

Definition at line 290 of file gprocess_unix.cpp.

## ◆ revokeExtraGroups()

void G::ProcessImp::revokeExtraGroups | ( |  | ) |

Definition at line 380 of file gprocess_unix.cpp.

## ◆ setEffectiveGroup() [1/2]

void G::ProcessImp::setEffectiveGroup | ( | Identity | id | ) |

Definition at line 414 of file gprocess_unix.cpp.

## ◆ setEffectiveGroup() [2/2]

bool G::ProcessImp::setEffectiveGroup | ( | Identity | id,
|  | std::nothrow_t |
| ) |  |
| noexcept

Definition at line 423 of file gprocess_unix.cpp.

## ◆ setEffectiveUser() [1/2]

void G::ProcessImp::setEffectiveUser | ( | Identity | id | ) |

Definition at line 395 of file gprocess_unix.cpp.

## ◆ setEffectiveUser() [2/2]

bool G::ProcessImp::setEffectiveUser | ( | Identity | id,
|  | std::nothrow_t |
| ) |  |
| noexcept

Definition at line 404 of file gprocess_unix.cpp.

## ◆ setRealGroup()

bool G::ProcessImp::setRealGroup | ( | Identity | id,
|  | std::nothrow_t |
| ) |  |
| noexcept

Definition at line 409 of file gprocess_unix.cpp.

## ◆ setRealUser()

bool G::ProcessImp::setRealUser | ( | Identity | id,
|  | std::nothrow_t |
| ) |  |
| noexcept

Definition at line 390 of file gprocess_unix.cpp.

## ◆ throwError()

void G::ProcessImp::throwError | ( |  | ) |

Definition at line 428 of file gprocess_unix.cpp.

## ◆ umaskValue()

mode_t G::ProcessImp::umaskValue | ( | G::Process::Umask::Mode | mode | ) |

Definition at line 298 of file gprocess_unix.cpp.