This file is indexed.

/usr/share/augeas/lenses/dist/automounter.aug is in augeas-lenses 1.2.0-0ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
(*
Module: Automounter
  Parses automounter file based maps

Author: Dominic Cleal <dcleal@redhat.com>

About: Reference
  See autofs(5)

About: License
   This file is licenced under the LGPL v2+, like the rest of Augeas.

About: Lens Usage
   To be documented

About: Configuration files
   This lens applies to /etc/auto.*, auto_*, excluding known scripts.

About: Examples
   The <Test_Automounter> file contains various examples and tests.
*)

module Automounter =
autoload xfm

(************************************************************************
 * Group:                 USEFUL PRIMITIVES
 *************************************************************************)

(* View: eol *)
let eol = Util.eol

(* View: empty *)
let empty   = Util.empty

(* View: comment *)
let comment = Util.comment

(* View: path *)
let path = /[^-+#: \t\n][^#: \t\n]*/

(* View: hostname *)
let hostname = /[^-:#\(\), \n\t][^:#\(\), \n\t]*/

(* An option label can't contain comma, comment, equals, or space *)
let optlabel = /[^,#:\(\)= \n\t]+/
let spec    = /[^,#:\(\)= \n\t][^ \n\t]*/

(* View: weight *)
let weight = Rx.integer

(* View: map_name *)
let map_name = /[^: \t\n]+/

(* View: entry_multimount_sep
   Separator for multimount entries, permits line spanning with "\" *)
let entry_multimount_sep = del /[ \t]+(\\\\[ \t]*\n[ \t]+)?/ " "

(************************************************************************
 * Group:                 ENTRIES
 *************************************************************************)

(* View: entry_key
   Key for a map entry *)
let entry_mkey = store path

(* View: entry_path
   Path component of an entry location *)
let entry_path = [ label "path" . store path ]

(* View: entry_host
   Host component with optional weight of an entry location *)
let entry_host = [ label "host" . store hostname
                   . ( Util.del_str "(" . [ label "weight"
                       . store weight ] . Util.del_str ")" )? ]

(* View: comma_sep_list
   Parses options for filesystems *)
let comma_sep_list (l:string) =
  let value = [ label "value" . Util.del_str "=" . store Rx.neg1 ] in
    let lns = [ label l . store optlabel . value? ] in
       Build.opt_list lns Sep.comma

(* View: entry_options *)
let entry_options = Util.del_str "-" . comma_sep_list "opt" . Util.del_ws_tab

(* View: entry_location
   A single location with one or more hosts, and one path *)
let entry_location = ( entry_host . ( Sep.comma . entry_host )* )?
                       . Sep.colon . entry_path

(* View: entry_locations 
   Multiple locations (each with one or more hosts), separated by spaces *)
let entry_locations = [ label "location" . counter "location"
                        . [ seq "location" . entry_location ]
                        . ( [ Util.del_ws_spc . seq "location" . entry_location ] )* ]

(* View: entry_multimount
   Parses one of many mountpoints given for a multimount line *)
let entry_multimount = entry_mkey . Util.del_ws_tab . entry_options? . entry_locations

(* View: entry_multimounts
   Parses multiple mountpoints given on an entry line *)
let entry_multimounts = [ label "mount" . counter "mount"
                          . [ seq "mount" . entry_multimount ]
                          . ( [ entry_multimount_sep . seq "mount" . entry_multimount ] )* ]

(* View: entry
   A single map entry from start to finish, including multi-mounts *)
let entry = [ seq "entry" . entry_mkey . Util.del_ws_tab . entry_options?
              . ( entry_locations | entry_multimounts ) . Util.eol ]

(* View: include
   An include line starting with a "+" and a map name *)
let include = [ seq "entry" . store "+" . Util.del_opt_ws ""
                . [ label "map" . store map_name ] . Util.eol ]

(* View: lns *)
let lns = ( empty | comment | entry | include ) *

(* Variable: filter
   Exclude scripts/executable maps from here *)
let filter = incl "/etc/auto.*"
           . incl "/etc/auto_*"
           . excl "/etc/auto.master"
           . excl "/etc/auto_master"
           . excl "/etc/auto.net"
           . excl "/etc/auto.smb"
           . Util.stdexcl

let xfm = transform lns filter