mDNS service based on tinysvcmdns (https://bitbucket.org/geekman/tinysvcmdns) and its forks, adapted for use with the Humax HD/HDR-Fox T2 Custom Firmware https://hummy.tv/forum/forums/hd-hdr-fox-t2-customised-firmware.28/
Go to file
df 76a79c8c3d Merge branch 'master' of https://github.com/philippe44/TinySVCmDNS into origin/philippe44 2020-07-18 18:13:52 +01:00
bin SO_REUSEPORT fix 2018-10-24 21:42:24 -07:00
.gitattributes
.gitignore use SO_REUSEPORT only when available 2018-10-23 18:49:10 -07:00
.hgignore Initial commit 2020-07-18 18:09:34 +01:00
LICENSE.txt Initial commit 2020-07-18 18:09:34 +01:00
Makefile Initial commit 2020-07-18 18:09:34 +01:00
Makefile.arm use cross compilation 2017-01-08 21:41:33 -08:00
Makefile.bsd-x64 use SO_REUSEPORT only when available 2018-10-23 18:38:59 -07:00
Makefile.i86pc-solaris use SO_REUSEPORT only when available 2018-10-23 18:42:27 -07:00
Makefile.osx use SO_REUSEPORT only when available 2018-10-23 18:38:59 -07:00
Makefile.x86 use cross compilation 2017-01-08 21:41:33 -08:00
README Update README 2017-11-04 18:05:19 -07:00
README.txt Initial commit 2020-07-18 18:09:34 +01:00
mdns.c Initial commit 2020-07-18 18:09:34 +01:00
mdns.h Initial commit 2020-07-18 18:09:34 +01:00
mdnsd.c Initial commit 2020-07-18 18:09:34 +01:00
mdnsd.h Initial commit 2020-07-18 18:09:34 +01:00
testmdnsd.c Initial commit 2020-07-18 18:09:34 +01:00
tinysvcmdns.c can specify IP address to bind to 2017-08-23 18:57:18 -07:00

README.txt

tinysvcmdns
============
tinysvcmdns is a tiny MDNS responder implementation for publishing services.

This implementation is only concerned with publishing services, without a 
system-wide daemon like Bonjour or Avahi. Its other goal is to be extremely 
small, embeddable, and have no external dependencies.

It only answers queries related to its own hostname (the A record), the 
service PTRs, and the "_services.dns-sd._udp.local" name, which advertises 
all services on a particular host.

Services consist of a single SRV and TXT record.

Decoding of MDNS packets is only done to retrieve the questions and answer RRs.
The purpose for decoding answer RRs is to make sure the service PTR is not 
sent out if it is already included in the answer RRs.

It also only utilizes multicast packets, so no "QU" queries are accepted.

There is no name collision detection, so this means no queries are generated
before publishing the services. However compliant responders will avoid using 
our names, since the implementation will respond to queries that match our 
name.


TODO
-----
 * better, more stable & complete API
 * name collision detection


FILES
------
 * mdns.c - provides data structures, parsing & encoding of MDNS packets
 * mdnsd.c - implements the server socket, communication and thread
 * testmdnsd.c - an example that creates an instance until terminated


LICENSE
--------
Copyright (C) 2011 Darell Tan

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA