source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/pnrpdef.h@ 1180

Last change on this file since 1180 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 2.2 KB
Line 
1/**
2 * This file is part of the mingw-w64 runtime package.
3 * No warranty is given; refer to the file DISCLAIMER within this package.
4 */
5
6#include <winapifamily.h>
7
8#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
9
10#if defined (PNRP_USE_V1_API) && defined (PNRP_USE_V2_API)
11#error either define PNRP_USE_V1_API, or PNRP_USE_V2_API
12#endif
13
14#if !defined (PNRP_USE_V1_API) && !defined (PNRP_USE_V2_API)
15#if _WIN32_WINNT >= 0x0600
16#define PNRP_USE_V2_API
17#else
18#define PNRP_USE_V1_API
19#endif
20#endif
21
22#define PNRP_MAX_ENDPOINT_ADDRESSES (10)
23#define PNRP_MAX_EXTENDED_PAYLOAD_BYTES (0x1000)
24
25#define WSZ_SCOPE_GLOBAL L"GLOBAL"
26#define WSZ_SCOPE_SITELOCAL L"SITELOCAL"
27#define WSZ_SCOPE_LINKLOCAL L"LINKLOCAL"
28
29typedef enum _PNRP_SCOPE {
30 PNRP_SCOPE_ANY = 0,
31 PNRP_GLOBAL_SCOPE = 1,
32 PNRP_SITE_LOCAL_SCOPE = 2,
33 PNRP_LINK_LOCAL_SCOPE = 3
34} PNRP_SCOPE,*PPNRP_SCOPE;
35
36typedef enum _PNRP_CLOUD_STATE {
37 PNRP_CLOUD_STATE_VIRTUAL = 0,
38 PNRP_CLOUD_STATE_SYNCHRONISING = 1,
39 PNRP_CLOUD_STATE_ACTIVE = 2,
40 PNRP_CLOUD_STATE_DEAD = 3,
41 PNRP_CLOUD_STATE_DISABLED = 4,
42 PNRP_CLOUD_STATE_NO_NET = 5,
43 PNRP_CLOUD_STATE_ALONE = 6
44} PNRP_CLOUD_STATE;
45
46typedef enum _PNRP_CLOUD_FLAGS {
47 PNRP_CLOUD_NO_FLAGS = 0,
48 PNRP_CLOUD_NAME_LOCAL = 1,
49 PNRP_CLOUD_RESOLVE_ONLY = 2,
50 PNRP_CLOUD_FULL_PARTICIPANT = 4
51} PNRP_CLOUD_FLAGS;
52
53typedef enum _PNRP_REGISTERED_ID_STATE {
54 PNRP_REGISTERED_ID_STATE_OK = 1,
55 PNRP_REGISTERED_ID_STATE_PROBLEM = 2
56} PNRP_REGISTERED_ID_STATE;
57
58typedef enum _PNRP_RESOLVE_CRITERIA {
59 PNRP_RESOLVE_CRITERIA_DEFAULT = 0,
60 PNRP_RESOLVE_CRITERIA_REMOTE_PEER_NAME = 1,
61 PNRP_RESOLVE_CRITERIA_NEAREST_REMOTE_PEER_NAME = 2,
62 PNRP_RESOLVE_CRITERIA_NON_CURRENT_PROCESS_PEER_NAME = 3,
63 PNRP_RESOLVE_CRITERIA_NEAREST_NON_CURRENT_PROCESS_PEER_NAME = 4,
64 PNRP_RESOLVE_CRITERIA_ANY_PEER_NAME = 5,
65 PNRP_RESOLVE_CRITERIA_NEAREST_PEER_NAME = 6
66} PNRP_RESOLVE_CRITERIA;
67
68typedef struct _PNRP_CLOUD_ID {
69 INT AddressFamily;
70 PNRP_SCOPE Scope;
71 ULONG ScopeId;
72} PNRP_CLOUD_ID,*PPNRP_CLOUD_ID;
73
74typedef enum _PNRP_EXTENDED_PAYLOAD_TYPE {
75 PNRP_EXTENDED_PAYLOAD_TYPE_NONE = 0,
76 PNRP_EXTENDED_PAYLOAD_TYPE_BINARY,
77 PNRP_EXTENDED_PAYLOAD_TYPE_STRING,
78} PNRP_EXTENDED_PAYLOAD_TYPE,*PPNRP_EXTENDED_PAYLOAD_TYPE;
79
80#endif
Note: See TracBrowser for help on using the repository browser.