OXIESEC PANEL
- Current Dir:
/
/
snap
/
certbot
/
4730
/
usr
/
share
/
augeas
/
lenses
/
dist
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
06/10/2025 09:51:14 PM
rwxr-xr-x
📄
access.aug
3.58 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
activemq_conf.aug
1.47 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
activemq_xml.aug
864 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
afs_cellalias.aug
1.56 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
aliases.aug
2.18 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
anaconda.aug
775 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
anacron.aug
2.49 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
approx.aug
1.26 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
apt_update_manager.aug
1.11 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
aptcacherngsecurity.aug
726 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
aptconf.aug
3.9 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
aptpreferences.aug
1.79 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
aptsources.aug
1.98 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
authinfo2.aug
1.44 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
authorized_keys.aug
1.84 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
authselectpam.aug
3.7 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
automaster.aug
3.31 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
automounter.aug
4.05 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
avahi.aug
1.38 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
backuppchosts.aug
1014 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
bbhosts.aug
4.24 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
bootconf.aug
3.65 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
build.aug
16.65 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
cachefilesd.aug
2 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
carbon.aug
1.54 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
ceph.aug
719 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
cgconfig.aug
3.37 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
cgrules.aug
2.38 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
channels.aug
3.84 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
chrony.aug
13.79 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
clamav.aug
1.72 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
cmdline.aug
506 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
cobblermodules.aug
398 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
cobblersettings.aug
2.24 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
cockpit.aug
1.96 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
collectd.aug
869 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
cpanel.aug
824 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
cron.aug
4.05 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
cron_user.aug
1.26 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
crypttab.aug
3.08 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
csv.aug
1.18 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
cups.aug
459 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
cyrus_imapd.aug
1.51 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
darkice.aug
773 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
debctrl.aug
3.61 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
desktop.aug
1.39 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
devfsrules.aug
619 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
device_map.aug
620 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
dhclient.aug
6.69 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
dhcpd.aug
20.88 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
dns_zone.aug
2.89 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
dnsmasq.aug
2.16 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
dovecot.aug
3.98 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
dpkg.aug
2.78 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
dput.aug
2.16 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
erlang.aug
4.33 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
ethers.aug
663 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
exports.aug
2.37 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
fai_diskconfig.aug
9.28 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
fail2ban.aug
1.79 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
fonts.aug
819 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
fstab.aug
1.23 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
fuse.aug
871 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
gdm.aug
1.8 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
getcap.aug
1.57 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
group.aug
1.66 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
grub.aug
11.05 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
grubenv.aug
508 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
gshadow.aug
2.19 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
gtkbookmarks.aug
855 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
host_conf.aug
1.9 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
hostname.aug
435 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
hosts.aug
485 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
hosts_access.aug
4.32 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
htpasswd.aug
1.02 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
httpd.aug
7.35 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
inetd.aug
6.22 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
inifile.aug
15.49 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
inittab.aug
780 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
inputrc.aug
1.62 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
interfaces.aug
4.62 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
iproute2.aug
323 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
iptables.aug
2.64 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
iscsid.aug
684 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
jaas.aug
1.57 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
jettyrealm.aug
1.52 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
jmxaccess.aug
1.35 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
jmxpassword.aug
1.34 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
json.aug
2.15 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
kdump.aug
3.06 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
keepalived.aug
10.73 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
known_hosts.aug
1.93 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
koji.aug
898 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
krb5.aug
6.98 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
ldif.aug
7.65 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
ldso.aug
1.06 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
lightdm.aug
1.75 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
limits.aug
2.02 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
login_defs.aug
615 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
logrotate.aug
4.23 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
logwatch.aug
1.44 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
lokkit.aug
2.16 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
lvm.aug
2.03 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
mailscanner.aug
1.66 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
mailscanner_rules.aug
2.84 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
masterpasswd.aug
4.36 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
mcollective.aug
1.09 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
mdadm_conf.aug
10.05 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
memcached.aug
1.24 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
mke2fs.aug
6.29 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
modprobe.aug
3.34 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
modules.aug
741 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
modules_conf.aug
1.04 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
mongodbserver.aug
1.17 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
monit.aug
2.13 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
multipath.aug
4.21 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
mysql.aug
1.95 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
nagioscfg.aug
2.09 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
nagiosobjects.aug
1.57 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
netmasks.aug
1.69 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
networkmanager.aug
2.18 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
networks.aug
1.09 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
nginx.aug
3.65 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
nrpe.aug
1.78 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
nslcd.aug
9.87 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
nsswitch.aug
2.33 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
ntp.aug
5.29 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
ntpd.aug
4.75 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
odbc.aug
1.42 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
opendkim.aug
3.1 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
openshift_config.aug
2.46 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
openshift_http.aug
1.03 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
openshift_quickstarts.aug
1.02 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
openvpn.aug
22.28 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
oz.aug
1.35 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
pagekite.aug
2.6 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
pam.aug
2.58 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
pamconf.aug
1.23 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
passwd.aug
3.52 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
pbuilder.aug
638 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
pg_hba.aug
2.97 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
pgbouncer.aug
1.43 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
php.aug
2.34 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
phpvars.aug
3.85 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
postfix_access.aug
771 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
postfix_main.aug
1.52 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
postfix_master.aug
1.9 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
postfix_passwordmap.aug
1.28 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
postfix_sasl_smtpd.aug
697 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
postfix_transport.aug
1.48 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
postfix_virtual.aug
1.32 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
postgresql.aug
2.1 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
properties.aug
2.3 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
protocols.aug
1.05 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
puppet.aug
1.52 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
puppet_auth.aug
1.95 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
puppetfile.aug
2.27 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
puppetfileserver.aug
3.12 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
pylonspaste.aug
2.3 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
pythonpaste.aug
1.99 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
qpid.aug
670 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
quote.aug
6.71 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
rabbitmq.aug
4.69 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
radicale.aug
1.48 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
rancid.aug
927 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
redis.aug
6.5 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
reprepro_uploaders.aug
5.47 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
resolv.aug
4.03 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
rhsm.aug
1.1 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
rmt.aug
788 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
rsyncd.aug
1.97 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
rsyslog.aug
3.27 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
rtadvd.aug
854 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
rx.aug
4.2 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
samba.aug
1.71 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
schroot.aug
1.79 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
securetty.aug
450 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
semanage.aug
1.02 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
sep.aug
1.28 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
services.aug
2.82 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
shadow.aug
2.35 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
shells.aug
745 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
shellvars.aug
12.02 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
shellvars_list.aug
1.74 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
simplelines.aug
1.13 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
simplevars.aug
1.4 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
sip_conf.aug
1.61 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
slapd.aug
5.2 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
smbusers.aug
781 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
solaris_system.aug
3.15 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
soma.aug
1.14 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
sos.aug
807 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
spacevars.aug
1.42 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
splunk.aug
1.64 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
squid.aug
15.95 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
ssh.aug
4.39 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
sshd.aug
4.74 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
sssd.aug
861 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
star.aug
941 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
strongswan.aug
1.63 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
stunnel.aug
2.21 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
subversion.aug
2.75 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
sudoers.aug
20.08 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
sysconfig.aug
2.49 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
sysconfig_route.aug
2.55 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
sysctl.aug
1.36 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
syslog.aug
7.33 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
systemd.aug
6 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
termcap.aug
1.03 KB
03/31/2024 05:41:49 PM
rw-r--r--
📁
tests
-
06/10/2025 09:51:14 PM
rwxr-xr-x
📄
thttpd.aug
1.31 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
tinc.aug
1.08 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
tmpfiles.aug
3.16 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
toml.aug
4.24 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
trapperkeeper.aug
4.01 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
tuned.aug
387 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
up2date.aug
2.21 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
updatedb.aug
1.13 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
util.aug
4.85 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
vfstab.aug
1.71 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
vmware_config.aug
702 bytes
03/31/2024 05:41:49 PM
rw-r--r--
📄
vsftpd.aug
2.72 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
webmin.aug
1.23 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
wine.aug
1.92 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
xendconfsxp.aug
1.07 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
xinetd.aug
4.02 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
xml.aug
6.33 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
xorg.aug
10.43 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
xymon.aug
2.26 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
xymon_alerting.aug
6.11 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
yaml.aug
1.54 KB
03/31/2024 05:41:49 PM
rw-r--r--
📄
yum.aug
2.19 KB
03/31/2024 05:41:49 PM
rw-r--r--
Editing: interfaces.aug
Close
(* Interfaces module for Augeas Author: Free Ekanayaka <free@64studio.com> Reference: man interfaces *) module Interfaces = autoload xfm (************************************************************************ * USEFUL PRIMITIVES *************************************************************************) let eol = Util.eol (* Define separators *) (* a line can be extended across multiple lines by making the last *) (* character a backslash *) let sep_spc = del /([ \t]+|[ \t]*\\\\\n[ \t]*)/ " " (* Define fields *) let sto_to_eol = store /([^\\ \t\n].*[^\\ \t\n]|[^\\ \t\n])/ . eol let sto_to_spc = store /[^\\ \t\n]+/ (* Define comments and empty lines *) (* note that the comment definition from Util does not support *) (* splitting lines with a backlash *) let comment = Util.comment let empty = Util.empty (* Define tree stanza_ids *) let stanza_id (t:string) = key t . sep_spc . sto_to_spc let stanza_param (l:string) = [ sep_spc . label l . sto_to_spc ] (* Define reserved words and multi-value options *) let stanza_word = /(source(-directory)?|iface|auto|allow-[a-z-]+|mapping|bond-slaves|bridge-ports)/ (* Define stanza option indentation *) let stanza_indent = del /[ \t]*/ " " (* Define additional lines for multi-line stanzas *) let stanza_option = [ stanza_indent . key ( /[a-z0-9_-]+/ - stanza_word ) . sep_spc . sto_to_eol ] (* Define space-separated array *) let array (r:regexp) (t:string) = del r t . label t . counter t . [ sep_spc . seq t . sto_to_spc ]+ (************************************************************************ * AUTO *************************************************************************) let auto = [ array /(allow-)?auto/ "auto" . eol ] (************************************************************************ * GENERIC ALLOW *************************************************************************) let allow = [ key ( /allow-[a-z-]+/ - "allow-auto" ) . counter "allow_seq" . [ sep_spc . seq "allow_seq" . sto_to_spc ]+ . eol ] (************************************************************************ * MAPPING *************************************************************************) let mapping = [ stanza_id "mapping" . eol . (stanza_option|comment|empty)+ ] (************************************************************************ * IFACE *************************************************************************) let multi_option (t:string) = [ stanza_indent . array t t . eol ] let iface = [ Util.indent . stanza_id "iface" . stanza_param "family" . stanza_param "method" . eol . ( stanza_option | multi_option "bond-slaves" | multi_option "bridge-ports" | comment | empty )* ] (************************************************************************ * SOURCE *************************************************************************) let source = [ key "source" . sep_spc . sto_to_eol ] (************************************************************************ * SOURCE-DIRECTORY *************************************************************************) let source_directory = [ key "source-directory" . sep_spc . sto_to_eol ] (************************************************************************ * STANZAS *************************************************************************) (* The auto and hotplug stanzas always consist of one line only, while iface and mapping can spand along more lines. Comment nodes are inserted in the tree as direct children of the root node only when they come after an auto or hotplug stanza, otherwise they are considered part of an iface or mapping block *) let stanza_single = (auto|allow|source|source_directory) . (comment|empty)* let stanza_multi = iface|mapping (************************************************************************ * LENS & FILTER *************************************************************************) let lns = (comment|empty)* . (stanza_multi | stanza_single)* let filter = (incl "/etc/network/interfaces") . (incl "/etc/network/interfaces.d/*") . Util.stdexcl let xfm = transform lns filter