Я работаю над созданием приложения, которое должно использовать группу ключей для обмена некоторыми конфиденциальными данными между процессами с разными владельцами. Каждый раз, когда я пытаюсь получить доступ к связке ключей группы (например, «@ g») с помощью команды keyctl или базового API, я получаю сообщение об ошибке.
Я предполагаю, что мне нужно установить какое-то состояние, чтобы он знал который из моих групп, для которых нужно получить связку ключей, но документация по этой функции ядра скудна. Кто-нибудь знает, как заставить его работать в группах?
Групповой брелок уже реализован? Этого не было пару лет назад, и даже исходный файл ядра 3.2.9 security/keys/keyctl.c
показывает это:
case KEY_REQKEY_DEFL_GROUP_KEYRING:
default:
ret = -EINVAL;
goto error;
}
и keyctl
На странице руководства (в Fedora 16) говорится:
(*) Group specific keyring: @g or -6
This is a place holder for a group specific keyring, but is not actually implemented yet in the kernel.