版權所有 © 2014 tutorialspoint
add_key - 將金鑰新增到核心的金鑰管理功能
#include <keyutils.h> key_serial_t add_key(const char *type, const char *description, const void *payload, size_t plen, key_serial_t keyring);
add_key() 請求核心建立或更新給定型別和描述的金鑰,使用長度為plen的有效負載對其進行例項化,並將其附加到指定的金鑰環並返回其序列號。
如果金鑰格式錯誤或以其他方式無效,則金鑰型別可能會拒絕資料。
如果目標金鑰環已包含與指定的型別和描述匹配的金鑰,則如果金鑰型別支援,則將更新該金鑰,而不是建立新金鑰;否則,將建立一個新金鑰,並且它將取代金鑰環中對現有金鑰的連結。
目標金鑰環序列號可以是呼叫者具有寫入許可權的有效金鑰環的序列號,也可以是特殊的金鑰環 ID。
核心金鑰管理程式碼中提供了許多金鑰型別,這些型別可以指定給此函式。
成功時,add_key() 返回其建立或更新的金鑰的序列號。發生錯誤時,將返回值-1,並且 errno 將設定為相應的錯誤。
雖然這是一個 Linux 系統呼叫,但它不存在於libc中,而是在libkeyutils中找到。連結時,應向連結器指定-lkeyutils。
keyctl (1)
keyctl (2)
request_key (2)
廣告