Imported Upstream version 1.7.0
[platform/upstream/augeas.git] / lenses / group.aug
index 1fbec6d..be16892 100644 (file)
@@ -16,11 +16,13 @@ module Group =
 let eol        = Util.eol
 let comment    = Util.comment
 let empty      = Util.empty
+let dels       = Util.del_str
 
 let colon      = Sep.colon
 let comma      = Sep.comma
 
 let sto_to_spc = store Rx.space_in
+let sto_to_col = Passwd.sto_to_col
 
 let word    = Rx.word
 let password = /[A-Za-z0-9_.!*-]*/
@@ -37,14 +39,21 @@ let params    = [ label "password" . store password  . colon ]
                 . user_list?
 let entry     = Build.key_value_line word colon params
 
+let nisdefault =
+  let overrides =
+        colon
+      . [ label "password" . store password? . colon ]
+      . [ label "gid"      . store integer?  . colon ]
+      . user_list? in
+  [ dels "+" . label "@nisdefault" . overrides? . eol ]
+
+
 (************************************************************************
  *                                LENS
  *************************************************************************)
 
-let lns        = (comment|empty|entry) *
+let lns        = (comment|empty|entry|nisdefault) *
 
-let filter
-               = incl "/etc/group"
-               . Util.stdexcl
+let filter     = incl "/etc/group"
 
 let xfm        = transform lns filter