diff --git a/README.md b/README.md index 149e88d..e177f91 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,7 @@ This project strives to adopt a KISS "keep it simple, stupid!" structure while b Compared to most streamer software solutions available to this day, it attaches to the application-specific peripherals of a system-on-a-chip using an easy to understand HAL platform (hardware abstraction layer) proper to each chip series it supports. -Since it is exclusively using dynamic linking, its executable remains particularly compact and can be run on a multitude of environments, including in a tethered context (e.g. running from a temporary filesystem on read-only systems). +Since it is using runtime dynamic linking, its executable remains particularly compact and can be run on a multitude of environments, including in a tethered context (e.g. running from a temporary filesystem on read-only systems). In spite of these design choices, Divinus boasts numerous features that cater to a wide range of uses you will be able to make of it. diff --git a/src/LICENSE b/src/LICENSE index 75c6ac1..75c7e6e 100644 --- a/src/LICENSE +++ b/src/LICENSE @@ -79,7 +79,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. --- -The following software is included in this product under lib/shine: @toots/shine. +The following software is included in this product under src/lib/shine: @toots/shine. A copy of the original source code may be downloaded from git+https://github.com/toots/shine It is accompanied by following license and notice below: diff --git a/src/network.c b/src/network.c index 27679fb..63742c2 100644 --- a/src/network.c +++ b/src/network.c @@ -22,16 +22,18 @@ int start_mdns() { for (ifa = ifaddr; ifa != NULL; ifa = ifa->ifa_next) { if (!ifa->ifa_addr || ifa->ifa_addr->sa_family != AF_INET) continue; if (ifa->ifa_flags & IFF_LOOPBACK) continue; - struct sockaddr_in *addr = (struct sockaddr_in *)ifa->ifa_addr; + if (!configured) { - inet_ntop(AF_INET, &addr->sin_addr.s_addr, ipaddr, sizeof(ipaddr)); - HAL_INFO("mdns", "Setting hostname %s for host %s...\n", hostname, ipaddr); + + HAL_INFO("mdns", "Setting hostname %s...\n", hostname); mdnsd_set_hostname(mdns, uts.nodename, addr->sin_addr.s_addr); configured = 1; } struct rr_entry *entry = NULL; + inet_ntop(AF_INET, &addr->sin_addr.s_addr, ipaddr, sizeof(ipaddr)); + HAL_INFO("mdns", "Adding an A entry for IP %s...\n", ipaddr); entry = rr_create_a(create_nlabel(hostname), addr->sin_addr.s_addr); mdnsd_add_rr(mdns, entry); }