Hi,

v2:
- The removal of ::1 from resolv.conf was missing in various places,
  this is now fixed in patch 3
- Using ::1 instead of 127.0.0.1 when refreshing the dns because we
  are doing IPv6 address check (patch 4)
- Check for ::1 server was missing (patch 5)
- Null pointer check was incorrectly placed (patch 6)
- Memory leak if there is a request timeout from server (patch 7)
- Create cache if it is missing when hash lookup is done (patch 8)

v1:
Current DNS proxy implementation prevents any other DNS server
running in the system because we bind to port 53 in all interfaces.
This patchset changes this and connman only binds to those interfaces
that it needs meaning loopback and tethering interface if tethering
is enabled.
We are trying to bind both IPv4 and IPv6 addresses but if IPv6
is disabled, then only IPv4 listener is created.
The diff of patch 2 looks a bit complex to read but might be easier
to review if it is applied first.

Cheers,
Jukka


Jukka Rissanen (8):
  inet: Get an address from a given interface and address family
  dnsproxy: Listen only needed addresses
  dnsproxy: Add or remove ::1 to/from resolv.conf when necessary
  dnsproxy: Use ::1 when refreshing because of the address family
  dnsproxy: Do not add or remove ::1 server
  dnsproxy: Avoid null pointer access
  dnsproxy: Fix memory leak when request timeouts
  dnsproxy: Create cache if it is missing when doing lookup

 src/connman.h  |   1 +
 src/dnsproxy.c | 494 +++++++++++++++++++++++++++++++++++++++------------------
 src/inet.c     |  55 +++++++
 3 files changed, 393 insertions(+), 157 deletions(-)

-- 
1.7.11.7

_______________________________________________
connman mailing list
connman@connman.net
http://lists.connman.net/listinfo/connman

Reply via email to