This file is indexed.

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

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
(*
Module: cgconfig
    Parses /etc/cgconfig.conf

Author:
    Ivana Hutarova Varekova <varekova@redhat.com>
    Raphael Pinson          <raphink@gmail.com>

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

About: Lens Usage
    Sample usage of this lens in augtool
        * print all mounted cgroups
           print /files/etc/cgconfig.conf/mount

About: Configuration files
    This lens applies to /etc/cgconfig.conf. See <filter>.
 *)

module Cgconfig =
   autoload xfm

   let indent  = Util.indent
   let eol     = Util.eol
   let comment = Util.comment
   let empty   = Util.empty

   let id        = /[a-zA-Z0-9_\/.-]+/
   let name      = /[^#= \n\t{}\/]+/
   let cont_name = /(cpuacct|cpu|devices|ns|cpuset|memory|freezer|net_cls)/
   let role_name = /(admin|task)/
   let id_name   = /(uid|gid)/
   let address   = /[^#; \n\t{}]+/

   let lbracket = del /[ \t\n]*\{/ " {"
   let rbracket = del /[ \t]*\}/ "}"
   let eq       = indent . Util.del_str "=" . indent

(******************************************
 * Function to deal with abc=def; entries
 ******************************************)

   let key_value (key_rx:regexp) (val_rx:regexp) =
     [ indent . key key_rx . eq . store val_rx
         . indent . Util.del_str ";" ]

   (* Function to deal with bracketted entries *)
   let brack_entry_base (lnsa:lens) (lnsb:lens) =
     [ indent . lnsa . lbracket . lnsb . rbracket ]

   let brack_entry_key (kw:regexp) (lns:lens) =
     let lnsa = key kw in
     brack_entry_base lnsa lns

   let brack_entry (kw:regexp) (lns:lens) =
     let full_lns = (lns | comment | empty)* in
     brack_entry_key kw full_lns

(******************************************
 * control groups
 ******************************************)

   let permission_setting = key_value id_name address

(* task setting *)
   let t_info =  brack_entry "task" permission_setting

(* admin setting *)
   let a_info =  brack_entry "admin" permission_setting

(* permissions setting *)
   let perm_info =
     let ce = (comment|empty)* in
     let perm_info_lns = ce .
       ((t_info . ce . (a_info . ce)?)
       |(a_info . ce . (t_info . ce)?))? in
     brack_entry_key "perm" perm_info_lns

   let variable_setting = key_value name address

(* controllers setting *)
   let controller_info =
     let lnsa = label "controller" . store cont_name in
     let lnsb = ( variable_setting | comment | empty ) * in
     brack_entry_base lnsa lnsb

(* group { ... } *)
   let group_data  =
     let lnsa = key "group" . Util.del_ws_spc . store id in
     let lnsb = ( perm_info | controller_info | comment | empty )* in
     brack_entry_base lnsa lnsb


(*************************************************
 * mount point
 *************************************************)

(* controller = mount_point; *)
   let mount_point = key_value name address

(* mount { .... } *)
   let mount_data = brack_entry "mount" mount_point


(****************************************************
 * namespace
 ****************************************************)

(* controller = cgroup; *)
   let namespace_instance = key_value name address


(* namespace { .... } *)
   let namespace = brack_entry "namespace" namespace_instance

   let lns =  ( comment | empty | mount_data | group_data | namespace )*

   let xfm = transform lns (incl "/etc/cgconfig.conf")