On Mar 8, 2007, at 5:54 AM, Ryan Williams wrote:
> It was my understanding that though it is described in the dns-sd
> spec/draft, mDNSResponder doesn't support subtypes...Using an example
> specified in the draft, you would be able to run a service with type
> of "_anon._ftp._tcp", but you'll get errors from mDNSResponder.
mDNSResponder *does* support subtypes and has supported them since
Mac OS X 10.3.9.
> Instead, you can register a service with a type of "_ftp._tcp", and
> describe your subtype using TXT records...see
> http://files.dns-sd.org/draft-cheshire-dnsext-dns-sd.txt, section 6.4
> for some example records.
You can register a list of subtypes by passing in a service type like...
_foobar._tcp,_subtype1,_subtype2,_subtype3
and you can browse for a subtype by using...
_foobar._tcp,_subtype1
> On 3/6/07, Garikipati, Chendra <email@hidden> wrote:
>>
>> I think this question is for somebody at Apple.
>> I have compiled the mDNSResponder-107.6 to use under VxWorks 5.4.
>> Every
>> thing I have tested so far works fine except when I try to publish
>> a service
>> with a subtype. The service is of the form
>> "_<name>._tcp,_<subtype>". I also
>> tried without the underscore before the subtype. When I looked at
>> the source
>> code for DNSServiceRegister() in file dnssd-clientshim.c, I
>> noticed the
>> following assignment " AuthRecord *SubTypes = mDNSNULL; mDNSu32
>> NumSubTypes
>> = 0; " and that never changed before calling 'mDNS_RegisterService
>> ()'. It
>> appers like one can never register subtypes?. On Windows however
>> using
>> dssd.dll, I could register subtypes. I am perhaps missing some
>> thing here.
>> Can somebody please clarify this.
The dnssd-clientshim.c is only used by clients that embed the
mDNSCore code into their application, and it's known to implement
most but not all of the DNSService APIs. You should be able to fix
this by taking the code from uds_daemon.c/dnssd-clientstub.c and
moving it over to dnssd-clientshim.c. Please feel free to submit a
patch if you get this working.
Thanks.
-Marc