LsarLookupPrivilegeDisplayName (Opnum 33)

The LsarLookupPrivilegeDisplayName method is invoked to map the name of a privilege into a display text string in the caller's language.

 NTSTATUS LsarLookupPrivilegeDisplayName(
   [in] LSAPR_HANDLE PolicyHandle,
   [in] short ClientLanguage,
   [in] short ClientSystemDefaultLanguage,
   [out] PRPC_UNICODE_STRING* DisplayName,
   [out] unsigned short* LanguageReturned

PolicyHandle: An RPC context handle obtained from either LsarOpenPolicy or LsarOpenPolicy2.

Name: A string containing the name of a privilege.

ClientLanguage: An identifier of the client's language.

ClientSystemDefaultLanguage: An identifier of the default language of the caller's machine.

DisplayName: Used to return the display name of the privilege in the language pointed to by the LanguageReturned value.

LanguageReturned: An identifier of the language in which DisplayName was returned.

Return Values: The following is a summary of the return values that an implementation MUST return, as specified by the message processing that follows.

Return value/code




The request was successfully completed.



The caller does not have the permissions to perform this operation.



One or more of the supplied parameters was invalid.



The supplied LUID is not recognized by the server.



PolicyHandle is not a valid handle.


This method takes six arguments:

PolicyHandle: An open handle to the policy object. If the handle is not a valid context handle to the policy object or PolicyHandle.HandleType does not equal "Policy", the server MUST return STATUS_INVALID_HANDLE. The server MUST verify that PolicyHandle grants access as specified in section with RequiredAccess set to POLICY_LOOKUP_NAMES.

Name: A string name of the privilege. The server MUST attempt to locate the entry with the same name in the data store specified in section If the entry cannot be located, the server MUST return STATUS_NO_SUCH_PRIVILEGE.

ClientLanguage: A numerical identifier of the language in which the caller wishes to receive the display name. The server MUST try to locate the privilege description in the language that is identified by this parameter. If the data store does not have this language, the server MUST try the next parameter.

ClientSystemDefaultLanguage: An identifier of the default language of the caller. This might be different than the ClientLanguage parameter. If the data store does not have the description in the previous language, the server MUST try to find the description in this language.

DisplayName: Used to return the description of the privilege. If neither ClientLanguage nor ClientSystemDefaultLanguage can be found, the server MUST return the description in the server's own language.

LanguageReturned: Used to return the language ID of DisplayName. This might be different from the language ID that was requested.