Blame lenses/smbusers.aug

Packit Service a2ae7a
(*
Packit Service a2ae7a
Module: SmbUsers
Packit Service a2ae7a
  Parses Samba username maps
Packit Service a2ae7a
Packit Service a2ae7a
Author: Raphael Pinson <raphink@gmail.com>
Packit Service a2ae7a
Packit Service a2ae7a
About: License
Packit Service a2ae7a
   This file is licenced under the LGPL v2+, like the rest of Augeas.
Packit Service a2ae7a
Packit Service a2ae7a
About: Lens Usage
Packit Service a2ae7a
   To be documented
Packit Service a2ae7a
Packit Service a2ae7a
About: Examples
Packit Service a2ae7a
   The <Test_SmbUsers> file contains various examples and tests.
Packit Service a2ae7a
*)
Packit Service a2ae7a
Packit Service a2ae7a
module SmbUsers =
Packit Service a2ae7a
Packit Service a2ae7a
autoload xfm
Packit Service a2ae7a
Packit Service a2ae7a
(* View: entry *)
Packit Service a2ae7a
let entry =
Packit Service a2ae7a
     let username = [ label "username" . store Rx.no_spaces ]
Packit Service a2ae7a
  in let usernames = Build.opt_list username Sep.space
Packit Service a2ae7a
  in Build.key_value_line Rx.word Sep.space_equal usernames
Packit Service a2ae7a
Packit Service a2ae7a
(* View: lns *)
Packit Service a2ae7a
let lns = (Util.empty | (Util.comment_generic /[ \t]*[#;][ \t]*/ "# ") | entry)*
Packit Service a2ae7a
Packit Service a2ae7a
(* Variable: filter *)
Packit Service a2ae7a
let filter = incl "/etc/samba/smbusers"
Packit Service a2ae7a
           . incl "/etc/samba/usermap.txt"
Packit Service a2ae7a
Packit Service a2ae7a
let xfm = transform lns filter