From 0c0633a6244e10717f3a1cba412150a2096c9f90 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath <[email protected]>
Date: Wed, 19 Jul 2023 11:39:55 +0530
Subject: [PATCH] headers: Add missing symbols in dhcpv6csdk.h

Also fix some function declarations.
Required for 
https://chromium.googlesource.com/chromium/chromium/+/HEAD/net/proxy/dhcpcsvc_init_win.cc

Signed-off-by: Biswapriyo Nath <[email protected]>
---
 mingw-w64-headers/include/dhcpv6csdk.h | 61 +++++++++++++++++++++++---
 1 file changed, 55 insertions(+), 6 deletions(-)

diff --git a/mingw-w64-headers/include/dhcpv6csdk.h 
b/mingw-w64-headers/include/dhcpv6csdk.h
index 33a876f..ced4a19 100644
--- a/mingw-w64-headers/include/dhcpv6csdk.h
+++ b/mingw-w64-headers/include/dhcpv6csdk.h
@@ -12,11 +12,45 @@ extern "C" {
 
 #if (_WIN32_WINNT >= 0x0600)
 
+#include <winapifamily.h>
+
+#ifndef DHCPV6_OPTIONS_DEFINED
+#define DHCPV6_OPTIONS_DEFINED
+
+#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
+
+#define DHCPV6_OPTION_CLIENTID 1
+#define DHCPV6_OPTION_SERVERID 2
+#define DHCPV6_OPTION_IA_NA 3
+#define DHCPV6_OPTION_IA_TA 4
+#define DHCPV6_OPTION_ORO 6
+#define DHCPV6_OPTION_PREFERENCE 7
+#define DHCPV6_OPTION_UNICAST 12
+#define DHCPV6_OPTION_RAPID_COMMIT 14
+#define DHCPV6_OPTION_USER_CLASS 15
+#define DHCPV6_OPTION_VENDOR_CLASS 16
+#define DHCPV6_OPTION_VENDOR_OPTS 17
+#define DHCPV6_OPTION_RECONF_MSG 19
+
+#define DHCPV6_OPTION_SIP_SERVERS_NAMES 21
+#define DHCPV6_OPTION_SIP_SERVERS_ADDRS 22
+#define DHCPV6_OPTION_DNS_SERVERS 23
+#define DHCPV6_OPTION_DOMAIN_LIST 24
+#define DHCPV6_OPTION_IA_PD 25
+#define DHCPV6_OPTION_NIS_SERVERS 27
+#define DHCPV6_OPTION_NISP_SERVERS 28
+#define DHCPV6_OPTION_NIS_DOMAIN_NAME 29
+#define DHCPV6_OPTION_NISP_DOMAIN_NAME 30
+
+#endif /* WINAPI_PARTITION_APP */
+
+#endif /* DHCPV6_OPTIONS_DEFINED */
+
 typedef enum _StatusCode {
   STATUS_NO_ERROR,
   STATUS_UNSPECIFIED_FAILURE,
-  STATUS_NO_BINDING,
-  STATUS_NOPREFIX_AVAIL 
+  STATUS_NO_BINDING = 3,
+  STATUS_NOPREFIX_AVAIL = 6
 } StatusCode;
 
 typedef struct _DHCPV6CAPI_CLASSID {
@@ -25,6 +59,9 @@ typedef struct _DHCPV6CAPI_CLASSID {
   ULONG  nBytesData;
 } DHCPV6CAPI_CLASSID, *PDHCPV6CAPI_CLASSID, *LPDHCPV6CAPI_CLASSID;
 
+#ifndef DHCPV6API_PARAMS_DEFINED
+#define DHCPV6API_PARAMS_DEFINED
+
 typedef struct _DHCPV6CAPI_PARAMS {
   ULONG   Flags;
   ULONG   OptionId;
@@ -33,6 +70,8 @@ typedef struct _DHCPV6CAPI_PARAMS {
   DWORD   nBytesData;
 } DHCPV6CAPI_PARAMS, *PDHCPV6CAPI_PARAMS, *LPDHCPV6CAPI_PARAMS;
 
+#endif /* DHCPV6API_PARAMS_DEFINED */
+
 typedef struct _DHCPV6Prefix {
   UCHAR      prefix[16];
   DWORD      prefixLength;
@@ -61,11 +100,21 @@ typedef struct _DHCPV6PrefixLeaseInformation {
 
 VOID APIENTRY Dhcpv6CApiCleanup(void);
 
-DWORD APIENTRY Dhcpv6CApiInitialize(
+VOID APIENTRY Dhcpv6CApiInitialize(
   LPDWORD Version
 );
 
-DWORD APIENTRY Dhcpv6RenewPrefix(
+DWORD APIENTRY Dhcpv6RequestParams(
+  WINBOOL forceNewInform,
+  LPVOID reserved,
+  LPWSTR adapterName,
+  LPDHCPV6CAPI_CLASSID classId,
+  DHCPV6CAPI_PARAMS_ARRAY recdParams,
+  LPBYTE buffer,
+  LPDWORD pSize
+);
+
+DWORD APIENTRY Dhcpv6ReleasePrefix(
   LPWSTR adapterName,
   LPDHCPV6CAPI_CLASSID classId,
   LPDHCPV6CAPIPrefixLeaseInformation prefixleaseInfo
@@ -75,7 +124,7 @@ DWORD APIENTRY Dhcpv6RenewPrefix(
   LPWSTR adapterName,
   LPDHCPV6CAPI_CLASSID classId,
   LPDHCPV6PrefixLeaseInformation prefixleaseInfo,
-  DWORD pdwTimeToWait,
+  DWORD *pdwTimeToWait,
   DWORD bValidatePrefix
 );
 
@@ -83,7 +132,7 @@ DWORD APIENTRY Dhcpv6RequestPrefix(
   LPWSTR adapterName,
   LPDHCPV6CAPI_CLASSID classId,
   LPDHCPV6PrefixLeaseInformation prefixleaseInfo,
-  DWORD pdwTimeToWait
+  DWORD *pdwTimeToWait
 );
 
 #endif /* (_WIN32_WINNT >= 0x0600) */
-- 
2.41.0

_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to