mirror of
https://github.com/reactos/reactos.git
synced 2024-09-10 21:04:26 +00:00
![Amine Khaldi](/assets/img/avatar_default.png)
* Create a branch for some evul shell experiments. svn path=/branches/shell-experiments/; revision=61927
58 lines
1.2 KiB
C
58 lines
1.2 KiB
C
/*
|
|
* COPYRIGHT: See COPYING in the top level directory
|
|
* PROJECT: ReactOS WinSock 2 DLL
|
|
* FILE: include/catalog.h
|
|
* PURPOSE: Service Provider Catalog definitions
|
|
*/
|
|
|
|
#ifndef __CATALOG_H
|
|
#define __CATALOG_H
|
|
|
|
typedef struct _CATALOG_ENTRY
|
|
{
|
|
LIST_ENTRY ListEntry;
|
|
ULONG ReferenceCount;
|
|
CRITICAL_SECTION Lock;
|
|
UNICODE_STRING LibraryName;
|
|
HMODULE hModule;
|
|
WSAPROTOCOL_INFOW ProtocolInfo;
|
|
PWINSOCK_MAPPING Mapping;
|
|
LPWSPSTARTUP WSPStartup;
|
|
WSPDATA WSPData;
|
|
WSPPROC_TABLE ProcTable;
|
|
} CATALOG_ENTRY, *PCATALOG_ENTRY;
|
|
|
|
extern LIST_ENTRY Catalog;
|
|
|
|
|
|
VOID ReferenceProviderByPointer(
|
|
PCATALOG_ENTRY Provider);
|
|
|
|
VOID DereferenceProviderByPointer(
|
|
PCATALOG_ENTRY Provider);
|
|
|
|
PCATALOG_ENTRY CreateCatalogEntry(
|
|
LPWSTR LibraryName);
|
|
|
|
INT DestroyCatalogEntry(
|
|
PCATALOG_ENTRY Provider);
|
|
|
|
PCATALOG_ENTRY LocateProvider(
|
|
LPWSAPROTOCOL_INFOW lpProtocolInfo);
|
|
|
|
PCATALOG_ENTRY LocateProviderById(
|
|
DWORD CatalogEntryId);
|
|
|
|
INT LoadProvider(
|
|
PCATALOG_ENTRY Provider,
|
|
LPWSAPROTOCOL_INFOW lpProtocolInfo);
|
|
|
|
INT UnloadProvider(
|
|
PCATALOG_ENTRY Provider);
|
|
|
|
VOID CreateCatalog(VOID);
|
|
|
|
VOID DestroyCatalog(VOID);
|
|
|
|
#endif /* __CATALOG_H */
|