svn commit: r355100 - head/libexec/rc/rc.d
Cy Schubert
Cy.Schubert at cschubert.com
Mon Nov 25 20:26:01 UTC 2019
In message <201911251959.xAPJxsJa088257 at repo.freebsd.org>, Ian Lepore
writes:
> Author: ian
> Date: Mon Nov 25 19:59:53 2019
> New Revision: 355100
> URL: https://svnweb.freebsd.org/changeset/base/355100
>
> Log:
> Allow opt-out of automatic ntpd leapfile checking/fetching.
>
> When a system has no internet connection, or when it is configured to obtai
> n
> ntpd leapfiles from some source other than the internet, or even when the
> sysadmin has decided for some reason to customize ntp.conf to eliminate use
> of the leapfile, the rc.d/ntpd script emits various error messages related
> to the file.
>
> This change allows setting the rc var ntp_db_leapfile to NONE to disable al
> l
> automatic processing related to that file in rc.d/ntpd.
>
Reviewed by: cy
> Differential Revision: https://reviews.freebsd.org/D22461
>
> Modified:
> head/libexec/rc/rc.d/ntpd
>
> Modified: head/libexec/rc/rc.d/ntpd
> =============================================================================
> =
> --- head/libexec/rc/rc.d/ntpd Mon Nov 25 19:38:05 2019 (r355099)
> +++ head/libexec/rc/rc.d/ntpd Mon Nov 25 19:59:53 2019 (r355100)
> @@ -28,6 +28,16 @@ pidfile="${_ntp_default_dir}/${name}.pid"
>
> load_rc_config $name
>
> +leapfile_is_disabled() {
> + # Return true (0) if automatic leapfile handling is disabled.
> + case "$ntp_db_leapfile" in
> + [Nn][Oo] | [Nn][Oo][Nn][Ee] )
> + return 0;;
> + * )
> + return 1;;
> + esac
> +}
> +
> can_run_nonroot()
> {
> # If the admin set what uid to use, we don't change it.
> @@ -107,7 +117,12 @@ ntpd_precmd()
> command_args="${command_args} -g"
> fi
>
> - # Make sure the leapfile is ready to use.
> + # Make sure the leapfile is ready to use, unless leapfile
> + # handling is disabled.
> + if leapfile_is_disabled; then
> + return
> + fi
> +
> ntpd_init_leapfile
> if [ ! -f "${ntp_db_leapfile}" ]; then
> ntpd_fetch_leapfile
> @@ -135,6 +150,11 @@ get_ntp_leapfile_expiry() {
> }
>
> ntpd_init_leapfile() {
> +
> + if leapfile_is_disabled; then
> + return
> + fi
> +
> # Refresh working leapfile with an invalid hash due to
> # FreeBSD id header. Ntpd will ignore leapfiles with a
> # mismatch hash. The file must be the virgin file from
> @@ -146,7 +166,12 @@ ntpd_init_leapfile() {
>
> ntpd_needfetch_leapfile() {
> local rc verbose
> -
> +
> + if leapfile_is_disabled; then
> + # Return code 1: ntp leapfile fetch not needed
> + return 1
> + fi
> +
> if checkyesno ntp_leapfile_fetch_verbose; then
> verbose=echo
> else
> @@ -182,6 +207,11 @@ ntpd_needfetch_leapfile() {
> }
>
> ntpd_fetch_leapfile() {
> +
> + if leapfile_is_disabled; then
> + return
> + fi
> +
> if checkyesno ntp_leapfile_fetch_verbose; then
> verbose=echo
> else
>
--
Cheers,
Cy Schubert <Cy.Schubert at cschubert.com>
FreeBSD UNIX: <cy at FreeBSD.org> Web: http://www.FreeBSD.org
The need of the many outweighs the greed of the few.
More information about the svn-src-head
mailing list