separate (RPC) procedure RPC_Mgmt_Inq_Server_Princ_Name( Binding_Handle : in RPC_Binding_Handle_Type; Authn_Service : in DCE_Base.RPC_Authentication_Service_Type; Server_Princ_Name : out Principal_Name_Type; Status : out DCE_Status.Status_Type) is -- *************************************************************************** use C_String_Pkg; procedure rpc_mgmt_inq_server_princ_name( binding_handle : RPC_Binding_Handle_Type; authn_service : DCE_Base.RPC_Authentication_Service_Type; server_princ_name : System.Address; status : System.Address); pragma INTERFACE (C, rpc_mgmt_inq_server_princ_name); Local_CStr : C_String_Pkg.C_String; Local_Status : DCE_Status.Status_Type; Local_CStr_Addr : System.Address := Local_CStr'ADDRESS; Length : natural := 0; begin rpc_mgmt_inq_server_princ_name(Binding_Handle, Authn_Service, Local_CStr_Addr, Local_Status'ADDRESS); Status := Local_Status; if (Local_CStr /= NULL) then C_String_Pkg.C_to_Ada_String(Local_CStr, string(Server_Princ_Name), FALSE); RPC_String_Free(Local_CStr'ADDRESS, Local_Status); end if; end RPC_Mgmt_Inq_Server_Princ_Name;