[augeas-devel] augeas: master - Ntp: add 'tinker' directive
David Lutterkort
lutter at fedoraproject.org
Wed Feb 24 01:47:24 UTC 2010
Gitweb: http://git.fedorahosted.org/git/augeas.git?p=augeas.git;a=commitdiff;h=9b6a3cebca371557992aa71742df07a6fdacb612
Commit: 9b6a3cebca371557992aa71742df07a6fdacb612
Parent: 93b7b0aaf0dde37058b113e59696f6860008d0fb
Author: David Lutterkort <lutter at redhat.com>
AuthorDate: Tue Feb 23 17:25:32 2010 -0800
Committer: David Lutterkort <lutter at redhat.com>
CommitterDate: Tue Feb 23 17:25:32 2010 -0800
Ntp: add 'tinker' directive
Fixes bug #103
---
lenses/ntp.aug | 11 +++++++++--
lenses/rx.aug | 2 +-
lenses/tests/test_ntp.aug | 6 ++++++
3 files changed, 16 insertions(+), 3 deletions(-)
diff --git a/lenses/ntp.aug b/lenses/ntp.aug
index e72098b..c9c4b72 100644
--- a/lenses/ntp.aug
+++ b/lenses/ntp.aug
@@ -55,7 +55,7 @@ module Ntp =
let simple_setting (k:regexp) = kv k word
- (* Still incomplete, misses logconfig, phone, setvar, tinker, tos,
+ (* Still incomplete, misses logconfig, phone, setvar, tos,
trap, ttl *)
let simple_settings =
kv "broadcastdelay" Rx.decimal
@@ -103,12 +103,19 @@ module Ntp =
| [ key /autokey|revoke/ . [sep_spc . store word]? . eol ]
| [ key /trustedkey/ . [ sep_spc . label "key" . store word ]+ . eol ]
+ (* tinker [step step | panic panic | dispersion dispersion |
+ stepout stepout | minpoll minpoll | allan allan | huffpuff huffpuff] *)
+ let tinker =
+ let arg_names = /step|panic|dispersion|stepout|minpoll|allan|huffpuff/ in
+ let arg = [ key arg_names . sep_spc . store Rx.decimal ] in
+ [ key "tinker" . (sep_spc . arg)* . eol ]
+
(* Define lens *)
let lns = ( comment | empty | command_record | fudge_record
| restrict_record | simple_settings | statistics_record
| filegen_record | broadcastclient
- | auth_command )*
+ | auth_command | tinker )*
let filter = (incl "/etc/ntp.conf")
. Util.stdexcl
diff --git a/lenses/rx.aug b/lenses/rx.aug
index a1d8e85..9f90f8e 100644
--- a/lenses/rx.aug
+++ b/lenses/rx.aug
@@ -20,7 +20,7 @@ let no_spaces = /[^ \t\n]+/
(* Generic fields *)
let word = /[A-Za-z0-9_.-]+/
let integer = /[0-9]+/
-let decimal = /[0-9]+[.,][0-9]+/
+let decimal = /[0-9]+([.,][0-9]+)?/
(* A filesystem path *)
let fspath = /[^ \t\n]+/
diff --git a/lenses/tests/test_ntp.aug b/lenses/tests/test_ntp.aug
index 9689d12..518d28c 100644
--- a/lenses/tests/test_ntp.aug
+++ b/lenses/tests/test_ntp.aug
@@ -145,3 +145,9 @@ filegen clockstats file clockstats type day enable nolink
{ "disable"
{ "flag" = "kernel" }
{ "flag" = "stats" } }
+
+(* Bug #103: tinker directive *)
+test Ntp.tinker get "tinker panic 0 huffpuff 3.14\n" =
+ { "tinker"
+ { "panic" = "0" }
+ { "huffpuff" = "3.14" } }
More information about the augeas-devel
mailing list