project/mdnsd.git
7 years agoDrop one-liner service_announce function
Rafał Miłecki [Fri, 10 Feb 2017 22:37:12 +0000 (23:37 +0100)]
Drop one-liner service_announce function

Now we have service_announce simplified so much there is no reason to
keep it as a helper.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: John Crispin <john@phrozen.org>
7 years agoDon't use _services._dns-sd._tcp.local
Rafał Miłecki [Fri, 10 Feb 2017 22:37:11 +0000 (23:37 +0100)]
Don't use _services._dns-sd._tcp.local

It seems mdns(d) was trying to support queries for two records with
following names:
1) _services._dns-sd._udp.local
2) _services._dns-sd._tcp.local

According to the RFC 6763 Section 9 only the first one should be used
and response PTR records should include services of both protocols: UDP
and TCP.

This fixes discovering TCP services as in practice no other software was
sending queries with _services._dns-sd._tcp.local.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: John Crispin <john@phrozen.org>
7 years agoSimplify UDP vs. TCP handling in service_announce_services
Rafał Miłecki [Fri, 10 Feb 2017 21:55:00 +0000 (22:55 +0100)]
Simplify UDP vs. TCP handling in service_announce_services

Out of 3 calls of this function only one doesn't have TCP vs. UDP
hardcoded. It's easier to move string check to that place and make this
function take "int tcp" argument instead.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
7 years agoCheck correct attributes when loading service from blob
Rafał Miłecki [Fri, 10 Feb 2017 13:48:36 +0000 (14:48 +0100)]
Check correct attributes when loading service from blob

We access SERVICE_TXT so we should check for this entry. Checking
SERVICE_SERVICE doesn't make sense anyway as it's verified few lines
above (in the same funcion).

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: John Crispin <john@phrozen.org>
7 years agoAvoid duplicated iteration over services when announcing
Rafał Miłecki [Fri, 10 Feb 2017 13:44:39 +0000 (14:44 +0100)]
Avoid duplicated iteration over services when announcing

In function service_announce_services we iterate over services and
handle every single one so calling service_reply which also iterates
doesn't make sense.

In simple cases it was just wasting CPU cycles. We got service, we were
passing its name and we were looking for it again comparing names.
In cases with one service available on few different ports it was worse.
For every iterated service we were announcing that one and all other
sharing the same name. It resulted in sending n^2 records.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: John Crispin <john@phrozen.org>
7 years agoMove matching logic out of service_reply_single function
Rafał Miłecki [Fri, 10 Feb 2017 11:58:24 +0000 (12:58 +0100)]
Move matching logic out of service_reply_single function

There is only 1 place in project calling this function with the match
argument. It's easier to add prooper condition in this place and have
service_reply_single simplified by taking 1 less argument.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
7 years agoSend A(AAA) records when announcing
Rafał Miłecki [Thu, 9 Feb 2017 09:11:16 +0000 (10:11 +0100)]
Send A(AAA) records when announcing

This allows device to be discovered by its local hostname.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: John Crispin <john@phrozen.org>
7 years agoFix/change comment format about port 5353
Rafał Miłecki [Thu, 9 Feb 2017 08:19:05 +0000 (09:19 +0100)]
Fix/change comment format about port 5353

It wasn't ANSI C comment and there were 2 unneeded spaces.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
7 years agoDon't call dns_reply_a from service_reply
Rafał Miłecki [Wed, 8 Feb 2017 17:04:27 +0000 (18:04 +0100)]
Don't call dns_reply_a from service_reply

This simplifies code without changing any behavior. Having this call in
service_reply required checking two conditions and was making code flow
harder to follow.

There are 2 more service_reply calls in the project:
1) In service_announce_services where we iterate over &services and
   every element of this list has "service" field filled. It means match
   argument was never NULL and dns_reply_a was never called from there.
2) In parse_question which also receives some name (there is a proper
   check in the dns_handle_packet). No call there neither.

So after all there was only 1 place that was indeed calling dns_reply_a.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: John Crispin <john@phrozen.org>
7 years agoRename service_reply_a to dns_reply_a and move it to proper file
Rafał Miłecki [Wed, 8 Feb 2017 15:47:52 +0000 (16:47 +0100)]
Rename service_reply_a to dns_reply_a and move it to proper file

This function doesn't really do anything service specify, it just sends
an A(AAA) records. It could probably be used even without any services
registered.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: John Crispin <john@phrozen.org>
7 years agoAdd simple "Fall through" comment to the announce_timer function switch
Rafał Miłecki [Wed, 8 Feb 2017 14:20:42 +0000 (15:20 +0100)]
Add simple "Fall through" comment to the announce_timer function switch

