kkey_assign_private カーネル・サービス

目的

カーネル・キーの秘密割り当てを要求します。

構文

#include <sys/types.h>
#include <sys/skeys.h>
#include <sys/kerrno.h>
kerrno_t kkey_assign_private (id, instance, flags, kkey)
char *id;
long instance;
unsigned long flags;
kkey_t *kkey;

パラメーター

項目 説明
id ヌル終了ストリングを指定します。 kkey_assign_privateカーネル・サービスは、秘密鍵を割り当てるために文字列値を使用する。 これには通常、呼び出し側カーネル・サブシステムに関連付けられたロード・モジュール名が含まれますが、任意の固有ストリングを指定できます。
インスタンス (instance) サブシステムによって要求される秘密鍵ごとに固有の番号を指定します。 これは、0 から始まり、要求されたカーネル・キーごとに増加する整数値でなければなりません。
flags このパラメーターはゼロに指定する必要があります。
KKEY 返された割り当て済みカーネル・キーが含まれます。 有効なポインターは、4バイト・アラインド・アドレス(kkey_tのナチュラル・アライメント)でなければならない。

説明

kkey_assign_privateカーネル・サービスは、呼び出し元にプライベート・カーネル鍵を割り当てる。 秘密カーネル・キーは、外部カーネル・コードによってデータのアクセス可能性を制限するために使用されます。 kkey_assign_privateカーネル・サービスは、プライベート・カーネル鍵の要求を所定の範囲(KKEY_PRIVATE11からKKEY_PRIVATE32まで)に分散する。 この目的は、複数のカーネル・サブシステムによる要求の代わりに均一分散を実行することです。 割り当てはidインスタンス・パラメーターに基づいて行われ、複数の呼び出し元に同じ秘密鍵を返すかもしれない。 インスタンス番号が異なる場合は、同じ秘密鍵が返されることもあります。

kkey_assign_privateカーネル・サービスはリソース割り当てを実行しない。 これは、データ保護に使用する推奨カーネル・キーのみを提供します。

実行環境

kkey_assign_privateカーネル・サービスは、プロセス環境からのみ呼び出すことができる。

戻り値

項目 説明
0 正常に完了したことを示します。
アインヴァル・キーの割り当て専用 パラメーターまたは実行環境が無効であることを示します。