sudo

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 14, 2026 License: GPL-3.0 Imports: 7 Imported by: 0

Documentation

Overview

Package sudo узнаёт, от чьего имени tt запущен через sudo.

На Linux режиму tun нужны права root, и tt запускают через sudo. Но настройки и секреты лежат у того, кто его вызвал, а не у root, и браузер для капчи тоже должен открыться у него. Пакет отвечает на один вопрос — кто этот человек — и нужен config (каталог настроек, владелец записанных файлов) и captcha (браузер от его имени). См. plan-e4.md, P1.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type User

type User struct {
	Name    string
	Uid     uint32
	Gid     uint32
	Groups  []uint32 // дополнительные группы; без них — только Gid
	HomeDir string
}

User — пользователь, вызвавший sudo.

func Invoker

func Invoker() (*User, error)

Invoker возвращает пользователя, вызвавшего sudo, или nil, если tt запущен не через sudo: без прав root, root'ом напрямую или на Windows, где sudo нет и Geteuid возвращает -1. Ошибка — sudo есть, но пользователя найти не удалось; молча подставлять вместо него root нельзя: настройки окажутся не те, а браузер откроется от имени root.

Ответ не меняется за время жизни процесса и считается один раз.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL