https://git.reactos.org/?p=reactos.git;a=commitdiff;h=b4777797aaa287f71fe877b9d2a229b98c7deaf4

commit b4777797aaa287f71fe877b9d2a229b98c7deaf4
Author:     Eric Kohl <[email protected]>
AuthorDate: Sun Dec 22 14:40:18 2019 +0100
Commit:     Eric Kohl <[email protected]>
CommitDate: Sun Dec 22 14:40:18 2019 +0100

    [DNSAPI] Set proper record flags for query results and converted records
---
 dll/win32/dnsapi/query.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/dll/win32/dnsapi/query.c b/dll/win32/dnsapi/query.c
index f16d8ec883f..0603b322390 100644
--- a/dll/win32/dnsapi/query.c
+++ b/dll/win32/dnsapi/query.c
@@ -223,9 +223,15 @@ DnsQuery_CodePage(UINT CodePage,
         }
 
         if (CodePage == CP_ACP)
+        {
             ConvertedRecord->pName = DnsWToC((PWCHAR)QueryResultWide->pName);
+            ConvertedRecord->Flags.S.CharSet = DnsCharSetAnsi;
+        }
         else
+        {
             ConvertedRecord->pName = 
DnsWToUTF8((PWCHAR)QueryResultWide->pName);
+            ConvertedRecord->Flags.S.CharSet = DnsCharSetUtf8;
+        }
 
         ConvertedRecord->wType = QueryResultWide->wType;
 
@@ -625,6 +631,8 @@ Query_Main(LPCWSTR Name,
             (*QueryResultSet)->pNext = NULL;
             (*QueryResultSet)->wType = Type;
             (*QueryResultSet)->wDataLength = sizeof(DNS_A_DATA);
+            (*QueryResultSet)->Flags.S.Section = DnsSectionAnswer;
+            (*QueryResultSet)->Flags.S.CharSet = DnsCharSetUnicode;
             (*QueryResultSet)->Data.A.IpAddress = Address;
 
             (*QueryResultSet)->pName = (LPSTR)xstrsave(Name);
@@ -696,6 +704,8 @@ Query_Main(LPCWSTR Name,
             (*QueryResultSet)->pNext = NULL;
             (*QueryResultSet)->wType = Type;
             (*QueryResultSet)->wDataLength = sizeof(DNS_A_DATA);
+            (*QueryResultSet)->Flags.S.Section = DnsSectionAnswer;
+            (*QueryResultSet)->Flags.S.CharSet = DnsCharSetUnicode;
             (*QueryResultSet)->Data.A.IpAddress = Address;
 
             (*QueryResultSet)->pName = (LPSTR)DnsCToW(HostWithDomainName);
@@ -787,6 +797,8 @@ Query_Main(LPCWSTR Name,
                 (*QueryResultSet)->pNext = NULL;
                 (*QueryResultSet)->wType = Type;
                 (*QueryResultSet)->wDataLength = sizeof(DNS_A_DATA);
+                (*QueryResultSet)->Flags.S.Section = DnsSectionAnswer;
+                (*QueryResultSet)->Flags.S.CharSet = DnsCharSetUnicode;
                 (*QueryResultSet)->Data.A.IpAddress = 
answer->rrs.addr->addr.inet.sin_addr.s_addr;
 
                 adns_finish(astate);

Reply via email to