]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
resolver: automatically reload /etc/resolv.conf
authorvangyzen <vangyzen@FreeBSD.org>
Wed, 14 Oct 2015 14:26:44 +0000 (14:26 +0000)
committervangyzen <vangyzen@FreeBSD.org>
Wed, 14 Oct 2015 14:26:44 +0000 (14:26 +0000)
commit60458e70da25850f61b9877b8eae858c8ebe875d
tree898ee83d1d591faf4a93dd91b88fc597457060f4
parentb800f004107ceb768773500aa53149cd9cc29f77
resolver: automatically reload /etc/resolv.conf

On each resolver query, use stat(2) to see if the modification time
of /etc/resolv.conf has changed.  If so, reload the file and reinitialize
the resolver library.  However, only call stat(2) if at least two seconds
have passed since the last call to stat(2), since calling it on every
query could kill performance.

This new behavior is enabled by default.  Add a "reload-period" option
to disable it or change the period of the test.

Document this behavior and option in resolv.conf(5).

Polish the man page just enough to appease igor.

https://lists.freebsd.org/pipermail/freebsd-arch/2015-October/017342.html

Reviewed by: kp, wblock
Discussed with: jilles, imp, alfred
MFC after: 1 month
Relnotes: yes
Sponsored by: Dell Inc.
Differential Revision: https://reviews.freebsd.org/D3867
include/resolv.h
lib/libc/resolv/res_init.c
lib/libc/resolv/res_state.c
share/man/man5/resolver.5