2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS WinSock 2 DLL
4 * FILE: include/catalog.h
5 * PURPOSE: Service Provider Catalog definitions
11 typedef struct _CATALOG_ENTRY
15 CRITICAL_SECTION Lock
;
16 UNICODE_STRING LibraryName
;
18 WSAPROTOCOL_INFOW ProtocolInfo
;
19 PWINSOCK_MAPPING Mapping
;
20 LPWSPSTARTUP WSPStartup
;
22 WSPPROC_TABLE ProcTable
;
23 } CATALOG_ENTRY
, *PCATALOG_ENTRY
;
25 extern LIST_ENTRY Catalog
;
28 VOID
ReferenceProviderByPointer(
29 PCATALOG_ENTRY Provider
);
31 VOID
DereferenceProviderByPointer(
32 PCATALOG_ENTRY Provider
);
34 PCATALOG_ENTRY
CreateCatalogEntry(
37 INT
DestroyCatalogEntry(
38 PCATALOG_ENTRY Provider
);
40 PCATALOG_ENTRY
LocateProvider(
41 LPWSAPROTOCOL_INFOW lpProtocolInfo
);
43 PCATALOG_ENTRY
LocateProviderById(
44 DWORD CatalogEntryId
);
47 PCATALOG_ENTRY Provider
,
48 LPWSAPROTOCOL_INFOW lpProtocolInfo
);
51 PCATALOG_ENTRY Provider
);
53 VOID
CreateCatalog(VOID
);
55 VOID
DestroyCatalog(VOID
);
57 #endif /* __CATALOG_H */