| dhcpv6csdk.h (6.1.7601.17970-Windows_7.0) | | dhcpv6csdk.h (6.3.9600.17415-Windows_8.1) |
|
| | #include <winapifamily.h> |
| | |
| /*++ | | /*++ |
| | |
| Copyright (c) Microsoft Corporation. All rights reserved. | | Copyright (c) Microsoft Corporation. All rights reserved. |
| | |
| Module Name: | | Module Name: |
| | |
| dhcpv6csdk.h | | dhcpv6csdk.h |
| | |
| Abstract: | | Abstract: |
| | |
| | |
| skipping to change at line 38 | | skipping to change at line 40 |
| extern "C" { | | extern "C" { |
| #endif | | #endif |
| | |
| #ifndef DHCPV6_OPTIONS_DEFINED | | #ifndef DHCPV6_OPTIONS_DEFINED |
| #define DHCPV6_OPTIONS_DEFINED | | #define DHCPV6_OPTIONS_DEFINED |
| | |
| #if _MSC_VER > 1000 | | #if _MSC_VER > 1000 |
| #pragma once | | #pragma once |
| #endif | | #endif |
| | |
|
| | #pragma region Application Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) |
| | |
| // | | // |
| // DHCPv6 Standard Options(non-encapsulated). | | // DHCPv6 Standard Options(non-encapsulated). |
| // | | // |
| | |
| #define DHCPV6_OPTION_CLIENTID 1 | | #define DHCPV6_OPTION_CLIENTID 1 |
| #define DHCPV6_OPTION_SERVERID 2 | | #define DHCPV6_OPTION_SERVERID 2 |
| #define DHCPV6_OPTION_IA_NA 3 | | #define DHCPV6_OPTION_IA_NA 3 |
| #define DHCPV6_OPTION_IA_TA 4 | | #define DHCPV6_OPTION_IA_TA 4 |
| #define DHCPV6_OPTION_ORO 6 | | #define DHCPV6_OPTION_ORO 6 |
| #define DHCPV6_OPTION_PREFERENCE 7 | | #define DHCPV6_OPTION_PREFERENCE 7 |
| | |
| skipping to change at line 65 | | skipping to change at line 70 |
| #define DHCPV6_OPTION_SIP_SERVERS_NAMES 21 | | #define DHCPV6_OPTION_SIP_SERVERS_NAMES 21 |
| #define DHCPV6_OPTION_SIP_SERVERS_ADDRS 22 | | #define DHCPV6_OPTION_SIP_SERVERS_ADDRS 22 |
| #define DHCPV6_OPTION_DNS_SERVERS 23 | | #define DHCPV6_OPTION_DNS_SERVERS 23 |
| #define DHCPV6_OPTION_DOMAIN_LIST 24 | | #define DHCPV6_OPTION_DOMAIN_LIST 24 |
| #define DHCPV6_OPTION_IA_PD 25 | | #define DHCPV6_OPTION_IA_PD 25 |
| #define DHCPV6_OPTION_NIS_SERVERS 27 | | #define DHCPV6_OPTION_NIS_SERVERS 27 |
| #define DHCPV6_OPTION_NISP_SERVERS 28 | | #define DHCPV6_OPTION_NISP_SERVERS 28 |
| #define DHCPV6_OPTION_NIS_DOMAIN_NAME 29 | | #define DHCPV6_OPTION_NIS_DOMAIN_NAME 29 |
| #define DHCPV6_OPTION_NISP_DOMAIN_NAME 30 | | #define DHCPV6_OPTION_NISP_DOMAIN_NAME 30 |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) */ |
| | #pragma endregion |
| | |
| #endif DHCPV6_OPTIONS_DEFINED | | #endif DHCPV6_OPTIONS_DEFINED |
| | |
|
| | #pragma region Application Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) |
| | |
| #ifndef DHCPV6API_PARAMS_DEFINED | | #ifndef DHCPV6API_PARAMS_DEFINED |
| #define DHCPV6API_PARAMS_DEFINED | | #define DHCPV6API_PARAMS_DEFINED |
| | |
| typedef struct _DHCPV6CAPI_PARAMS { // use this structure to re
quest params | | typedef struct _DHCPV6CAPI_PARAMS { // use this structure to re
quest params |
| ULONG Flags; // for future use | | ULONG Flags; // for future use |
| ULONG OptionId; // what option is this? | | ULONG OptionId; // what option is this? |
| BOOL IsVendor; // is this vendor specific? | | BOOL IsVendor; // is this vendor specific? |
| LPBYTE Data; // the actual data | | LPBYTE Data; // the actual data |
| DWORD nBytesData; // how many bytes of data are th
ere in Data? | | DWORD nBytesData; // how many bytes of data are th
ere in Data? |
| } DHCPV6CAPI_PARAMS, *PDHCPV6CAPI_PARAMS, *LPDHCPV6CAPI_PARAMS; | | } DHCPV6CAPI_PARAMS, *PDHCPV6CAPI_PARAMS, *LPDHCPV6CAPI_PARAMS; |
| | |
| skipping to change at line 90 | | skipping to change at line 101 |
| typedef struct _DHCPV6CAPI_PARAMS_ARRAY { // array of params.. | | typedef struct _DHCPV6CAPI_PARAMS_ARRAY { // array of params.. |
| ULONG nParams; // size of array | | ULONG nParams; // size of array |
| LPDHCPV6CAPI_PARAMS Params; // actual array | | LPDHCPV6CAPI_PARAMS Params; // actual array |
| } DHCPV6CAPI_PARAMS_ARRAY, *PDHCPV6CAPI_PARAMS_ARRAY, *LPDHCPV6CAPI_PARAMS_ARRAY
; | | } DHCPV6CAPI_PARAMS_ARRAY, *PDHCPV6CAPI_PARAMS_ARRAY, *LPDHCPV6CAPI_PARAMS_ARRAY
; |
| | |
| typedef struct _DHCPV6CAPI_CLASSID { // defines a client class id
. | | typedef struct _DHCPV6CAPI_CLASSID { // defines a client class id
. |
| ULONG Flags; // must be zero currently. | | ULONG Flags; // must be zero currently. |
| #ifdef __midl | | #ifdef __midl |
| [size_is(nBytesData)] LPBYTE Data; | | [size_is(nBytesData)] LPBYTE Data; |
| #else | | #else |
|
| __field_bcount(nBytesData) LPBYTE Data;
// classid binary data. | | _Field_size_bytes_(nBytesData) LPBYTE Data;
// classid binary data. |
| #endif | | #endif |
| ULONG nBytesData; // how many bytes of data are
there? | | ULONG nBytesData; // how many bytes of data are
there? |
| } DHCPV6CAPI_CLASSID, *PDHCPV6CAPI_CLASSID, *LPDHCPV6CAPI_CLASSID; | | } DHCPV6CAPI_CLASSID, *PDHCPV6CAPI_CLASSID, *LPDHCPV6CAPI_CLASSID; |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) |
| | |
| typedef | | typedef |
| enum | | enum |
| { | | { |
| STATUS_NO_ERROR, //Prefix successfully leased, renew
ed. | | STATUS_NO_ERROR, //Prefix successfully leased, renew
ed. |
| STATUS_UNSPECIFIED_FAILURE, //Some unspecified failure occurred while tryi
ng to process the prefix. | | STATUS_UNSPECIFIED_FAILURE, //Some unspecified failure occurred while tryi
ng to process the prefix. |
| STATUS_NO_BINDING = 3, //The server doesn't have binding for the pr
efix. | | STATUS_NO_BINDING = 3, //The server doesn't have binding for the pr
efix. |
| STATUS_NOPREFIX_AVAIL = 6 //The server doesn't have prefix to offer to the
requesting client. | | STATUS_NOPREFIX_AVAIL = 6 //The server doesn't have prefix to offer to the
requesting client. |
| }StatusCode; | | }StatusCode; |
| | |
| typedef struct _DHCPV6Prefix{ | | typedef struct _DHCPV6Prefix{ |
| UCHAR prefix[16]; //128 bit prefix | | UCHAR prefix[16]; //128 bit prefix |
| DWORD prefixLength; //(48-64 bits) | | DWORD prefixLength; //(48-64 bits) |
| DWORD preferredLifeTime; //The Preferred Lifetime of the Prefix returned o
r requested in seconds | | DWORD preferredLifeTime; //The Preferred Lifetime of the Prefix returned o
r requested in seconds |
| DWORD validLifeTime; //The Valid Lifetime of the Prefix returned or re
quested in seconds | | DWORD validLifeTime; //The Valid Lifetime of the Prefix returned or re
quested in seconds |
| StatusCode status; //The status code returned by the server for
the prefix | | StatusCode status; //The status code returned by the server for
the prefix |
| }DHCPV6Prefix, *PDHCPV6Prefix, *LPDHCPV6Prefix; | | }DHCPV6Prefix, *PDHCPV6Prefix, *LPDHCPV6Prefix; |
| | |
| typedef struct _DHCPV6PrefixLeaseInformation { | | typedef struct _DHCPV6PrefixLeaseInformation { |
| DWORD nPrefixes; // number of prefixes. | | DWORD nPrefixes; // number of prefixes. |
|
| __field_ecount(nPrefixes) LPDHCPV6Prefix prefixArray; // Array of prefi
xes | | _Field_size_(nPrefixes) LPDHCPV6Prefix prefixArray; // Array of prefixe
s |
| DWORD iaid; //The 32 bit Identity Association identif
ier for the prefix option. | | DWORD iaid; //The 32 bit Identity Association identif
ier for the prefix option. |
| time_t T1; //The absolute renewal time for the prefi
xes in seconds | | time_t T1; //The absolute renewal time for the prefi
xes in seconds |
| time_t T2; //The absolute rebind time for the prefix
es in seconds | | time_t T2; //The absolute rebind time for the prefix
es in seconds |
| time_t MaxLeaseExpirationTime; //The absolute maximum lease expiration ti
me of all the prefix leases in this structure. | | time_t MaxLeaseExpirationTime; //The absolute maximum lease expiration ti
me of all the prefix leases in this structure. |
| time_t LastRenewalTime; // The absolute time at which the last ren
ewal for the prefixes happened. | | time_t LastRenewalTime; // The absolute time at which the last ren
ewal for the prefixes happened. |
| StatusCode status; //The status code returned by the server
for the IAPD | | StatusCode status; //The status code returned by the server
for the IAPD |
|
| __field_bcount(ServerIdLen) LPBYTE ServerId; // The server DUI
D from which the prefix is received. This is used in subsequent Renews. | | _Field_size_bytes_(ServerIdLen) LPBYTE ServerId; // The se
rver DUID from which the prefix is received. This is used in subsequent Renews. |
| DWORD ServerIdLen; // The length of the above DUID data. | | DWORD ServerIdLen; // The length of the above DUID data. |
| } DHCPV6PrefixLeaseInformation, *PDHCPV6PrefixLeaseInformation, *LPDHCPV6PrefixL
easeInformation; | | } DHCPV6PrefixLeaseInformation, *PDHCPV6PrefixLeaseInformation, *LPDHCPV6PrefixL
easeInformation; |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */ |
| | #pragma endregion |
| | |
| | #pragma region Application Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) |
| | |
| VOID | | VOID |
| APIENTRY | | APIENTRY |
| Dhcpv6CApiInitialize( | | Dhcpv6CApiInitialize( |
| OUT LPDWORD Version | | OUT LPDWORD Version |
| ); | | ); |
| | |
| VOID | | VOID |
| APIENTRY | | APIENTRY |
| Dhcpv6CApiCleanup( | | Dhcpv6CApiCleanup( |
| VOID | | VOID |
| ); | | ); |
| | |
| DWORD // win32 status | | DWORD // win32 status |
| APIENTRY | | APIENTRY |
| Dhcpv6RequestParams( // request parameters of cli
ent | | Dhcpv6RequestParams( // request parameters of cli
ent |
| IN BOOL forceNewInform, | | IN BOOL forceNewInform, |
| IN LPVOID reserved, | | IN LPVOID reserved, |
|
| __nullterminated IN LPWSTR adapterName, | | _In_ IN LPWSTR adapterName, |
| IN LPDHCPV6CAPI_CLASSID classId, | | IN LPDHCPV6CAPI_CLASSID classId, |
| IN OUT DHCPV6CAPI_PARAMS_ARRAY recdParams, | | IN OUT DHCPV6CAPI_PARAMS_ARRAY recdParams, |
| IN LPBYTE buffer, | | IN LPBYTE buffer, |
| IN OUT LPDWORD pSize | | IN OUT LPDWORD pSize |
| ); | | ); |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) */ |
| | #pragma endregion |
| | |
| | #pragma region Desktop Family |
| | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) |
| | |
| DWORD | | DWORD |
| APIENTRY | | APIENTRY |
| Dhcpv6RequestPrefix( | | Dhcpv6RequestPrefix( |
|
| IN __nullterminated LPWSTR adapterName, | | IN _In_ LPWSTR adapterName, |
| IN LPDHCPV6CAPI_CLASSID pclassId, | | IN LPDHCPV6CAPI_CLASSID pclassId, |
| IN OUT LPDHCPV6PrefixLeaseInformation prefixleaseInfo, | | IN OUT LPDHCPV6PrefixLeaseInformation prefixleaseInfo, |
|
| __deref_out OUT DWORD* pdwTimeToWait | | _Out_ DWORD* pdwTimeToWait |
| ); | | ); |
| | |
| DWORD | | DWORD |
| APIENTRY | | APIENTRY |
| Dhcpv6RenewPrefix( | | Dhcpv6RenewPrefix( |
|
| IN __nullterminated LPWSTR adapterName, | | IN _In_ LPWSTR adapterName, |
| IN LPDHCPV6CAPI_CLASSID pclassId, | | IN LPDHCPV6CAPI_CLASSID pclassId, |
| IN OUT LPDHCPV6PrefixLeaseInformation prefixleaseInfo, | | IN OUT LPDHCPV6PrefixLeaseInformation prefixleaseInfo, |
|
| __deref_out OUT DWORD* pdwTimeToWait, | | _Out_ DWORD* pdwTimeToWait, |
| IN DWORD bValidatePrefix | | IN DWORD bValidatePrefix |
| ); | | ); |
| | |
| DWORD | | DWORD |
| APIENTRY | | APIENTRY |
| Dhcpv6ReleasePrefix( | | Dhcpv6ReleasePrefix( |
|
| __nullterminated IN LPWSTR adapterName, | | _In_ IN LPWSTR adapterName, |
| IN LPDHCPV6CAPI_CLASSID classId, | | IN LPDHCPV6CAPI_CLASSID classId, |
| IN LPDHCPV6PrefixLeaseInformation leaseInfo | | IN LPDHCPV6PrefixLeaseInformation leaseInfo |
| ); | | ); |
| | |
|
| | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */ |
| | #pragma endregion |
| | |
| #ifdef __cplusplus | | #ifdef __cplusplus |
| } | | } |
| #endif | | #endif |
| | |
| //==============================================================================
== | | //==============================================================================
== |
| // end of file | | // end of file |
| //==============================================================================
== | | //==============================================================================
== |
| #endif _DHCPV6CSDK_ | | #endif _DHCPV6CSDK_ |
| | |
| End of changes. 17 change blocks. |
| 9 lines changed or deleted | | 41 lines changed or added |
|