It's a common practice to add such comments to make it clear break
instruction was skipped on purpose.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: John Crispin <john@phrozen.org>
7 years agoChange dns_send_question function arg from unicast to multicast
Rafał Miłecki [Wed, 8 Feb 2017 13:04:57 +0000 (14:04 +0100)]
Change dns_send_question function arg from unicast to multicast

This trivial patch just reverses argument logic to make it a bit more
consistent with struct interface which contains "multicast" field. This
hopefully will make typos less likely and code easier to follow.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: John Crispin <john@phrozen.org>
7 years agodo not assume that dns structs are aligned
Johannes Wegener [Wed, 25 Jan 2017 23:07:00 +0000 (00:07 +0100)]
do not assume that dns structs are aligned

They do not have a fixed alignment in the packet. ARMv5 has separate
instructions for unaligned and aligned 16-bit load/store. The aligned
ones have undefined behavior if the addresses are unaligned, and that
completely breaks packet parsing.

Signed-off-by: Johannes Wegener <mail@johanneswegener.de>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
7 years agomdnsd: the service is ignoring questions
John Crispin [Mon, 19 Dec 2016 12:06:15 +0000 (13:06 +0100)]
mdnsd: the service is ignoring questions

When a question is incoming the service was incorrectly resettig the
query timeout regardless of it being the right service. This causes
the code to never answer the questions it is being asked.

Reported-by: Cristian Morales Vega <cristian@samknows.com>
Signed-off-by: John Crispin <john@phrozen.org>
7 years agocmake: Search for libjson-c
Florian Fainelli [Tue, 13 Dec 2016 22:23:53 +0000 (14:23 -0800)]
cmake: Search for libjson-c

Since we use libblobmsg_json which uses libjson-c internally, make sure
we find this library.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
7 years agoFix IPv6 read
Cristian Morales Vega [Wed, 14 Dec 2016 16:49:38 +0000 (16:49 +0000)]
Fix IPv6 read

This is a quick fix. It may still not work when the interface has
multiple IPs, and this also applies to IPv4.

Signed-off-by: Cristian Morales Vega <cristian@samknows.com>
7 years agoRevert "mdnsd: interface: enable looped back messages"
John Crispin [Mon, 24 Oct 2016 16:43:16 +0000 (18:43 +0200)]
Revert "mdnsd: interface: enable looped back messages"

This reverts commit 8a70b2b47dd328f8180e5ecaa7bdc817f574a81b.

7 years agomdnsd: interface: enable looped back messages
Eyal Birger [Sun, 22 May 2016 09:20:43 +0000 (12:20 +0300)]
mdnsd: interface: enable looped back messages

When the IP_MULTICAST_LOOP/IPV6_MULTICAST_LOOP socket options are not enabled,
locally generated queries are ignored by mdnsd; This prevents local
applications from being able to discover locally published services.

Signed-off-by: Eyal Birger <eyal.birger@gmail.com>
8 years agointerface: include libubox/utils.h
Felix Fietkau [Thu, 3 Sep 2015 12:59:12 +0000 (14:59 +0200)]
interface: include libubox/utils.h

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
8 years agoservice: remove obsolete uci include statements
Felix Fietkau [Thu, 3 Sep 2015 12:58:24 +0000 (14:58 +0200)]
service: remove obsolete uci include statements

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agoubus: add keep functionality to set_config-call
Steven Barth [Thu, 6 Nov 2014 20:18:54 +0000 (21:18 +0100)]
ubus: add keep functionality to set_config-call

Signed-off-by: Steven Barth <steven@midlink.org>
9 years agocache: fix cache record refreshing
Steven Barth [Tue, 28 Oct 2014 19:50:31 +0000 (20:50 +0100)]
cache: fix cache record refreshing

Signed-off-by: Steven Barth <steven@midlink.org>
9 years agoubus: add ubus fetch call
Steven Barth [Tue, 28 Oct 2014 19:11:35 +0000 (20:11 +0100)]
ubus: add ubus fetch call

Signed-off-by: Steven Barth <steven@midlink.org>
9 years agodns: use different buffers for encoding and decoding names
Steven Barth [Tue, 28 Oct 2014 18:41:13 +0000 (19:41 +0100)]
dns: use different buffers for encoding and decoding names

dns_send_question was ocassionally called with a name from name_buf

Signed-off-by: Steven Barth <steven@midlink.org>
9 years agocache: also cache PTR records
Steven Barth [Tue, 28 Oct 2014 11:29:13 +0000 (12:29 +0100)]
cache: also cache PTR records

