Correct, linking and working (so far) dnsapi.

It makes a query, and adns gets as far as sendto, but things break there.
The sendto call is made correctly, so all of the code above ws2_32 is
correct.

svn path=/trunk/; revision=7224
This commit is contained in:
Art Yerkes 2003-12-25 05:50:37 +00:00
parent db0182fe34
commit d42bd99ca1
2 changed files with 215 additions and 149 deletions

View file

@ -1,149 +1,215 @@
;
; dnsapi.def
;
; ReactOS Operating System
;
; Dns... API functions.
;
LIBRARY dnsapi.dll
EXPORTS
; Names
; DnsValidateName
DnsValidateName_W=DnsValidateName_W@8
DnsValidateName_UTF8=DnsValidateName_UTF8@8
DnsValidateName_A=DnsValidateName_A@8
; DnsNameCompare
DnsNameCompare_W=DnsNameCompare_W@8
DnsNameCompare_UTF8=DnsNameCompare_UTF8@8
DnsNameCompare_A=DnsNameCompare_A@8
; Contexts
; DnsAcquireContextHandle
DnsAcquireContextHandle_W=DnsAcquireContextHandle_W@12
DnsAcquireContextHandle_UTF8=DnsAcquireContextHandle_UTF8@12
DnsAcquireContextHandle_A=DnsAcquireContextHandle_A@12
; DnsReleaseContextHandle
DnsReleaseContextHandle=DnsReleaseContextHandle@4
; Queries
DnsQuery_W=DnsQuery_W@24
DnsQuery_UTF8=DnsQuery_UTF8@24
DnsQuery_A=DnsQuery_A@24
; Free
DnsFree=DnsFree@8
DnsRecordListFree=DnsRecordListFree@8
; Stubs
DnsAddRecordSet_A=DnsAddRecordSet_A@0
DnsAddRecordSet_UTF8=DnsAddRecordSet_UTF8@0
DnsAddRecordSet_W=DnsAddRecordSet_W@0
DnsAllocateRecord=DnsAllocateRecord@0
DnsApiHeapReset=DnsApiHeapReset@0
DnsAsyncRegisterHostAddrs_A=DnsAsyncRegisterHostAddrs_A@0
DnsAsyncRegisterHostAddrs_UTF8=DnsAsyncRegisterHostAddrs_UTF8@0
DnsAsyncRegisterHostAddrs_W=DnsAsyncRegisterHostAddrs_W@0
DnsAsyncRegisterInit=DnsAsyncRegisterInit@0
DnsAsyncRegisterTerm=DnsAsyncRegisterTerm@0
DnsCheckNameCollision_A=DnsCheckNameCollision_A@0
DnsCheckNameCollision_UTF8=DnsCheckNameCollision_UTF8@0
DnsCheckNameCollision_W=DnsCheckNameCollision_W@0
DnsCopyStringEx=DnsCopyStringEx@0
DnsCreateReverseNameStringForIpAddress=DnsCreateReverseNameStringForIpAddress@0
DnsCreateStandardDnsNameCopy=DnsCreateStandardDnsNameCopy@0
DnsCreateStringCopy=DnsCreateStringCopy@0
DnsDhcpSrvRegisterHostName_W=DnsDhcpSrvRegisterHostName_W@0
DnsDhcpSrvRegisterInit=DnsDhcpSrvRegisterInit@0
DnsDhcpSrvRegisterTerm=DnsDhcpSrvRegisterTerm@0
DnsDisableAdapterDomainNameRegistration=DnsDisableAdapterDomainNameRegistration@0
DnsDisableBNodeResolverThread=DnsDisableBNodeResolverThread@0
DnsDisableDynamicRegistration=DnsDisableDynamicRegistration@0
DnsDowncaseDnsNameLabel=DnsDowncaseDnsNameLabel@0
DnsEnableAdapterDomainNameRegistration=DnsEnableAdapterDomainNameRegistration@0
DnsEnableBNodeResolverThread=DnsEnableBNodeResolverThread@0
DnsEnableDynamicRegistration=DnsEnableDynamicRegistration@0
DnsExtractRecordsFromMessage_UTF8=DnsExtractRecordsFromMessage_UTF8@0
DnsExtractRecordsFromMessage_W=DnsExtractRecordsFromMessage_W@0
DnsFindAuthoritativeZone=DnsFindAuthoritativeZone@0
DnsFlushResolverCache=DnsFlushResolverCache@0
DnsFlushResolverCacheEntry_A=DnsFlushResolverCacheEntry_A@0
DnsFlushResolverCacheEntry_UTF8=DnsFlushResolverCacheEntry_UTF8@0
DnsFlushResolverCacheEntry_W=DnsFlushResolverCacheEntry_W@0
DnsFreeAdapterInformation=DnsFreeAdapterInformation@0
DnsFreeNetworkInformation=DnsFreeNetworkInformation@0
DnsFreeSearchInformation=DnsFreeSearchInformation@0
DnsGetBufferLengthForStringCopy=DnsGetBufferLengthForStringCopy@0
DnsGetCacheDataTable=DnsGetCacheDataTable@0
DnsGetDnsServerList=DnsGetDnsServerList@0
DnsGetDomainName=DnsGetDomainName@0
DnsGetHostName_A=DnsGetHostName_A@0
DnsGetHostName_UTF8=DnsGetHostName_UTF8@0
DnsGetHostName_W=DnsGetHostName_W@0
DnsGetIpAddressInfoList=DnsGetIpAddressInfoList@0
DnsGetIpAddressList=DnsGetIpAddressList@0
DnsGetLastServerUpdateIP=DnsGetLastServerUpdateIP@0
DnsGetMaxNumberOfAddressesToRegister=DnsGetMaxNumberOfAddressesToRegister@0
DnsGetNetworkInformation=DnsGetNetworkInformation@0
DnsGetPrimaryDomainName_A=DnsGetPrimaryDomainName_A@0
DnsGetPrimaryDomainName_UTF8=DnsGetPrimaryDomainName_UTF8@0
DnsGetPrimaryDomainName_W=DnsGetPrimaryDomainName_W@0
DnsGetSearchInformation=DnsGetSearchInformation@0
DnsIpv6AddressToString=DnsIpv6AddressToString@0
DnsIpv6StringToAddress=DnsIpv6StringToAddress@0
DnsIsAMailboxType=DnsIsAMailboxType@0
DnsIsAdapterDomainNameRegistrationEnabled=DnsIsAdapterDomainNameRegistrationEnabled@0
DnsIsDynamicRegistrationEnabled=DnsIsDynamicRegistrationEnabled@0
DnsIsStatusRcode=DnsIsStatusRcode@0
DnsIsStringCountValidForTextType=DnsIsStringCountValidForTextType@0
DnsMapRcodeToStatus=DnsMapRcodeToStatus@0
DnsModifyRecordSet_A=DnsModifyRecordSet_A@0
DnsModifyRecordSet_UTF8=DnsModifyRecordSet_UTF8@0
DnsModifyRecordSet_W=DnsModifyRecordSet_W@0
DnsModifyRecordsInSet_A=DnsModifyRecordsInSet_A@0
DnsModifyRecordsInSet_UTF8=DnsModifyRecordsInSet_UTF8@0
DnsModifyRecordsInSet_W=DnsModifyRecordsInSet_W@0
DnsNameCompareEx_A=DnsNameCompareEx_A@0
DnsNameCompareEx_UTF8=DnsNameCompareEx_UTF8@0
DnsNameCompareEx_W=DnsNameCompareEx_W@0
DnsNameCopy=DnsNameCopy@0
DnsNameCopyAllocate=DnsNameCopyAllocate@0
DnsQueryConfig=DnsQueryConfig@0
DnsQueryEx=DnsQueryEx@0
DnsRecordBuild_UTF8=DnsRecordBuild_UTF8@0
DnsRecordBuild_W=DnsRecordBuild_W@0
DnsRecordCompare=DnsRecordCompare@0
DnsRecordCopyEx=DnsRecordCopyEx@0
DnsRecordSetCompare=DnsRecordSetCompare@0
DnsRecordSetCopyEx=DnsRecordSetCopyEx@0
DnsRecordSetDetach=DnsRecordSetDetach@0
DnsRecordStringForType=DnsRecordStringForType@0
DnsRecordStringForWritableType=DnsRecordStringForWritableType@0
DnsRecordTypeForName=DnsRecordTypeForName@0
DnsRelationalCompare_UTF8=DnsRelationalCompare_UTF8@0
DnsRelationalCompare_W=DnsRelationalCompare_W@0
DnsRemoveRegistrations=DnsRemoveRegistrations@0
DnsReplaceRecordSetA=DnsReplaceRecordSetA@0
DnsReplaceRecordSetUTF8=DnsReplaceRecordSetUTF8@0
DnsReplaceRecordSetW=DnsReplaceRecordSetW@0
DnsReplaceRecordSet_A=DnsReplaceRecordSet_A@0
DnsReplaceRecordSet_UTF8=DnsReplaceRecordSet_UTF8@0
DnsReplaceRecordSet_W=DnsReplaceRecordSet_W@0
DnsServiceNotificationDeregister_A=DnsServiceNotificationDeregister_A@0
DnsServiceNotificationDeregister_UTF8=DnsServiceNotificationDeregister_UTF8@0
DnsServiceNotificationDeregister_W=DnsServiceNotificationDeregister_W@0
DnsServiceNotificationRegister_A=DnsServiceNotificationRegister_A@0
DnsServiceNotificationRegister_UTF8=DnsServiceNotificationRegister_UTF8@0
DnsServiceNotificationRegister_W=DnsServiceNotificationRegister_W@0
DnsSetMaxNumberOfAddressesToRegister=DnsSetMaxNumberOfAddressesToRegister@0
DnsStatusString=DnsStatusString@0
DnsStringCopyAllocateEx=DnsStringCopyAllocateEx@0
DnsUnicodeToUtf8=DnsUnicodeToUtf8@0
DnsUpdate=DnsUpdate@0
DnsUpdateTest_A=DnsUpdateTest_A@0
DnsUpdateTest_UTF8=DnsUpdateTest_UTF8@0
DnsUpdateTest_W=DnsUpdateTest_W@0
DnsUtf8ToUnicode=DnsUtf8ToUnicode@0
DnsValidateUtf8Byte=DnsValidateUtf8Byte@0
DnsWinsRecordFlagForString=DnsWinsRecordFlagForString@0
DnsWinsRecordFlagString=DnsWinsRecordFlagString@0
DnsWriteQuestionToBuffer_UTF8=DnsWriteQuestionToBuffer_UTF8@0
DnsWriteQuestionToBuffer_W=DnsWriteQuestionToBuffer_W@0
DnsWriteReverseNameStringForIpAddress=DnsWriteReverseNameStringForIpAddress@0
GetCurrentTimeInSeconds=GetCurrentTimeInSeconds@0
DnsAcquireContextHandle_A = DnsAcquireContextHandle_A@12 @1
DnsAcquireContextHandle_UTF8 = DnsAcquireContextHandle_UTF8@12 @2
DnsAcquireContextHandle_W = DnsAcquireContextHandle_W@12 @3
DnsAddRecordSet_A = DnsAddRecordSet_A@0 @4
DnsAddRecordSet_UTF8 = DnsAddRecordSet_UTF8@0 @5
DnsAddRecordSet_W = DnsAddRecordSet_W@0 @6
DnsAllocateRecord = DnsAllocateRecord@0 @7
DnsApiHeapReset = DnsApiHeapReset@0 @8
DnsAsyncRegisterHostAddrs_A = DnsAsyncRegisterHostAddrs_A@0 @9
DnsAsyncRegisterHostAddrs_UTF8 = DnsAsyncRegisterHostAddrs_UTF8@0 @10
DnsAsyncRegisterHostAddrs_W = DnsAsyncRegisterHostAddrs_W@0 @11
DnsAsyncRegisterInit = DnsAsyncRegisterInit@0 @12
DnsAsyncRegisterTerm = DnsAsyncRegisterTerm@0 @13
DnsCheckNameCollision_A = DnsCheckNameCollision_A@0 @14
DnsCheckNameCollision_UTF8 = DnsCheckNameCollision_UTF8@0 @15
DnsCheckNameCollision_W = DnsCheckNameCollision_W@0 @16
DnsCopyStringEx = DnsCopyStringEx@0 @17
DnsCreateReverseNameStringForIpAddress = DnsCreateReverseNameStringForIpAddress@0 @18
DnsCreateStandardDnsNameCopy = DnsCreateStandardDnsNameCopy@0 @19
DnsCreateStringCopy = DnsCreateStringCopy@0 @20
DnsDhcpSrvRegisterHostName_W = DnsDhcpSrvRegisterHostName_W@0 @21
DnsDhcpSrvRegisterInit = DnsDhcpSrvRegisterInit@0 @22
DnsDhcpSrvRegisterTerm = DnsDhcpSrvRegisterTerm@0 @23
DnsDisableAdapterDomainNameRegistration = DnsDisableAdapterDomainNameRegistration@0 @24
DnsDisableBNodeResolverThread = DnsDisableBNodeResolverThread@0 @25
DnsDisableDynamicRegistration = DnsDisableDynamicRegistration@0 @26
DnsDowncaseDnsNameLabel = DnsDowncaseDnsNameLabel@0 @27
DnsEnableAdapterDomainNameRegistration = DnsEnableAdapterDomainNameRegistration@0 @28
DnsEnableBNodeResolverThread = DnsEnableBNodeResolverThread@0 @29
DnsEnableDynamicRegistration = DnsEnableDynamicRegistration@0 @30
DnsExtractRecordsFromMessage_UTF8 = DnsExtractRecordsFromMessage_UTF8@0 @31
DnsExtractRecordsFromMessage_W = DnsExtractRecordsFromMessage_W@0 @32
DnsFindAuthoritativeZone = DnsFindAuthoritativeZone@0 @33
DnsFlushResolverCache = DnsFlushResolverCache@0 @34
DnsFlushResolverCacheEntry_A = DnsFlushResolverCacheEntry_A@0 @35
DnsFlushResolverCacheEntry_UTF8 = DnsFlushResolverCacheEntry_UTF8@0 @36
DnsFlushResolverCacheEntry_W = DnsFlushResolverCacheEntry_W@0 @37
DnsFree = DnsFree@8 @38
DnsFreeAdapterInformation = DnsFreeAdapterInformation@0 @39
DnsFreeNetworkInformation = DnsFreeNetworkInformation@0 @40
DnsFreeSearchInformation = DnsFreeSearchInformation@0 @41
DnsGetBufferLengthForStringCopy = DnsGetBufferLengthForStringCopy@0 @42
DnsGetCacheDataTable = DnsGetCacheDataTable@0 @43
DnsGetDnsServerList = DnsGetDnsServerList@0 @44
DnsGetDomainName = DnsGetDomainName@0 @45
DnsGetHostName_A = DnsGetHostName_A@0 @46
DnsGetHostName_UTF8 = DnsGetHostName_UTF8@0 @47
DnsGetHostName_W = DnsGetHostName_W@0 @48
DnsGetIpAddressInfoList = DnsGetIpAddressInfoList@0 @49
DnsGetIpAddressList = DnsGetIpAddressList@0 @50
DnsGetLastServerUpdateIP = DnsGetLastServerUpdateIP@0 @51
DnsGetMaxNumberOfAddressesToRegister = DnsGetMaxNumberOfAddressesToRegister@0 @52
DnsGetNetworkInformation = DnsGetNetworkInformation@0 @53
DnsGetPrimaryDomainName_A = DnsGetPrimaryDomainName_A@0 @54
DnsGetPrimaryDomainName_UTF8 = DnsGetPrimaryDomainName_UTF8@0 @55
DnsGetPrimaryDomainName_W = DnsGetPrimaryDomainName_W@0 @56
DnsGetSearchInformation = DnsGetSearchInformation@0 @57
DnsIntFreeRecordList @58
DnsIntTranslateAdnsToDNS_STATUS @59
DnsIpv6AddressToString = DnsIpv6AddressToString@0 @60
DnsIpv6StringToAddress = DnsIpv6StringToAddress@0 @61
DnsIsAMailboxType = DnsIsAMailboxType@0 @62
DnsIsAdapterDomainNameRegistrationEnabled = DnsIsAdapterDomainNameRegistrationEnabled@0 @63
DnsIsDynamicRegistrationEnabled = DnsIsDynamicRegistrationEnabled@0 @64
DnsIsStatusRcode = DnsIsStatusRcode@0 @65
DnsIsStringCountValidForTextType = DnsIsStringCountValidForTextType@0 @66
DnsMapRcodeToStatus = DnsMapRcodeToStatus@0 @67
DnsModifyRecordSet_A = DnsModifyRecordSet_A@0 @68
DnsModifyRecordSet_UTF8 = DnsModifyRecordSet_UTF8@0 @69
DnsModifyRecordSet_W = DnsModifyRecordSet_W@0 @70
DnsModifyRecordsInSet_A = DnsModifyRecordsInSet_A@0 @71
DnsModifyRecordsInSet_UTF8 = DnsModifyRecordsInSet_UTF8@0 @72
DnsModifyRecordsInSet_W = DnsModifyRecordsInSet_W@0 @73
DnsNameCompareEx_A = DnsNameCompareEx_A@0 @74
DnsNameCompareEx_UTF8 = DnsNameCompareEx_UTF8@0 @75
DnsNameCompareEx_W = DnsNameCompareEx_W@0 @76
DnsNameCompare_A = DnsNameCompare_A@8 @77
DnsNameCompare_UTF8 = DnsNameCompare_UTF8@8 @78
DnsNameCompare_W = DnsNameCompare_W@8 @79
DnsNameCopy = DnsNameCopy@0 @80
DnsNameCopyAllocate = DnsNameCopyAllocate@0 @81
DnsQueryConfig = DnsQueryConfig@0 @82
DnsQueryEx = DnsQueryEx@0 @83
DnsQuery_A = DnsQuery_A@24 @84
DnsQuery_UTF8 = DnsQuery_UTF8@24 @85
DnsQuery_W = DnsQuery_W@24 @86
DnsRecordBuild_UTF8 = DnsRecordBuild_UTF8@0 @87
DnsRecordBuild_W = DnsRecordBuild_W@0 @88
DnsRecordCompare = DnsRecordCompare@0 @89
DnsRecordCopyEx = DnsRecordCopyEx@0 @90
DnsRecordListFree = DnsRecordListFree@8 @91
DnsRecordSetCompare = DnsRecordSetCompare@0 @92
DnsRecordSetCopyEx = DnsRecordSetCopyEx@0 @93
DnsRecordSetDetach = DnsRecordSetDetach@0 @94
DnsRecordStringForType = DnsRecordStringForType@0 @95
DnsRecordStringForWritableType = DnsRecordStringForWritableType@0 @96
DnsRecordTypeForName = DnsRecordTypeForName@0 @97
DnsRelationalCompare_UTF8 = DnsRelationalCompare_UTF8@0 @98
DnsRelationalCompare_W = DnsRelationalCompare_W@0 @99
DnsReleaseContextHandle = DnsReleaseContextHandle@4 @100
DnsRemoveRegistrations = DnsRemoveRegistrations@0 @101
DnsReplaceRecordSetA = DnsReplaceRecordSetA@0 @102
DnsReplaceRecordSetUTF8 = DnsReplaceRecordSetUTF8@0 @103
DnsReplaceRecordSetW = DnsReplaceRecordSetW@0 @104
DnsReplaceRecordSet_A = DnsReplaceRecordSet_A@0 @105
DnsReplaceRecordSet_UTF8 = DnsReplaceRecordSet_UTF8@0 @106
DnsReplaceRecordSet_W = DnsReplaceRecordSet_W@0 @107
DnsServiceNotificationDeregister_A = DnsServiceNotificationDeregister_A@0 @108
DnsServiceNotificationDeregister_UTF8 = DnsServiceNotificationDeregister_UTF8@0 @109
DnsServiceNotificationDeregister_W = DnsServiceNotificationDeregister_W@0 @110
DnsServiceNotificationRegister_A = DnsServiceNotificationRegister_A@0 @111
DnsServiceNotificationRegister_UTF8 = DnsServiceNotificationRegister_UTF8@0 @112
DnsServiceNotificationRegister_W = DnsServiceNotificationRegister_W@0 @113
DnsSetMaxNumberOfAddressesToRegister = DnsSetMaxNumberOfAddressesToRegister@0 @114
DnsStatusString = DnsStatusString@0 @115
DnsStringCopyAllocateEx = DnsStringCopyAllocateEx@0 @116
DnsUnicodeToUtf8 = DnsUnicodeToUtf8@0 @117
DnsUpdate = DnsUpdate@0 @118
DnsUpdateTest_A = DnsUpdateTest_A@0 @119
DnsUpdateTest_UTF8 = DnsUpdateTest_UTF8@0 @120
DnsUpdateTest_W = DnsUpdateTest_W@0 @121
DnsUtf8ToUnicode = DnsUtf8ToUnicode@0 @122
DnsValidateName_A @123
DnsValidateName_UTF8 @124
DnsValidateName_W @125
DnsValidateUtf8Byte = DnsValidateUtf8Byte@0 @126
DnsWinsRecordFlagForString = DnsWinsRecordFlagForString@0 @127
DnsWinsRecordFlagString = DnsWinsRecordFlagString@0 @128
DnsWriteQuestionToBuffer_UTF8 = DnsWriteQuestionToBuffer_UTF8@0 @129
DnsWriteQuestionToBuffer_W = DnsWriteQuestionToBuffer_W@0 @130
DnsWriteReverseNameStringForIpAddress = DnsWriteReverseNameStringForIpAddress@0 @131
GetCurrentTimeInSeconds = GetCurrentTimeInSeconds@0 @132
adns__alloc_final @133
adns__alloc_interim @134
adns__alloc_mine @135
adns__alloc_preserved @136
adns__autosys @137
adns__consistency @138
adns__debug @139
adns__diag @140
adns__diag_domain @141
adns__fdevents @142
adns__findlabel_next @143
adns__findlabel_start @144
adns__findrr @145
adns__findrr_anychk @146
adns__findtype @147
adns__internal_check @148
adns__internal_submit @149
adns__isort @150
adns__makefinal_block @151
adns__makefinal_str @152
adns__mkquery @153
adns__mkquery_frdgram @154
adns__must_gettimeofday @155
adns__parse_domain @156
adns__parse_domain_more @157
adns__pollfds @158
adns__procdgram @159
adns__query_done @160
adns__query_fail @161
adns__query_send @162
adns__querysend_tcp @163
adns__reset_preserved @164
adns__search_next @165
adns__setnonblock @166
adns__sigpipe_protect @167
adns__sigpipe_unprotect @168
adns__tcp_broken @169
adns__tcp_tryconnect @170
adns__timeouts @171
adns__transfer_interim @172
adns__update_expires @173
adns__vbuf_append @174
adns__vbuf_appendq @175
adns__vbuf_appendstr @176
adns__vbuf_ensure @177
adns__vbuf_free @178
adns__vbuf_init @179
adns__vdiag @180
adns__warn @181
adns_afterselect @182
adns_beforeselect @183
adns_cancel @184
adns_check @185
adns_checkconsistency @186
adns_errabbrev @187
adns_errtypeabbrev @188
adns_finish @189
adns_firsttimeout @190
adns_forallqueries_begin @191
adns_forallqueries_next @192
adns_getpid @193
adns_gettimeofday @194
adns_globalsystemfailure @195
adns_inet_aton @196
adns_init @197
adns_init_strcfg @198
adns_processany @199
adns_processexceptional @200
adns_processreadable @201
adns_processtimeouts @202
adns_processwriteable @203
adns_rr_info @204
adns_strerror @205
adns_submit @206
adns_submit_reverse @207
adns_submit_reverse_any @208
adns_synchronous @209
adns_wait @210
adns_writev @211
data @212 DATA
vbuf__append_quoted1035 @213
xstrsave @214

View file

@ -83,7 +83,7 @@ DNS_STATUS WINAPI DnsQuery_A
(*QueryResultSet)->pName = xstrsave( Name );
(*QueryResultSet)->wDataLength = sizeof(DNS_A_DATA);
(*QueryResultSet)->Data.A.IpAddress =
ntohl( answer->rrs.addr->addr.inet.sin_addr.s_addr );
answer->rrs.addr->addr.inet.sin_addr.s_addr;
adns_finish( astate );
return ERROR_SUCCESS;