Sous-routine ukeyset_activate

Objectif

Active un jeu de clés utilisateur et renvoie l'ensemble de clés utilisateur précédemment actif.

Bibliothèque

Bibliothèque C standard (libc.a)

Syntaxe

#include <sys/ukeys.h>

ukeyset_t ukeyset_activate (set, command)
ukeyset_t set;
int command;

Descriptif

La sous-routine ukeyset_activate modifie le jeu de clés utilisateur actuellement actif et renvoie le jeu de clés utilisateur précédemment actif. UKEY_PUBLIC est toujours activé pour la lecture et l'écriture.

Dans les systèmes POWER6, le sous-programme " ukeyset_activate est mis en œuvre par le biais d'un lien spécial. Le couplage exécute également un appel système à accès rapide. L'exécution d'un appel système Fast-Path a pour conséquence que la variable globale errno n'est pas mise à jour en cas d'erreurs. A la place, le sous-programme ignore certaines erreurs. Par exemple, les tentatives de suppression ou d'ajout de la valeur UKEY_PUBLIC sont ignorées et, si elle n'est pas ignorée, la sous-routine renvoie la valeur UKSET_INVALID .

Dans les systèmes POWER7, la sous-routine " ukeyset_activate est gérée par un millicode à faible mémoire car le registre de masque d'autorité (AMR) est accessible en mode utilisateur. La manière dont la variable globale errno et les erreurs sont traitées n'est pas modifiée.

Attention: Appel de cette sous-routine dans un système qui ne prend pas en charge les clés de stockage ou dont les clés d'utilisateur sont désactivées dans un signal SIGILL.

Paramètres

Tableau 1. Paramètres
Article Descriptif
Ensemble Jeu de clés utilisateur.
Commande L'un des éléments suivants
  • UKA_REPLACE_KEYS -Remplace l'ensemble de clés avec l'ensemble de clés spécifié.
  • UKA_ADD_KEYS -Ajoute l'ensemble de clés spécifié à l'ensemble de clés en cours.
  • UKA_REMOVE_KEYS -Supprime l'ensemble de clés spécifié de l'ensemble de clés actif.
  • UKA_GET_KEYS -lit la valeur de l'ensemble de clés en cours sans mettre à jour l'ensemble de clés en cours. Le jeu de clés d'entrée est ignoré.

Valeurs renvoyées

En cas de réussite, la sous-routine ukeyset_activate renvoie l'ensemble de clés utilisateur précédemment actif. S'il est appelé avec la commande UKA_GET_KEYS , il s'agit également du jeu de clés actif en cours. En cas d'échec, l'ensemble de clés ukeyset_activate renvoie une valeur de UKSET_INVALID.

Codes d'erreur

La sous-routine ukeyset_activate ne met pas à jour errno en cas d'échec.

Informations connexes

Sous-routine ukey_enable .