(* Module: Shellvars Generic lens for shell-script config files like the ones found in /etc/sysconfig About: License This file is licenced under the LGPL v2+, like the rest of Augeas. About: Lens Usage To be documented *) module Shellvars = autoload xfm (* Delete a blank line, rather than mapping it *) let del_empty = del (Util.empty_generic_re . "\n") "\n" let empty = Util.empty let empty_part_re = Util.empty_generic_re . /\n+/ let eol = del (/[ \t]+|[ \t]*[;\n]/ . empty_part_re*) "\n" let semicol_eol = del (/[ \t]*[;\n]/ . empty_part_re*) "\n" let brace_eol = del /[ \t\n]+/ "\n" let key_re = /[A-Za-z0-9_]+(\[[0-9A-Za-z_,]+\])?/ - ("unset" | "export") let matching_re = "${!" . key_re . /[\*@]\}/ let eq = Util.del_str "=" let eol_for_comment = del /([ \t]*\n)([ \t]*(#[ \t]*)?\n)*/ "\n" let comment = Util.comment_generic_seteol /[ \t]*#[ \t]*/ " # " eol_for_comment (* comment_eol in shell MUST begin with a space *) let comment_eol = Util.comment_generic_seteol /[ \t]+#[ \t]*/ " # " eol_for_comment let comment_or_eol = comment_eol | semicol_eol let xchgs = Build.xchgs let semicol = del /;?/ "" let char = /[^`;()'"&|\n\\# \t]#*|\\\\./ let dquot = let char = /[^"\\]|\\\\./ | Rx.cl in "\"" . char* . "\"" (* " Emacs, relax *) let squot = /'[^']*'/ let bquot = /`[^`\n]+`/ (* dbquot don't take spaces or semi-colons *) let dbquot = /``[^` \t\n;]+``/ let dollar_assign = /\$\([^\(\)#\n]*\)/ let dollar_arithm = /\$\(\([^\)#\n]*\)\)/ let anyquot = (char|dquot|squot|dollar_assign|dollar_arithm)+ | bquot | dbquot let sto_to_semicol = store (anyquot . (Rx.cl_or_space . anyquot)*) (* Array values of the form '(val1 val2 val3)'. We do not handle empty *) (* arrays here because of typechecking headaches. Instead, they are *) (* treated as a simple value *) let array = let array_value = store anyquot in del /\([ \t]*/ "(" . counter "values" . [ seq "values" . array_value ] . [ del /[ \t\n]+/ " " . seq "values" . array_value ] * . del /[ \t]*\)/ ")" (* Treat an empty list () as a value '()'; that's not quite correct *) (* but fairly close. *) let simple_value = let empty_array = /\([ \t]*\)/ in store (anyquot | empty_array)? let export = [ key "export" . Util.del_ws_spc ] let kv = Util.indent . export? . key key_re . eq . (simple_value | array) let var_action (name:string) = Util.indent . del name name . Util.del_ws_spc . label ("@" . name) . counter "var_action" . Build.opt_list [ seq "var_action" . store (key_re | matching_re) ] Util.del_ws_spc let unset = var_action "unset" let bare_export = var_action "export" let source = Util.indent . del /\.|source/ "." . label ".source" . Util.del_ws_spc . store /[^;=# \t\n]+/ let shell_builtin_cmds = "ulimit" | "shift" | "exit" let eval = Util.indent . Util.del_str "eval" . Util.del_ws_spc . label "@eval" . store anyquot let alias = Util.indent . Util.del_str "alias" . Util.del_ws_spc . label "@alias" . store key_re . eq . [ label "value" . store anyquot ] let builtin = Util.indent . label "@builtin" . store shell_builtin_cmds . (Sep.cl_or_space . [ label "args" . sto_to_semicol ])? let keyword (kw:string) = Util.indent . Util.del_str kw let keyword_label (kw:string) (lbl:string) = keyword kw . label lbl let return = Util.indent . label "@return" . Util.del_str "return" . ( Util.del_ws_spc . store Rx.integer )? let action (operator:string) (lbl:string) (sto:lens) = let sp = Rx.cl_or_opt_space | /[ \t\n]+/ in [ del (sp . operator . sp) (" " . operator . " ") . label ("@".lbl) . sto ] let action_pipe = action "|" "pipe" let action_and = action "&&" "and" let action_or = action "||" "or" let condition = let cond (start:string) (end:string) = [ label "type" . store start ] . Util.del_ws_spc . sto_to_semicol . Util.del_ws_spc . Util.del_str end . ( action_and sto_to_semicol | action_or sto_to_semicol )* in Util.indent . label "@condition" . (cond "[" "]" | cond "[[" "]]") (* Entry types *) let entry_eol_item (item:lens) = [ item . comment_or_eol ] let entry_item (item:lens) = [ item ] let entry_eol_nocommand = entry_eol_item source | entry_eol_item kv | entry_eol_item unset | entry_eol_item bare_export | entry_eol_item builtin | entry_eol_item return | entry_eol_item condition | entry_eol_item eval | entry_eol_item alias let entry_noeol_nocommand = entry_item source | entry_item kv | entry_item unset | entry_item bare_export | entry_item builtin | entry_item return | entry_item condition | entry_item eval | entry_item alias (* Command *) let rec command = let env = [ key key_re . eq . store anyquot . Sep.cl_or_space ] in let reserved_key = /exit|shift|return|ulimit|unset|export|source|\.|if|for|select|while|until|then|else|fi|done|case|eval|alias/ in let word = /[A-Za-z0-9_.-\/]+/ in let entry_eol = entry_eol_nocommand | entry_eol_item command in let entry_noeol = entry_noeol_nocommand | entry_item command in let entry = entry_eol | entry_noeol in let pipe = action_pipe (entry_eol_item command | entry_item command) in let and = action_and entry in let or = action_or entry in Util.indent . label "@command" . env* . store (word - reserved_key) . [ Sep.cl_or_space . label "@arg" . sto_to_semicol]? . ( pipe | and | or )? let entry_eol = entry_eol_nocommand | entry_eol_item command let entry_noeol = entry_noeol_nocommand | entry_item command (************************************************************************ * Group: CONDITIONALS AND LOOPS *************************************************************************) let generic_cond_start (start_kw:string) (lbl:string) (then_kw:string) (contents:lens) = keyword_label start_kw lbl . Sep.space . sto_to_semicol . semicol_eol . keyword then_kw . eol . contents let generic_cond (start_kw:string) (lbl:string) (then_kw:string) (contents:lens) (end_kw:string) = [ generic_cond_start start_kw lbl then_kw contents . keyword end_kw . comment_or_eol ] let cond_if (entry:lens) = let elif = [ generic_cond_start "elif" "@elif" "then" entry+ ] in let else = [ keyword_label "else" "@else" . eol . entry+ ] in generic_cond "if" "@if" "then" (entry+ . elif* . else?) "fi" let loop_for (entry:lens) = generic_cond "for" "@for" "do" entry+ "done" let loop_while (entry:lens) = generic_cond "while" "@while" "do" entry+ "done" let loop_until (entry:lens) = generic_cond "until" "@until" "do" entry+ "done" let loop_select (entry:lens) = generic_cond "select" "@select" "do" entry+ "done" let case (entry:lens) (entry_noeol:lens) = let pattern = [ label "@pattern" . sto_to_semicol . Sep.opt_space ] in let case_entry = [ label "@case_entry" . Util.indent . pattern . (Util.del_str "|" . Sep.opt_space . pattern)* . Util.del_str ")" . eol . entry* . entry_noeol? . Util.indent . Util.del_str ";;" . eol ] in [ keyword_label "case" "@case" . Sep.space . store (char+ | ("\"" . char+ . "\"")) . del /[ \t\n]+/ " " . Util.del_str "in" . eol . (empty* . comment* . case_entry)* . empty* . comment* . keyword "esac" . comment_or_eol ] let subshell (entry:lens) = [ Util.indent . label "@subshell" . Util.del_str "{" . brace_eol . entry+ . Util.indent . Util.del_str "}" . eol ] let function (entry:lens) = [ Util.indent . label "@function" . del /(function[ \t]+)?/ "" . store Rx.word . del /[ \t]*\(\)/ "()" . (comment_eol|brace_eol) . Util.del_str "{" . brace_eol . entry+ . Util.indent . Util.del_str "}" . eol ] let rec rec_entry = let entry = comment | entry_eol | rec_entry in cond_if entry | loop_for entry | loop_select entry | loop_while entry | loop_until entry | case entry entry_noeol | function entry | subshell entry let lns_norec = del_empty* . (comment | entry_eol) * let lns = del_empty* . (comment | entry_eol | rec_entry) * let sc_incl (n:string) = (incl ("/etc/sysconfig/" . n)) let sc_excl (n:string) = (excl ("/etc/sysconfig/" . n)) let filter_sysconfig = sc_incl "*" . sc_excl "bootloader" . sc_excl "hw-uuid" . sc_excl "hwconf" . sc_excl "ip*tables" . sc_excl "ip*tables.save" . sc_excl "kernel" . sc_excl "*.pub" . sc_excl "sysstat.ioconf" . sc_excl "system-config-firewall" . sc_excl "system-config-securitylevel" . sc_incl "network/config" . sc_incl "network/dhcp" . sc_incl "network/dhcp6r" . sc_incl "network/dhcp6s" . sc_incl "network/ifcfg-*" . sc_incl "network/if-down.d/*" . sc_incl "network/ifroute-*" . sc_incl "network/if-up.d/*" . sc_excl "network/if-up.d/SuSEfirewall2" . sc_incl "network/providers/*" . sc_excl "network-scripts" . sc_incl "network-scripts/ifcfg-*" . sc_excl "rhn" . sc_incl "rhn/allowed-actions/*" . sc_excl "rhn/allowed-actions/script" . sc_incl "rhn/allowed-actions/script/*" . sc_incl "rhn/rhnsd" . sc_excl "SuSEfirewall2.d" . sc_incl "SuSEfirewall2.d/cobbler" . sc_incl "SuSEfirewall2.d/services/*" . sc_excl "SuSEfirewall2.d/services/TEMPLATE" . sc_excl "*.systemd" let filter_default = incl "/etc/default/*" . excl "/etc/default/grub_installdevice*" . excl "/etc/default/rmt" . excl "/etc/default/star" . excl "/etc/default/whoopsie" . incl "/etc/profile" . incl "/etc/profile.d/*" let filter_misc = incl "/etc/arno-iptables-firewall/debconf.cfg" . incl "/etc/conf.d/*" . incl "/etc/cron-apt/config" . incl "/etc/environment" . incl "/etc/firewalld/firewalld.conf" . incl "/etc/blkid.conf" . incl "/etc/adduser.conf" . incl "/etc/cowpoke.conf" . incl "/etc/cvs-cron.conf" . incl "/etc/cvs-pserver.conf" . incl "/etc/devscripts.conf" . incl "/etc/kamailio/kamctlrc" . incl "/etc/lbu/lbu.conf" . incl "/etc/lintianrc" . incl "/etc/lsb-release" . incl "/etc/os-release" . incl "/etc/periodic.conf" . incl "/etc/popularity-contest.conf" . incl "/etc/rc.conf" . incl "/etc/rc.conf.d/*" . incl "/etc/rc.conf.local" . incl "/etc/selinux/config" . incl "/etc/ucf.conf" . incl "/etc/locale.conf" . incl "/etc/vconsole.conf" . incl "/etc/byobu/*" let filter = filter_sysconfig . filter_default . filter_misc . Util.stdexcl let xfm = transform lns filter (* Local Variables: *) (* mode: caml *) (* End: *)
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
tests | Folder | 0755 |
|
|
access.aug | File | 3.58 KB | 0644 |
|
activemq_conf.aug | File | 1.47 KB | 0644 |
|
activemq_xml.aug | File | 864 B | 0644 |
|
afs_cellalias.aug | File | 1.56 KB | 0644 |
|
aliases.aug | File | 2.18 KB | 0644 |
|
anacron.aug | File | 2.49 KB | 0644 |
|
approx.aug | File | 1.26 KB | 0644 |
|
apt_update_manager.aug | File | 1.11 KB | 0644 |
|
aptcacherngsecurity.aug | File | 726 B | 0644 |
|
aptconf.aug | File | 3.9 KB | 0644 |
|
aptpreferences.aug | File | 1.79 KB | 0644 |
|
aptsources.aug | File | 1.98 KB | 0644 |
|
authorized_keys.aug | File | 1.84 KB | 0644 |
|
automaster.aug | File | 3.31 KB | 0644 |
|
automounter.aug | File | 4.05 KB | 0644 |
|
avahi.aug | File | 1.38 KB | 0644 |
|
backuppchosts.aug | File | 1014 B | 0644 |
|
bbhosts.aug | File | 4.24 KB | 0644 |
|
bootconf.aug | File | 3.65 KB | 0644 |
|
build.aug | File | 16.65 KB | 0644 |
|
cachefilesd.aug | File | 2 KB | 0644 |
|
carbon.aug | File | 1.54 KB | 0644 |
|
ceph.aug | File | 719 B | 0644 |
|
cgconfig.aug | File | 3.37 KB | 0644 |
|
cgrules.aug | File | 2.38 KB | 0644 |
|
channels.aug | File | 3.84 KB | 0644 |
|
chrony.aug | File | 12.7 KB | 0644 |
|
clamav.aug | File | 1.68 KB | 0644 |
|
cobblermodules.aug | File | 398 B | 0644 |
|
cobblersettings.aug | File | 2.24 KB | 0644 |
|
collectd.aug | File | 869 B | 0644 |
|
cpanel.aug | File | 824 B | 0644 |
|
cron.aug | File | 4.05 KB | 0644 |
|
cron_user.aug | File | 1.26 KB | 0644 |
|
crypttab.aug | File | 3.01 KB | 0644 |
|
csv.aug | File | 1.18 KB | 0644 |
|
cups.aug | File | 459 B | 0644 |
|
cyrus_imapd.aug | File | 1.51 KB | 0644 |
|
darkice.aug | File | 773 B | 0644 |
|
debctrl.aug | File | 3.61 KB | 0644 |
|
desktop.aug | File | 1.39 KB | 0644 |
|
device_map.aug | File | 620 B | 0644 |
|
dhclient.aug | File | 6.61 KB | 0644 |
|
dhcpd.aug | File | 20.88 KB | 0644 |
|
dns_zone.aug | File | 2.89 KB | 0644 |
|
dnsmasq.aug | File | 2.16 KB | 0644 |
|
dovecot.aug | File | 3.98 KB | 0644 |
|
dpkg.aug | File | 2.78 KB | 0644 |
|
dput.aug | File | 2.16 KB | 0644 |
|
erlang.aug | File | 4.33 KB | 0644 |
|
ethers.aug | File | 663 B | 0644 |
|
exports.aug | File | 2.37 KB | 0644 |
|
fai_diskconfig.aug | File | 9.28 KB | 0644 |
|
fonts.aug | File | 819 B | 0644 |
|
fstab.aug | File | 1.2 KB | 0644 |
|
fuse.aug | File | 871 B | 0644 |
|
gdm.aug | File | 1.8 KB | 0644 |
|
getcap.aug | File | 1.57 KB | 0644 |
|
group.aug | File | 1.66 KB | 0644 |
|
grub.aug | File | 9.6 KB | 0644 |
|
grubenv.aug | File | 508 B | 0644 |
|
gshadow.aug | File | 2.19 KB | 0644 |
|
gtkbookmarks.aug | File | 855 B | 0644 |
|
host_conf.aug | File | 1.9 KB | 0644 |
|
hostname.aug | File | 422 B | 0644 |
|
hosts.aug | File | 485 B | 0644 |
|
hosts_access.aug | File | 4.32 KB | 0644 |
|
htpasswd.aug | File | 1.02 KB | 0644 |
|
httpd.aug | File | 7.34 KB | 0644 |
|
inetd.aug | File | 6.22 KB | 0644 |
|
inifile.aug | File | 15.49 KB | 0644 |
|
inittab.aug | File | 780 B | 0644 |
|
inputrc.aug | File | 1.62 KB | 0644 |
|
interfaces.aug | File | 4.62 KB | 0644 |
|
iproute2.aug | File | 323 B | 0644 |
|
iptables.aug | File | 2.64 KB | 0644 |
|
iscsid.aug | File | 684 B | 0644 |
|
jaas.aug | File | 1.57 KB | 0644 |
|
jettyrealm.aug | File | 1.52 KB | 0644 |
|
jmxaccess.aug | File | 1.35 KB | 0644 |
|
jmxpassword.aug | File | 1.34 KB | 0644 |
|
json.aug | File | 2.01 KB | 0644 |
|
kdump.aug | File | 2.91 KB | 0644 |
|
keepalived.aug | File | 10.7 KB | 0644 |
|
known_hosts.aug | File | 1.93 KB | 0644 |
|
koji.aug | File | 898 B | 0644 |
|
krb5.aug | File | 6.13 KB | 0644 |
|
ldif.aug | File | 7.65 KB | 0644 |
|
ldso.aug | File | 1.06 KB | 0644 |
|
lightdm.aug | File | 1.75 KB | 0644 |
|
limits.aug | File | 2.02 KB | 0644 |
|
login_defs.aug | File | 615 B | 0644 |
|
logrotate.aug | File | 4.2 KB | 0644 |
|
logwatch.aug | File | 1.44 KB | 0644 |
|
lokkit.aug | File | 2.16 KB | 0644 |
|
lvm.aug | File | 2.03 KB | 0644 |
|
mailscanner.aug | File | 1.66 KB | 0644 |
|
mailscanner_rules.aug | File | 2.84 KB | 0644 |
|
masterpasswd.aug | File | 4.36 KB | 0644 |
|
mcollective.aug | File | 1.09 KB | 0644 |
|
mdadm_conf.aug | File | 10.05 KB | 0644 |
|
memcached.aug | File | 1.24 KB | 0644 |
|
mke2fs.aug | File | 4.67 KB | 0644 |
|
modprobe.aug | File | 3.34 KB | 0644 |
|
modules.aug | File | 741 B | 0644 |
|
modules_conf.aug | File | 1.04 KB | 0644 |
|
mongodbserver.aug | File | 1.17 KB | 0644 |
|
monit.aug | File | 2.13 KB | 0644 |
|
multipath.aug | File | 4.09 KB | 0644 |
|
mysql.aug | File | 1.95 KB | 0644 |
|
nagioscfg.aug | File | 2.09 KB | 0644 |
|
nagiosobjects.aug | File | 1.57 KB | 0644 |
|
netmasks.aug | File | 1.69 KB | 0644 |
|
networkmanager.aug | File | 2 KB | 0644 |
|
networks.aug | File | 1.09 KB | 0644 |
|
nginx.aug | File | 3.47 KB | 0644 |
|
nrpe.aug | File | 1.78 KB | 0644 |
|
nslcd.aug | File | 9.87 KB | 0644 |
|
nsswitch.aug | File | 2.29 KB | 0644 |
|
ntp.aug | File | 5.29 KB | 0644 |
|
ntpd.aug | File | 4.75 KB | 0644 |
|
odbc.aug | File | 1.42 KB | 0644 |
|
opendkim.aug | File | 3.08 KB | 0644 |
|
openshift_config.aug | File | 2.46 KB | 0644 |
|
openshift_http.aug | File | 1.03 KB | 0644 |
|
openshift_quickstarts.aug | File | 1.02 KB | 0644 |
|
openvpn.aug | File | 22.28 KB | 0644 |
|
oz.aug | File | 1.35 KB | 0644 |
|
pagekite.aug | File | 2.6 KB | 0644 |
|
pam.aug | File | 2.24 KB | 0644 |
|
pamconf.aug | File | 1.23 KB | 0644 |
|
passwd.aug | File | 3.52 KB | 0644 |
|
pbuilder.aug | File | 638 B | 0644 |
|
pg_hba.aug | File | 2.97 KB | 0644 |
|
pgbouncer.aug | File | 1.43 KB | 0644 |
|
php.aug | File | 2.34 KB | 0644 |
|
phpvars.aug | File | 3.85 KB | 0644 |
|
postfix_access.aug | File | 771 B | 0644 |
|
postfix_main.aug | File | 1.52 KB | 0644 |
|
postfix_master.aug | File | 1.9 KB | 0644 |
|
postfix_passwordmap.aug | File | 1.28 KB | 0644 |
|
postfix_sasl_smtpd.aug | File | 697 B | 0644 |
|
postfix_transport.aug | File | 1.48 KB | 0644 |
|
postfix_virtual.aug | File | 1.32 KB | 0644 |
|
postgresql.aug | File | 2.1 KB | 0644 |
|
properties.aug | File | 2.3 KB | 0644 |
|
protocols.aug | File | 1.05 KB | 0644 |
|
puppet.aug | File | 1.52 KB | 0644 |
|
puppet_auth.aug | File | 1.95 KB | 0644 |
|
puppetfile.aug | File | 1.66 KB | 0644 |
|
puppetfileserver.aug | File | 3.12 KB | 0644 |
|
pylonspaste.aug | File | 2.3 KB | 0644 |
|
pythonpaste.aug | File | 1.99 KB | 0644 |
|
qpid.aug | File | 670 B | 0644 |
|
quote.aug | File | 6.71 KB | 0644 |
|
rabbitmq.aug | File | 4.69 KB | 0644 |
|
radicale.aug | File | 1.48 KB | 0644 |
|
rancid.aug | File | 927 B | 0644 |
|
redis.aug | File | 4.6 KB | 0644 |
|
reprepro_uploaders.aug | File | 5.47 KB | 0644 |
|
resolv.aug | File | 3.87 KB | 0644 |
|
rhsm.aug | File | 1.1 KB | 0644 |
|
rmt.aug | File | 788 B | 0644 |
|
rsyncd.aug | File | 1.97 KB | 0644 |
|
rsyslog.aug | File | 2.66 KB | 0644 |
|
rtadvd.aug | File | 854 B | 0644 |
|
rx.aug | File | 4.06 KB | 0644 |
|
samba.aug | File | 1.71 KB | 0644 |
|
schroot.aug | File | 1.79 KB | 0644 |
|
securetty.aug | File | 450 B | 0644 |
|
sep.aug | File | 1.28 KB | 0644 |
|
services.aug | File | 2.82 KB | 0644 |
|
shadow.aug | File | 2.35 KB | 0644 |
|
shells.aug | File | 745 B | 0644 |
|
shellvars.aug | File | 11.68 KB | 0644 |
|
shellvars_list.aug | File | 1.74 KB | 0644 |
|
simplelines.aug | File | 1.13 KB | 0644 |
|
simplevars.aug | File | 1.39 KB | 0644 |
|
sip_conf.aug | File | 1.61 KB | 0644 |
|
slapd.aug | File | 5.2 KB | 0644 |
|
smbusers.aug | File | 781 B | 0644 |
|
solaris_system.aug | File | 3.15 KB | 0644 |
|
soma.aug | File | 1.14 KB | 0644 |
|
spacevars.aug | File | 1.42 KB | 0644 |
|
splunk.aug | File | 1.64 KB | 0644 |
|
squid.aug | File | 15.95 KB | 0644 |
|
ssh.aug | File | 3.66 KB | 0644 |
|
sshd.aug | File | 4 KB | 0644 |
|
sssd.aug | File | 861 B | 0644 |
|
star.aug | File | 941 B | 0644 |
|
stunnel.aug | File | 2.21 KB | 0644 |
|
subversion.aug | File | 2.75 KB | 0644 |
|
sudoers.aug | File | 19.98 KB | 0644 |
|
sysconfig.aug | File | 2.49 KB | 0644 |
|
sysconfig_route.aug | File | 2.55 KB | 0644 |
|
sysctl.aug | File | 923 B | 0644 |
|
syslog.aug | File | 7.24 KB | 0644 |
|
systemd.aug | File | 5.7 KB | 0644 |
|
termcap.aug | File | 1.03 KB | 0644 |
|
thttpd.aug | File | 1.31 KB | 0644 |
|
tmpfiles.aug | File | 3.03 KB | 0644 |
|
trapperkeeper.aug | File | 4.01 KB | 0644 |
|
tuned.aug | File | 387 B | 0644 |
|
up2date.aug | File | 2.21 KB | 0644 |
|
updatedb.aug | File | 1.13 KB | 0644 |
|
util.aug | File | 4.85 KB | 0644 |
|
vfstab.aug | File | 1.71 KB | 0644 |
|
vmware_config.aug | File | 702 B | 0644 |
|
vsftpd.aug | File | 2.72 KB | 0644 |
|
webmin.aug | File | 1.23 KB | 0644 |
|
wine.aug | File | 1.92 KB | 0644 |
|
xendconfsxp.aug | File | 1.07 KB | 0644 |
|
xinetd.aug | File | 4.02 KB | 0644 |
|
xml.aug | File | 6.33 KB | 0644 |
|
xorg.aug | File | 10.12 KB | 0644 |
|
xymon.aug | File | 2.26 KB | 0644 |
|
xymon_alerting.aug | File | 6.11 KB | 0644 |
|
yaml.aug | File | 1.54 KB | 0644 |
|
yum.aug | File | 2.19 KB | 0644 |
|