Signed-off-by: Steven Barth <steven@midlink.org>
9 years agocache: cache rdata of SRV-records as well
Steven Barth [Tue, 28 Oct 2014 10:57:09 +0000 (11:57 +0100)]
cache: cache rdata of SRV-records as well

Signed-off-by: Steven Barth <steven@midlink.org>
9 years agoUse monotonic clock for timeouts
Steven Barth [Tue, 28 Oct 2014 08:57:24 +0000 (09:57 +0100)]
Use monotonic clock for timeouts

Signed-off-by: Steven Barth <steven@midlink.org>
9 years agoAdd query ubus call
Steven Barth [Sun, 26 Oct 2014 19:00:21 +0000 (20:00 +0100)]
Add query ubus call

Signed-off-by: Steven Barth <steven@midlink.org>
9 years agoadd a basic cache refresh logic
John Crispin [Thu, 4 Sep 2014 20:37:41 +0000 (22:37 +0200)]
add a basic cache refresh logic

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoadd a iface pointer to services and records
John Crispin [Thu, 4 Sep 2014 20:35:48 +0000 (22:35 +0200)]
add a iface pointer to services and records

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoentry->service
John Crispin [Thu, 4 Sep 2014 19:23:07 +0000 (21:23 +0200)]
entry->service

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoprint ttl when receiving a PTR record
John Crispin [Thu, 4 Sep 2014 19:01:48 +0000 (21:01 +0200)]
print ttl when receiving a PTR record

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agobasic support for the cache flush bit
John Crispin [Thu, 4 Sep 2014 18:26:43 +0000 (20:26 +0200)]
basic support for the cache flush bit

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoadd src ip validation
John Crispin [Thu, 4 Sep 2014 17:34:18 +0000 (19:34 +0200)]
add src ip validation

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agosilently drop unicast questions that dont originate from port 5353
John Crispin [Thu, 4 Sep 2014 15:44:46 +0000 (17:44 +0200)]
silently drop unicast questions that dont originate from port 5353

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agopropagate sockaddr and port form the receive function to the parser
John Crispin [Thu, 4 Sep 2014 15:42:21 +0000 (17:42 +0200)]
propagate sockaddr and port form the receive function to the parser

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agofix free after use on shutdown
John Crispin [Tue, 2 Sep 2014 19:25:19 +0000 (21:25 +0200)]
fix free after use on shutdown

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoadd good bye messages
John Crispin [Tue, 2 Sep 2014 18:37:24 +0000 (20:37 +0200)]
add good bye messages

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoadd SO_BINDTODEVICE support
John Crispin [Tue, 2 Sep 2014 18:20:10 +0000 (20:20 +0200)]
add SO_BINDTODEVICE support

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agosaner debug output
John Crispin [Tue, 2 Sep 2014 18:15:43 +0000 (20:15 +0200)]
saner debug output

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoipv6 cleanup
John Crispin [Tue, 2 Sep 2014 14:41:51 +0000 (16:41 +0200)]
ipv6 cleanup

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agopropagate unicast bit
John Crispin [Tue, 2 Sep 2014 13:23:57 +0000 (15:23 +0200)]
propagate unicast bit

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agonicer debug output on rx
John Crispin [Tue, 2 Sep 2014 13:15:23 +0000 (15:15 +0200)]
nicer debug output on rx

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoadd unicast listener sockets
John Crispin [Tue, 2 Sep 2014 12:44:16 +0000 (14:44 +0200)]
add unicast listener sockets

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agointerface.c cleanup
John Crispin [Tue, 2 Sep 2014 12:24:12 +0000 (14:24 +0200)]
interface.c cleanup

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoremove debug code
John Crispin [Sat, 30 Aug 2014 11:55:03 +0000 (13:55 +0200)]
remove debug code

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agovalidate incoming interface
John Crispin [Sat, 30 Aug 2014 11:17:02 +0000 (13:17 +0200)]
validate incoming interface

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agosane error message when read fails
John Crispin [Sat, 30 Aug 2014 10:24:52 +0000 (12:24 +0200)]
sane error message when read fails

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoadd pktinfo to rx path
John Crispin [Fri, 29 Aug 2014 19:28:45 +0000 (21:28 +0200)]
add pktinfo to rx path

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoadd -4 and -6 options
John Crispin [Fri, 29 Aug 2014 19:24:35 +0000 (21:24 +0200)]
add -4 and -6 options

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoload service info from procd
John Crispin [Fri, 29 Aug 2014 12:02:31 +0000 (14:02 +0200)]
load service info from procd

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agosplit the service_load() function into 2. this allows us to reuse the parsing
John Crispin [Fri, 29 Aug 2014 11:53:11 +0000 (13:53 +0200)]
split the service_load() function into 2. this allows us to reuse the parsing
code when reading services via ubus

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agochange the service json format this allows one instance to register multiple services...
John Crispin [Fri, 29 Aug 2014 11:42:20 +0000 (13:42 +0200)]
change the service json format this allows one instance to register multiple services of the same kind but with different ports

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agosend unsolicitated answers when a new service appears
John Crispin [Fri, 29 Aug 2014 07:01:31 +0000 (09:01 +0200)]
send unsolicitated answers when a new service appears

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoremove some debug code
John Crispin [Thu, 28 Aug 2014 10:43:22 +0000 (12:43 +0200)]
remove some debug code

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agodont delete records but set ttl to 1
John Crispin [Thu, 28 Aug 2014 10:40:12 +0000 (12:40 +0200)]
dont delete records but set ttl to 1

