⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rmadb.pas

📁 Delphi源码REAlRMSDK.rar
💻 PAS
📖 第 1 页 / 共 2 页
字号:
unit RmaDb;

interface

uses
  PnResult, PnTypes, RmaPckts;

(****************************************************************************
 *
 *  $Id: rmadb.h,v 1.9 1999/01/29 18:32:11 hboone Exp $
 *
 *  Copyright (C) 1995-1999 RealNetworks, Inc. All rights reserved.
 *
 *  http://www.real.com/devzone
 *
 *  This program contains proprietary
 *  information of Progressive Networks, Inc, and is licensed
 *  subject to restrictions on use and distribution.
 *
 *
 *  RealMedia Architecture Interface.
 *
 *)

(****************************************************************************
 *
 *  Interface:
 *
 *	IRMADatabaseManager
 *
 *  Purpose:
 *
 *	This is implemented by the database manager in order to provide
 *	access to the databases it manages.
 *
 *  IRMADatabaseManager:
 *
 *	{00002A00-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMADatabaseManager: TGUID = '{00002A00-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMADatabaseManager}

  CLSID_CRMADatabaseManager: TGUID = '{00002A00-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM CLSID_CRMADatabaseManager}

type
  IRMADatabaseManager = interface (IUnknown)
  ['{00002A00-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMADatabaseManager::GetInstanceFromID
     *	Purpose:
     *
     *	    Returns a database object configured as defined for the specifed
     *	    DatabaseID in the server config file.
     *
     *)

    function GetInstanceFromID(pBufferID: IRMABuffer; out pUnknownDatabase: IUnknown): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMADatabaseManager}

(****************************************************************************
 *
 *  Interface:
 *
 *	IRMAAuthenticationDBManagerResponse
 *
 *  Purpose:
 *
 *	A database user will implement this when it desires to manage
 *	storage for authentication data.
 *	This interface receives the results of IRMAAuthenticationDBManager
 *	methods
 *
 *  IRMAAuthenticationDBManagerResponse:
 *
 *	{00002A01-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMAAuthenticationDBManagerResponse: TGUID = '{00002A01-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMAAuthenticationDBManagerResponse}

type
  IRMAAuthenticationDBManagerResponse = interface (IUnknown)
  ['{00002A01-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMAAuthenticationDBManagerResponse::AddPrincipalDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMAAuthenticationDBManager::AddPrincipal
     *
     *)

    function AddPrincipalDone(ResultStatus: PN_RESULT; pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAAuthenticationDBManagerResponse::RemovePrincipalDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMAAuthenticationDBManager::RemovePrincipal
     *
     *)

    function RemovePrincipalDone(ResultStatus: PN_RESULT; pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAAuthenticationDBManagerResponse::SetCredentialsDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMAAuthenticationDBManager::SetCredentials
     *
     *)

    function SetCredentialsDone(ResultStatus: PN_RESULT; pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMAAuthenticationDBManagerResponse}

(****************************************************************************
 *
 *  Interface:
 *
 *	IRMAAuthenticationDBManager
 *
 *  Purpose:
 *
 *	A database plugin will implement this when it desires to provide
 *	storage for authentication data.
 *
 *  IRMAAuthenticationDBManager:
 *
 *	{00002A02-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMAAuthenticationDBManager: TGUID = '{00002A02-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMAAuthenticationDBManager}

type
  IRMAAuthenticationDBManager = interface (IUnknown)
  ['{00002A02-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMAAuthenticationDBManager::AddPrincipal
     *	Purpose:
     *
     *	    Adds the specified user to the database, if it is not already
     *	    there.
     *
     *)

    function AddPrincipal(pAuthenticationDBManagerResponseNew: IRMAAuthenticationDBManagerResponse;
      pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAAuthenticationDBManager::RemovePrincipal
     *	Purpose:
     *
     *	    Removes the specified user from the database, if it is there.
     *
     *
     *)
    function RemovePrincipal(pAuthenticationDBManagerResponseNew: IRMAAuthenticationDBManagerResponse;
      pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAAuthenticationDBManager::SetCredentials
     *	Purpose:
     *
     *	    Replaces the credentials for the specified user.
     *	    Usually the credentials are a password.
     *	    It is not the databases job to protect this data
     *	    Authentication plugins will protect this data
     *	    before storing it when neccesary.
     *
     *)

    function SetCredentials(pAuthenticationDBManagerResponseNew: IRMAAuthenticationDBManagerResponse;
      pBufferPrincipalID, pBufferCredentials: IRMABuffer): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMAAuthenticationDBManager}

(****************************************************************************
 *
 *  Interface:
 *
 *	IRMAAsyncEnumAuthenticationDBResponse
 *
 *  Purpose:
 *
 *	A database user will implement this when it desires to
 *	enumerate authentication data.
 *	This interface receives the results of IRMAAsyncEnumAuthenticationDB
 *	methods
 *
 *  IRMAAsyncEnumAuthenticationDBResponse:
 *
 *	{00002A03-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMAAsyncEnumAuthenticationDBResponse: TGUID = '{00002A03-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMAAsyncEnumAuthenticationDBResponse}

type
  IRMAAsyncEnumAuthenticationDBResponse = interface (IUnknown)
  ['{00002A03-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMAAsyncEnumAuthenticationDBResponse::ResetDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMAAsyncEnumAuthenticationDB::Reset
     *
     *)

    function ResetDone(ResultStatus: PN_RESULT): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAAsyncEnumAuthenticationDBResponse::NextDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMAAsyncEnumAuthenticationDB::Next
     *	    If successful the PrincipalID is valid.
     *
     *)

    function NextDone(ResultStatus: PN_RESULT; pBufferNextPrincipalID: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAAsyncEnumAuthenticationDBResponse::SkipDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMAAsyncEnumAuthenticationDB::Skip
     *	    If successful the PrincipalID is valid.
     *
     *)

    function SkipDone(ResultStatus: PN_RESULT; pBufferNextPrincipalID: IRMABuffer): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMAAsyncEnumAuthenticationDBResponse}

(****************************************************************************
 *
 *  Interface:
 *
 *	IRMAAsyncEnumAuthenticationDB
 *
 *  Purpose:
 *
 *	A database plugin will implement this when it desires to provide
 *	enumeration of authentication data.
 *
 *  IRMAAsyncEnumAuthenticationDB:
 *
 *	{00002A04-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMAAsyncEnumAuthenticationDB: TGUID = '{00002A04-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMAAsyncEnumAuthenticationDB}

type
  IRMAAsyncEnumAuthenticationDB = interface (IUnknown)
  ['{00002A04-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMAAsyncEnumAuthenticationDB::Reset
     *	Purpose:
     *
     *	    Call this to reset this enumerator to the beginning of the
     *	    collection.
     *
     *)

    function Reset(pAsyncEnumAuthenticationDBResponseNew: IRMAAsyncEnumAuthenticationDBResponse): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAAsyncEnumAuthenticationDB::Next
     *	Purpose:
     *
     *	    Call this to retrieve the next item in the collection.
     *
     *)

    function Next(pAsyncEnumAuthenticationDBResponseNew: IRMAAsyncEnumAuthenticationDBResponse): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAAsyncEnumAuthenticationDB::Skip
     *	Purpose:
     *
     *	    Call this to skip the next n items in the collection and
     *	    retrieve the n+1 item.
     *
     *)

    function Skip(pAsyncEnumAuthenticationDBResponseNew: IRMAAsyncEnumAuthenticationDBResponse;
      ulNumToSkip: UINT32): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAAsyncEnumAuthenticationDB::Clone
     *	Purpose:
     *
     *	    Call this to make a new enumerator of this collection.
     *
     *)

    function Clone(out pAsyncEnumAuthenticationDBNew: IRMAAsyncEnumAuthenticationDB): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMAAsyncEnumAuthenticationDB}

(****************************************************************************
 *
 *  Interface:
 *
 *	IRMAAuthenticationDBAccessResponse
 *
 *  Purpose:
 *
 *	A database user will implement this when it desires to
 *	access authentication data.
 *	This interface receives the results of IRMAAuthenticationDBAccess
 *	methods
 *
 *  IRMAAuthenticationDBAccessResponse:
 *
 *	{00002A05-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMAAuthenticationDBAccessResponse: TGUID = '{00002A05-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMAAuthenticationDBAccessResponse}

type
  IRMAAuthenticationDBAccessResponse = interface (IUnknown)
  ['{00002A05-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMAAuthenticationDBAccessResponse::ExistenceCheckDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMAAuthenticationDBAccess::ExistenceCheck
     *
     *)

    function ExistenceCheckDone(ResultStatus: PN_RESULT; pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAAuthenticationDBAccessResponse::GetCredentialsDone
     *	Purpose:
     *
     *	    Reports the success or failure of
     *	    IRMAAuthenticationDBAccess::GetCredentials
     *	    If successful the Credentials var is valid.
     *
     *)

    function GetCredentialsDone(ResultStatus: PN_RESULT; pBufferPrincipalID,
      pBufferCredentials: IRMABuffer): HRESULT; stdcall;

  end;
  {$EXTERNALSYM IRMAAuthenticationDBAccessResponse}

(****************************************************************************
 *
 *  Interface:
 *
 *	IRMAAuthenticationDBAccess
 *
 *  Purpose:
 *
 *	A database plugin will implement this when it desires to provide
 *	access to authentication data.
 *
 *  IRMAAuthenticationDBAccess:
 *
 *	{00002A06-0901-11d1-8B06-00A024406D59}
 *
 *)

const
  IID_IRMAAuthenticationDBAccess: TGUID = '{00002A06-0901-11d1-8B06-00A024406D59}';
  {$EXTERNALSYM IID_IRMAAuthenticationDBAccess}

type
  IRMAAuthenticationDBAccess = interface (IUnknown)
  ['{00002A06-0901-11d1-8B06-00A024406D59}']

    (************************************************************************
     *	Method:
     *	    IRMAAuthenticationDBAccess::_NewEnum
     *	Purpose:
     *
     *	    Call this to make a new enumerator of this collection.
     *
     *)

    function _NewEnum(out pAsyncEnumAuthenticationDBNew: IRMAAsyncEnumAuthenticationDB): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAAuthenticationDBAccess::CheckExistence
     *	Purpose:
     *
     *	    Call this to verify the existance of a principal.
     *
     *)

    function CheckExistence(pAuthenticationDBAccessResponseNew: IRMAAuthenticationDBAccessResponse;
      pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

    (************************************************************************
     *	Method:
     *	    IRMAAuthenticationDBAccess::GetCredentials
     *	Purpose:
     *
     *	    Call this to access the credentials for the specified principal.
     *
     *)

    function GetCredentials(pAuthenticationDBAccessResponseNew: IRMAAuthenticationDBAccessResponse;
      pBufferPrincipalID: IRMABuffer): HRESULT; stdcall;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -