DWORD VmDnsSrvGetRDataLength( VMDNS_RECORD_DATA Data, PUINT16 puRDataLength, BOOL bTokenizeDomainName ) { DWORD dwError = 0; UINT16 uRDataLength = 0; UINT16 uNameTargetLength = 0; if (!puRDataLength) { dwError = ERROR_INVALID_PARAMETER; BAIL_ON_VMDNS_ERROR(dwError); } dwError = VmDnsGetDomainNameLength( Data.SRV.pNameTarget, &uNameTargetLength, bTokenizeDomainName ); BAIL_ON_VMDNS_ERROR(dwError); uRDataLength += uNameTargetLength; uRDataLength += sizeof(UINT16); //wPriority uRDataLength += sizeof(UINT16); //wWeight uRDataLength += sizeof(UINT16); //wPort *puRDataLength = uRDataLength; cleanup: return dwError; error: if (puRDataLength) { *puRDataLength = 0; } goto cleanup; }
DWORD VmDnsPtrRecordGetRDataLength( VMDNS_RECORD_DATA Data, PUINT16 puRDataLength, BOOL bTokenizeDomainName ) { DWORD dwError = 0; UINT16 uRdataLength = 0; if (!puRDataLength) { dwError = ERROR_INVALID_PARAMETER; BAIL_ON_VMDNS_ERROR(dwError); } dwError = VmDnsGetDomainNameLength( Data.PTR.pNameHost, &uRdataLength, bTokenizeDomainName ); BAIL_ON_VMDNS_ERROR(dwError); *puRDataLength = uRdataLength; cleanup: return dwError; error: if (puRDataLength) { *puRDataLength = 0; } goto cleanup; }