Skip to content

Commit

Permalink
fix(ServiceDiscovery): remove additional record from DNS-SD all servi…
Browse files Browse the repository at this point in the history
…ces response
  • Loading branch information
richardschneider committed Jul 20, 2018
1 parent 4e18130 commit 7b2e909
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 1 deletion.
4 changes: 3 additions & 1 deletion Spike/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,9 @@ static void Main(string[] args)
var sd = new ServiceDiscovery(mdns);
sd.Advertise(new ServiceProfile("x1", "_xservice._tcp", 5011));
sd.Advertise(new ServiceProfile("x2", "_xservice._tcp", 666));
sd.Advertise(new ServiceProfile("z1", "_zservice._tcp", 5012));
var z1 = new ServiceProfile("z1", "_zservice._tcp", 5012);
z1.AddProperty("foo", "bar");
sd.Advertise(z1);

mdns.Start();
Console.ReadKey();
Expand Down
7 changes: 7 additions & 0 deletions src/ServiceDiscovery.cs
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,13 @@ void OnQuery(object sender, MessageEventArgs e)
var response = NameServer.ResolveAsync(request).Result;
if (response.Status == MessageStatus.NoError)
{
// Many bonjour browsers don't like DNS-SD response
// with additional records.
if (response.Answers.Any(a => a.Name == ServiceName))
{
response.AdditionalRecords.Clear();
}

Mdns.SendAnswer(response);
//Console.WriteLine($"Response time {(DateTime.Now - request.CreationTime).TotalMilliseconds}ms");
}
Expand Down

0 comments on commit 7b2e909

Please # to comment.