releasePrivileges method

void releasePrivileges()

revert uid and gid to original user's id's

Implementation

void releasePrivileges() {
  if (Shell.current.isPrivilegedUser) {
    final sUID = env['SUDO_UID'];
    final gUID = env['SUDO_GID'];

    // convert id's to integers.
    final originalUID = sUID != null ? int.tryParse(sUID) ?? 0 : 0;
    final originalGID = gUID != null ? int.tryParse(gUID) ?? 0 : 0;

    setegid(originalGID);
    seteuid(originalUID);
  }
}