-> 10.2.  Announcements to Flush Outdated Cache Entries

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoadd the rfc
John Crispin [Thu, 28 Aug 2014 10:29:41 +0000 (12:29 +0200)]
add the rfc

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoadd goodbye messages when service disappear
John Crispin [Thu, 28 Aug 2014 10:29:01 +0000 (12:29 +0200)]
add goodbye messages when service disappear

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agomore ttl related changes. prereq for goodbye messages
John Crispin [Thu, 28 Aug 2014 10:14:37 +0000 (12:14 +0200)]
more ttl related changes. prereq for goodbye messages

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agodns_add_answer() now has a ttl parameter
John Crispin [Thu, 28 Aug 2014 08:15:21 +0000 (10:15 +0200)]
dns_add_answer() now has a ttl parameter

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoproperly announce all ips of an interface when asked
John Crispin [Thu, 28 Aug 2014 08:01:33 +0000 (10:01 +0200)]
properly announce all ips of an interface when asked

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoadd ipv6 support
John Crispin [Thu, 28 Aug 2014 02:20:58 +0000 (04:20 +0200)]
add ipv6 support

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agofix potential null pointer deref when packets are forged
John Crispin [Wed, 27 Aug 2014 17:51:07 +0000 (19:51 +0200)]
fix potential null pointer deref when packets are forged

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agofix potential buffer overflow when txt records are forged
John Crispin [Wed, 27 Aug 2014 17:49:04 +0000 (19:49 +0200)]
fix potential buffer overflow when txt records are forged

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoabort the reply parsing if an error is encountered
John Crispin [Wed, 27 Aug 2014 16:10:20 +0000 (18:10 +0200)]
abort the reply parsing if an error is encountered

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agogracefully exit if the cmdline is bogus
John Crispin [Wed, 27 Aug 2014 14:09:08 +0000 (16:09 +0200)]
gracefully exit if the cmdline is bogus

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoremove now unused service-types index
John Crispin [Fri, 27 Jun 2014 01:07:17 +0000 (02:07 +0100)]
remove now unused service-types index

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agofix entry duplication bug
John Crispin [Wed, 25 Jun 2014 03:06:54 +0000 (04:06 +0100)]
fix entry duplication bug

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agofix off by one in record find code
John Crispin [Wed, 25 Jun 2014 02:32:22 +0000 (03:32 +0100)]
fix off by one in record find code

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agofix use after free
John Crispin [Wed, 25 Jun 2014 01:09:02 +0000 (02:09 +0100)]
fix use after free

