Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Handling of subtypes. Record names miss subtype information. Service name presented by ServiceEventArgs #2

Open
petersmar opened this issue Oct 10, 2016 · 0 comments

Comments

@petersmar
Copy link

As described in the documentation of the Service class, subtypes are defined in the domain string and are seperated by comma from the domain name: Example of such a string is "_bacnet._tcp,dev".

I added/defined a service using the following line of code:
Poco::DNSSD::Service serviceDEV1(ni.index(), "1-4711", "", "_bacnet._tcp,dev", "", "", 8080, propsDEV);

Using wireshark it is recordable that there are records propagated that will inform about the defined/used subkey: "dev._sub._bacnet._tcp.local: type PTR, class IN, 1-4711._bacnet._tcp.local" but the records like SRV and TXT miss the subkey information in the recoreds name. There is only "1-4711._bacnet._tcp.local: type SRV, class IN, ..." and "1-4711._bacnet._tcp.local: type TXT, class IN, ..." instead of "1-4711.dev._sub._bacnet._tcp.local: type SRV, class IN, ..." and "1-4711.dev._sub._bacnet._tcp.local: type TXT, class IN, ..." as I would expect.

But to get such a record on the wire (visible to wireshark) using the name with the subkey information, I need to create the service element that way:
Poco::DNSSD::Service serviceDEV1(ni.index(), "1-4711.dev._sub", "", "_bacnet._tcp,dev", "", "", 8080, propsDEV);

But when I request information from the DNSSD system I get it via the event OnServiceResolved the Service data of the ServiceEventArgs return as Name "1-4711.dev._sub" and as FullName "1-4711.dev._sub._bacnet._tcp.local." (There are backslashes for escaping?). The FullName with its escaping characters is not what I expected.

Is there any issue in handling the Service class (from my side) to get the library handling subtypes as expected or is there a bug inside the library?

TestDNSSD.cpp.txt It is the code of my testapplication
TestDNSSD Output.txt It is the output of the application
TestDNSSD Wireshark.pcapng.txt The wireshark trace. Was not able to load a ZIP file. Remove the txt extension of pcapng file and hope it is not damaged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant