Augeas Lens Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
P
 param, NagiosConfig
 param_def, NagiosConfig
 parameter, Sudoers
 parameter_flag, Sudoers
 parameter_integer, Sudoers
 parameter_list, Sudoers
 parameter_lists, Sudoers
 parameter_string, Sudoers
 password_arg, Grub
 port, Services
 prefixlen, Keepalived
 program, Syslog
 programs, Syslog
 protocol, Services
R
 rbracket, Keepalived
 reaction, Nsswitch
 real_server_field, Keepalived
 record
 record_local, Pg_Hba
 record_noempty, IniFile
 record_remote, Pg_Hba
 runas_alias, Sudoers
 runas_spec, Sudoers
S
 savedefault, Grub
 schedule, Cron
 screen, Xorg
 search, Resolv
 section, Xorg
 section_entry, Xorg
 selectors, Syslog
 sep
 sep_colon
 sep_dquot, Keepalived
 sep_moddir, Solaris_System
 sep_opt_spc, Keepalived
 sep_space, Modprobe
 sep_spc, Keepalived
 serial, Grub
 service, Nsswitch
 set_sep_spc, Solaris_System
 set_value, Solaris_System
 set_var, Solaris_System
 shell_command, Hosts_Access
 shellvar, Cron
 softdep, Modprobe
 sortlist, Resolv
 spc, Grub
 spec, Sudoers
 spec_list, Sudoers
 Split, Util
 static_ipaddress_field, Keepalived
 static_routes, Keepalived
 static_routes_field, Keepalived
 sto_bool, Host_Conf
 sto_bool_warn, Host_Conf
 sto_email_addr, Keepalived
 sto_no_colons, Modprobe
 sto_no_spaces, Modprobe
 sto_num, Keepalived
 sto_to_eol
 sto_word, Keepalived
 switch, Grub
 switch_arg, Grub
let param = [ Util.indent . param_def . [ Sep.space . param_def ]* . Util.eol ]
Params can have sub params
let param_def = key /[A-Za-z0-9_]+/ . Sep.opt_space . Sep.equal . Sep.opt_space . store Rx.no_spaces
define a field
let parameter = parameter_flag | parameter_integer | parameter_string | parameter_lists
A single parameter for defaults
let parameter_flag_kw = "always_set_home" | "authenticate" | "env_editor" | "env_reset" | "fqdn" | "ignore_dot" | "ignore_local_sudoers" | "insults" | "log_host" | "log_year" | "long_otp_prompt" | "mail_always" | "mail_badpass" | "mail_no_host" | "mail_no_perms" | "mail_no_user" | "noexec" | "path_info" | "passprompt_override" | "preserve_groups" | "requiretty" | "root_sudo" | "rootpw" | "runaspw" | "set_home" | "set_logname" | "setenv" | "shell_noargs" | "stay_setuid" | "targetpw" | "tty_tickets" | "visiblepw" | "closefrom_override" | "closefrom_override" | "compress_io" | "fast_glob" | "log_input" | "log_output" | "pwfeedback" | "umask_override" | "use_pty"
A flag parameter for defaults
let parameter_integer_nobool_kw = "passwd_tries"
An integer parameter for defaults
let parameter_list = parameter . ( sep_com . parameter )*
A list of comma-separated parameters for defaults
let parameter_lists_kw = "env_check" | "env_delete" | "env_keep"
A single list parameter for defaults
let parameter_string_nobool_kw = "badpass_message" | "editor" | "mailsub" | "noexec_file" | "passprompt" | "runas_default" | "syslog_badpri" | "syslog_goodpri" | "timestampdir" | "timestampowner" | "secure_path"
A string parameter for defaults
let password_arg = [ key "password" . (spc . [ switch "md5" ])? . spc . store (/[^ \t\n]+/ - "--md5") . (spc . [ label "file" . store /[^ \t\n]+/ ])? . eol ]
let port = [ label "port" . store num_re ]
let prefixlen = [ label "prefixlen" . Util.del_str "/" . sto_num ]
A prefix for IP addresses
let program = [ label "program" . opt_hash . bang . ( opt_plus | [ Build.xchgs "-" "reverse" ] ) . programs . eol . entries ]
a program begins with an optional hash, a bang, and an optional + or -
let programs = label_opt_list_or "program" (store word) comma "*"
a list of programs
let protocol = [ label "protocol" . store protocol_re ]
let rbracket = Util.del_str "}"
let reaction = let status_kw = /[Ss][Uu][Cc][Cc][Ee][Ss][Ss]/ | /[Nn][Oo][Tt][Ff][Oo][Uu][Nn][Dd]/ | /[Uu][Nn][Aa][Vv][Aa][Ii][Ll]/ | /[Tt][Rr][Yy][Aa][Gg][Aa][Ii][Nn]/ in let action_kw = /[Rr][Ee][Tt][Uu][Rr][Nn]/ | /[Cc][Oo][Nn][Tt][Ii][Nn][Uu][Ee]/ in let negate = [ Util.del_str "!" . label "negate" ] in let reaction_entry = [ label "status" . negate? . store status_kw . Util.del_str "=" . [ label "action" . store action_kw ] ] in Util.del_str "[" . [ label "reaction" . (Build.opt_list reaction_entry Sep.space) ] . Util.del_str "]"
The reaction on lookup result like `[NOTFOUND=return]’ TODO: Use case-insensitive regexps when ticket #147 is fixed.
let real_server_field = field "weight" sto_num | block "TCP_CHECK" tcp_check_field
let record = [ seq "entry" . [ label "target" . store target ] . sep_tab . [ label "device" . store fspath ] . (sep_tab . [ label "password" . store fspath ] . ( sep_tab . comma_sep_list "opt")? )? . eol ]
A crypttab record
let record = let moreusers = Build.opt_list [ label "moreusers" . store word ] Sep.comma in [ seq "host" . [ label "host" . store word ] . Util.del_ws_tab . [ label "dhcp" . store word ] . Util.del_ws_tab . [ label "user" . store word ] . (Util.del_ws_tab . moreusers)? . (Util.comment|Util.eol) ]
let record = [ key keyword . (sep_spc . store word)? . eol ]
Keyword, followed by optional whitespace and value, followed by EOL.
let record (title:lens) (entry:lens) = record_noempty title ( entry | empty )
Generic INI File record
let record = let value = store /[^ \t\n]+([ \t]+[^ \t\n]+)*/ in [ key Rx.word . Sep.space . value . Util.eol ]
A login.defs record
let record = [ key word . (Util.del_ws_tab . Modprobe.sto_to_eol)? . Util.eol ]
let record = [ seq "entries" . (record_local | record_remote) . eol ]
A sequence of record_local or record_remote entries
let record = IniFile.record title entry
An IniFile.record
let record = [ label "service-name" . store word_re . sep_spc . port . del "/" "/" . protocol . ( sep_spc . alias )* . comment_or_eol ]
A standard /etc/services record TODO: make sure a space is added before a comment on new nodes
let record_local = [ label "type" . store "local" ] . Sep.tab . database . Sep.tab . user . Sep.tab . method
when type is “local”, there is no “address” field
let record_noempty (title:lens) (entry:lens) = [ title . entry* ]
INI File Record with no empty lines allowed.
let record_remote = [ label "type" . store remtypes ] . Sep.tab . database . Sep.tab . user . Sep.tab . address . Sep.tab . method
let runas_alias = alias_entry "Runas_Alias" "runas_user" sto_to_com
Run_Alias, see alias_field
let runas_spec_user = alias_list "runas_user" sto_to_com
A runas specification for spec, using alias_list for listing users and/or groups used to run a command
let savedefault = [ command "savedefault" "\t" . (spc . store Rx.integer)? . eol ]
let schedule = [ label "schedule" . Util.del_str "@" . store schedule_re ]
Time in the format “@keyword”
let screen = [ indent . del /[sS]creen/ "Screen" . label "Screen" . sep_spc . [ label "num" . store int . sep_spc ]? . quoted_string_val . [ sep_spc . label "position" . store to_eol ]? . eol ]
The Screen entry of ServerLayout
let search = Build.key_value_line_comment "search" Sep.space (Build.opt_list [label "domain" . store Rx.word] Sep.space) comment_eol
let section = [ indent . del "Section" "Section" . sep_spc . sep_dquote . key (section_re|section_re_obsolete) . sep_dquote . eol . section_entry* . indent . del "EndSection" "EndSection" . eol ]
A section in xorg.conf
let section_entry = option | screen | display | input_device | driver | identifier | videoram | default_depth | device | entry_generic | empty | comment
let selectors = label_opt_list "selector" selector semicolon
a list of selectors, separated by semicolons
let sep = IniFile.sep /=[ \t]*/ "="
let sep = IniFile.sep "=" "="
An IniFile.sep entry
let sep_colon = del /:[ \t]*/ ": "
The separator for database entries
let sep_colon = del /:[ \t]*/ ": "
The separator for key/value entries
let sep_dquot = Util.del_str "\""
let sep_moddir = del /[: ]+/ " "
The separator of directories in a moddir search path
let sep_opt_spc = Sep.opt_space
let sep_space = del /([ \t]|(\\\\\n))+/ " "
let sep_spc = Sep.space
let serial = [ command "serial" "" . [ spc . switch_arg /unit|port|speed|word|parity|stop|device/ ]* . eol ]
let service = [ label "service" . store Rx.word ]
The service specification like `files’, `db’, or `nis’
let set_sep_spc = Util.del_opt_ws " "
let set_value = [ label "value" . store Rx.no_spaces ]
Sets an integer value or char pointer
let set_var = [ label "variable" . store Rx.word ]
Loads the variable name from a set command, no module
let shell_command = [ label "shell_command" . sto_to_eol ]
let shellvar = let key_re = Shellvars.key_re - "entry" in let sto_to_eol = store /[^\n]*[^ \t\n]/ in [ key key_re . sep_eq . sto_to_eol . eol ]
A shell variable in crontab
let softdep = let premod = [ label "pre" . sep_space . sto_no_colons ] in let pre = sep_space . Util.del_str "pre:" . premod+ in let postmod = [ label "post" . sep_space . sto_no_colons ] in let post = sep_space . Util.del_str "post:" . postmod+ in [ key "softdep" . sep_space . sto_no_colons . pre? . post? . Util.comment_or_eol ]
let sortlist = Build.key_value_line_comment "sortlist" Sep.space (Build.opt_list ipaddr Sep.space) comment_eol
let spc = Util.del_ws_spc
let spec = [ label "spec" . indent . alias_list "user" sto_to_com_user . sep_cont . spec_list . ( sep_col . spec_list )* . comment_or_eol ]
A user specification, listing colon-separated spec_lists
let spec_list = [ label "host_group" . alias_list "host" sto_to_com_host . sep_eq . cmnd_spec_list ]
Group of hosts with cmnd_spec_list
let static_ipaddress_field = [ indent . ipaddr . (sep_spc . ipdev)? . comment_or_eol ]
The whole string is fed to ip addr add.
let static_routes = block "static_ipaddress" static_ipaddress_field | block "static_routes" static_routes_field
let static_routes_field = [ indent . label "route" . [ key "src" . sto_word ] . sep_spc . [ key "to" . sto_word ] . sep_spc . [ key "dev" . sto_word ] . comment_or_eol ]
src $SRC_IP to $DST_IP dev $SRC_DEVICE
let sto_bool = store ("on"|"off")
Store a boolean value
let sto_bool_warn = store ("on"|"off"|"warn"|"nowarn")
Store a boolean value
let sto_email_addr = store Rx.email_addr
let sto_no_colons = store /[^:# \t\n\\\\]+/
let sto_no_spaces = store /[^# \t\n\\\\]+/
let sto_num = store Rx.relinteger
let sto_to_eol = store /[^ \t\n:][^\n]*[^ \t\n]|[^ \t\n:]/
let sto_to_eol = store /[^#! \t\n][^#!\n]*[^#! \t\n]|[^#! \t\n]/
let sto_to_eol = store /[^# \t\n\\\\][^#\n\\\\]*[^# \t\n\\\\]|[^# \t\n\\\\]/
let sto_word = store word
let switch (n:regexp) = dels "--" . key n
let switch_arg (n:regexp) = switch n . eq . store Rx.no_spaces
Close