Signed-off-by: John Crispin <blogic@openwrt.org>
9 years agoremove linux specific includes
Felix Fietkau [Wed, 25 Jun 2014 08:02:11 +0000 (10:02 +0200)]
remove linux specific includes

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agomdns: remove dependencies on asm/byteorder.h, fix constant endian swap initialization
Felix Fietkau [Wed, 25 Jun 2014 08:00:25 +0000 (10:00 +0200)]
mdns: remove dependencies on asm/byteorder.h, fix constant endian swap initialization

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agoservice.c: remove unused service_attr_list
Felix Fietkau [Wed, 25 Jun 2014 07:58:13 +0000 (09:58 +0200)]
service.c: remove unused service_attr_list

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agorename set_interfaces to set_config, more stuff can be added here
Felix Fietkau [Wed, 11 Jun 2014 14:58:19 +0000 (16:58 +0200)]
rename set_interfaces to set_config, more stuff can be added here

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agoallow starting without an active interface
Felix Fietkau [Wed, 11 Jun 2014 14:40:38 +0000 (16:40 +0200)]
allow starting without an active interface

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agoadd support for dynamic reconfiguration of interfaces
Felix Fietkau [Wed, 11 Jun 2014 14:40:24 +0000 (16:40 +0200)]
add support for dynamic reconfiguration of interfaces

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agofix segfault while dumping records
Felix Fietkau [Mon, 9 Jun 2014 22:42:10 +0000 (00:42 +0200)]
fix segfault while dumping records

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agosimplify memory management for dns answers: use a blob_buf to cache entries
Felix Fietkau [Mon, 9 Jun 2014 22:35:52 +0000 (00:35 +0200)]
simplify memory management for dns answers: use a blob_buf to cache entries

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agouse lookup array for dns_type_string()
Felix Fietkau [Mon, 9 Jun 2014 22:11:50 +0000 (00:11 +0200)]
use lookup array for dns_type_string()

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agoreuse mdns_buf for cache_answer()
Felix Fietkau [Mon, 9 Jun 2014 22:07:49 +0000 (00:07 +0200)]
reuse mdns_buf for cache_answer()

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agomove signal_setup() to main.c
Felix Fietkau [Mon, 9 Jun 2014 22:00:08 +0000 (00:00 +0200)]
move signal_setup() to main.c

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agomake iface_name static
Felix Fietkau [Mon, 9 Jun 2014 21:58:46 +0000 (23:58 +0200)]
make iface_name static

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agoclean up hostname handling, make service_name() static
Felix Fietkau [Mon, 9 Jun 2014 21:58:10 +0000 (23:58 +0200)]
clean up hostname handling, make service_name() static

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agofix excessive stack usage
Felix Fietkau [Mon, 9 Jun 2014 21:40:59 +0000 (23:40 +0200)]
fix excessive stack usage

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agofix a few format string bugs
Felix Fietkau [Mon, 9 Jun 2014 21:34:24 +0000 (23:34 +0200)]
fix a few format string bugs

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agoservice: simplify and remove more code duplication
Felix Fietkau [Mon, 9 Jun 2014 21:14:53 +0000 (23:14 +0200)]
service: simplify and remove more code duplication

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agoservice: get rid of some code duplication
Felix Fietkau [Mon, 9 Jun 2014 21:08:55 +0000 (23:08 +0200)]
service: get rid of some code duplication

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agoservice: free the blob_buf on exit
Felix Fietkau [Mon, 9 Jun 2014 21:06:38 +0000 (23:06 +0200)]
service: free the blob_buf on exit

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agoremove a few TODO items
Felix Fietkau [Mon, 9 Jun 2014 21:05:59 +0000 (23:05 +0200)]
remove a few TODO items

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agomake the "records" avl tree static
Felix Fietkau [Mon, 9 Jun 2014 20:49:08 +0000 (22:49 +0200)]
make the "records" avl tree static

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agorename mdns_add_records to cache_dump_records and move it to cache.c
Felix Fietkau [Mon, 9 Jun 2014 20:46:54 +0000 (22:46 +0200)]
rename mdns_add_records to cache_dump_records and move it to cache.c

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agoremove unused avl tree hosts
Felix Fietkau [Mon, 9 Jun 2014 20:37:55 +0000 (22:37 +0200)]
remove unused avl tree hosts

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agostore ip address as struct in_addr instead of a string
Felix Fietkau [Mon, 9 Jun 2014 20:34:30 +0000 (22:34 +0200)]
store ip address as struct in_addr instead of a string

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agomake interface_socket_setup static
Felix Fietkau [Mon, 9 Jun 2014 20:20:33 +0000 (22:20 +0200)]
make interface_socket_setup static

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agomove rdata_buffer to cache_answer()
Felix Fietkau [Mon, 9 Jun 2014 19:46:25 +0000 (21:46 +0200)]
move rdata_buffer to cache_answer()

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agoclean up interfaces on exit
Felix Fietkau [Mon, 9 Jun 2014 19:44:30 +0000 (21:44 +0200)]
clean up interfaces on exit

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agomove interface connect/read handling to interface.c
Felix Fietkau [Mon, 9 Jun 2014 19:43:06 +0000 (21:43 +0200)]
move interface connect/read handling to interface.c

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agocall announce_free from interface_free
Felix Fietkau [Mon, 9 Jun 2014 19:35:47 +0000 (21:35 +0200)]
call announce_free from interface_free

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agomove dns packet processing to dns.c
Felix Fietkau [Mon, 9 Jun 2014 19:23:59 +0000 (21:23 +0200)]
move dns packet processing to dns.c

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
9 years agocache: add support for scanning on multiple interfaces
Felix Fietkau [Mon, 9 Jun 2014 19:15:19 +0000 (21:15 +0200)]
cache: add support for scanning on multiple interfaces

Signed-off-by: Felix Fietkau <nbd@openwrt.org>