Уже запущенному процессу требуется привилегированная инструкция, например, с использованием опции сокета SO_RCVBUFFORCE. Этот процесс выполняется как обычный пользовательский процесс.
Как дать возможность / разрешение этому процессу? Настройки файловых возможностей все еще мечта?
Я попробовал утилиту /usr/sbin/setpcaps
из пакета libcap и API cap_set_proc()
, но в системе заблокирована возможность CAP_SETPCAP
(устаревшая система, основанная на Fedora 4 с ядром 2.6.20), поэтому она может не предоставлять / удалять возможности для процесса, отличного от себя.
Подумал об установке временного uid root для этого процесса, но есть ли способ изменить эффективный UID внешнего, уже запущенного процесса?
Функции setuid()
/ seteuid()
/ ... могут просто изменять текущий процесс (который вызывает функцию).