golden hour
/opt/osquery/share/osquery/lenses
⬆️ Go Up
Upload
File/Folder
Size
Actions
COPYING
25.91 KB
Del
OK
access.aug
3.58 KB
Del
OK
activemq_conf.aug
1.47 KB
Del
OK
activemq_xml.aug
864 B
Del
OK
afs_cellalias.aug
1.56 KB
Del
OK
aliases.aug
2.18 KB
Del
OK
anaconda.aug
775 B
Del
OK
anacron.aug
2.49 KB
Del
OK
approx.aug
1.26 KB
Del
OK
apt_update_manager.aug
1.11 KB
Del
OK
aptcacherngsecurity.aug
726 B
Del
OK
aptconf.aug
3.9 KB
Del
OK
aptpreferences.aug
1.79 KB
Del
OK
aptsources.aug
1.98 KB
Del
OK
authorized_keys.aug
1.84 KB
Del
OK
automaster.aug
3.31 KB
Del
OK
automounter.aug
4.05 KB
Del
OK
avahi.aug
1.38 KB
Del
OK
backuppchosts.aug
1014 B
Del
OK
bbhosts.aug
4.24 KB
Del
OK
bootconf.aug
3.65 KB
Del
OK
build.aug
16.65 KB
Del
OK
cachefilesd.aug
2 KB
Del
OK
carbon.aug
1.54 KB
Del
OK
ceph.aug
719 B
Del
OK
cgconfig.aug
3.37 KB
Del
OK
cgrules.aug
2.38 KB
Del
OK
channels.aug
3.84 KB
Del
OK
chrony.aug
12.87 KB
Del
OK
clamav.aug
1.53 KB
Del
OK
cobblermodules.aug
398 B
Del
OK
cobblersettings.aug
2.24 KB
Del
OK
collectd.aug
869 B
Del
OK
cpanel.aug
824 B
Del
OK
cron.aug
4.05 KB
Del
OK
cron_user.aug
1.26 KB
Del
OK
crypttab.aug
3.01 KB
Del
OK
csv.aug
1.18 KB
Del
OK
cups.aug
459 B
Del
OK
cyrus_imapd.aug
1.51 KB
Del
OK
darkice.aug
773 B
Del
OK
debctrl.aug
3.61 KB
Del
OK
desktop.aug
1.39 KB
Del
OK
devfsrules.aug
619 B
Del
OK
device_map.aug
620 B
Del
OK
dhclient.aug
6.69 KB
Del
OK
dhcpd.aug
20.88 KB
Del
OK
dns_zone.aug
2.89 KB
Del
OK
dnsmasq.aug
2.16 KB
Del
OK
dovecot.aug
3.98 KB
Del
OK
dpkg.aug
2.78 KB
Del
OK
dput.aug
2.16 KB
Del
OK
erlang.aug
4.33 KB
Del
OK
ethers.aug
663 B
Del
OK
exports.aug
2.37 KB
Del
OK
fai_diskconfig.aug
9.28 KB
Del
OK
fonts.aug
819 B
Del
OK
fstab.aug
1.23 KB
Del
OK
fuse.aug
871 B
Del
OK
gdm.aug
1.8 KB
Del
OK
getcap.aug
1.57 KB
Del
OK
group.aug
1.66 KB
Del
OK
grub.aug
11.04 KB
Del
OK
grubenv.aug
508 B
Del
OK
gshadow.aug
2.19 KB
Del
OK
gtkbookmarks.aug
855 B
Del
OK
host_conf.aug
1.9 KB
Del
OK
hostname.aug
435 B
Del
OK
hosts.aug
485 B
Del
OK
hosts_access.aug
4.32 KB
Del
OK
htpasswd.aug
1.02 KB
Del
OK
httpd.aug
7.35 KB
Del
OK
inetd.aug
6.22 KB
Del
OK
inifile.aug
15.49 KB
Del
OK
inittab.aug
780 B
Del
OK
inputrc.aug
1.62 KB
Del
OK
interfaces.aug
4.62 KB
Del
OK
iproute2.aug
323 B
Del
OK
iptables.aug
2.64 KB
Del
OK
iscsid.aug
684 B
Del
OK
jaas.aug
1.57 KB
Del
OK
jettyrealm.aug
1.52 KB
Del
OK
jmxaccess.aug
1.35 KB
Del
OK
jmxpassword.aug
1.34 KB
Del
OK
json.aug
2.15 KB
Del
OK
kdump.aug
2.91 KB
Del
OK
keepalived.aug
10.7 KB
Del
OK
known_hosts.aug
1.93 KB
Del
OK
koji.aug
898 B
Del
OK
krb5.aug
6.16 KB
Del
OK
ldif.aug
7.65 KB
Del
OK
ldso.aug
1.06 KB
Del
OK
lightdm.aug
1.75 KB
Del
OK
limits.aug
2.02 KB
Del
OK
login_defs.aug
615 B
Del
OK
logrotate.aug
4.22 KB
Del
OK
logwatch.aug
1.44 KB
Del
OK
lokkit.aug
2.16 KB
Del
OK
lvm.aug
2.03 KB
Del
OK
mailscanner.aug
1.66 KB
Del
OK
mailscanner_rules.aug
2.84 KB
Del
OK
masterpasswd.aug
4.36 KB
Del
OK
mcollective.aug
1.09 KB
Del
OK
mdadm_conf.aug
10.05 KB
Del
OK
memcached.aug
1.24 KB
Del
OK
mke2fs.aug
4.67 KB
Del
OK
modprobe.aug
3.34 KB
Del
OK
modules.aug
741 B
Del
OK
modules_conf.aug
1.04 KB
Del
OK
mongodbserver.aug
1.17 KB
Del
OK
monit.aug
2.13 KB
Del
OK
multipath.aug
4.21 KB
Del
OK
mysql.aug
1.95 KB
Del
OK
nagioscfg.aug
2.09 KB
Del
OK
nagiosobjects.aug
1.57 KB
Del
OK
netmasks.aug
1.69 KB
Del
OK
networkmanager.aug
2 KB
Del
OK
networks.aug
1.09 KB
Del
OK
nginx.aug
3.65 KB
Del
OK
nrpe.aug
1.75 KB
Del
OK
nslcd.aug
9.87 KB
Del
OK
nsswitch.aug
2.33 KB
Del
OK
ntp.aug
5.29 KB
Del
OK
ntpd.aug
4.75 KB
Del
OK
odbc.aug
1.42 KB
Del
OK
opendkim.aug
3.08 KB
Del
OK
openshift_config.aug
2.46 KB
Del
OK
openshift_http.aug
1.03 KB
Del
OK
openshift_quickstarts.aug
1.02 KB
Del
OK
openvpn.aug
22.28 KB
Del
OK
oz.aug
1.35 KB
Del
OK
pagekite.aug
2.6 KB
Del
OK
pam.aug
2.58 KB
Del
OK
pamconf.aug
1.23 KB
Del
OK
passwd.aug
3.52 KB
Del
OK
pbuilder.aug
638 B
Del
OK
pg_hba.aug
2.97 KB
Del
OK
pgbouncer.aug
1.43 KB
Del
OK
php.aug
2.34 KB
Del
OK
phpvars.aug
3.85 KB
Del
OK
postfix_access.aug
771 B
Del
OK
postfix_main.aug
1.52 KB
Del
OK
postfix_master.aug
1.9 KB
Del
OK
postfix_passwordmap.aug
1.28 KB
Del
OK
postfix_sasl_smtpd.aug
697 B
Del
OK
postfix_transport.aug
1.48 KB
Del
OK
postfix_virtual.aug
1.32 KB
Del
OK
postgresql.aug
2.1 KB
Del
OK
properties.aug
2.3 KB
Del
OK
protocols.aug
1.05 KB
Del
OK
puppet.aug
1.52 KB
Del
OK
puppet_auth.aug
1.95 KB
Del
OK
puppetfile.aug
2.27 KB
Del
OK
puppetfileserver.aug
3.12 KB
Del
OK
pylonspaste.aug
2.3 KB
Del
OK
pythonpaste.aug
1.99 KB
Del
OK
qpid.aug
670 B
Del
OK
quote.aug
6.71 KB
Del
OK
rabbitmq.aug
4.69 KB
Del
OK
radicale.aug
1.48 KB
Del
OK
rancid.aug
927 B
Del
OK
redis.aug
4.96 KB
Del
OK
reprepro_uploaders.aug
5.47 KB
Del
OK
resolv.aug
3.87 KB
Del
OK
rhsm.aug
1.1 KB
Del
OK
rmt.aug
788 B
Del
OK
rsyncd.aug
1.97 KB
Del
OK
rsyslog.aug
3.17 KB
Del
OK
rtadvd.aug
854 B
Del
OK
rx.aug
4.06 KB
Del
OK
samba.aug
1.71 KB
Del
OK
schroot.aug
1.79 KB
Del
OK
securetty.aug
450 B
Del
OK
semanage.aug
859 B
Del
OK
sep.aug
1.28 KB
Del
OK
services.aug
2.82 KB
Del
OK
shadow.aug
2.35 KB
Del
OK
shells.aug
745 B
Del
OK
shellvars.aug
11.97 KB
Del
OK
shellvars_list.aug
1.74 KB
Del
OK
simplelines.aug
1.13 KB
Del
OK
simplevars.aug
1.34 KB
Del
OK
sip_conf.aug
1.61 KB
Del
OK
slapd.aug
5.2 KB
Del
OK
smbusers.aug
781 B
Del
OK
solaris_system.aug
3.15 KB
Del
OK
soma.aug
1.14 KB
Del
OK
spacevars.aug
1.42 KB
Del
OK
splunk.aug
1.64 KB
Del
OK
squid.aug
15.95 KB
Del
OK
ssh.aug
3.91 KB
Del
OK
sshd.aug
4.01 KB
Del
OK
sssd.aug
861 B
Del
OK
star.aug
941 B
Del
OK
strongswan.aug
1.63 KB
Del
OK
stunnel.aug
2.21 KB
Del
OK
subversion.aug
2.75 KB
Del
OK
sudoers.aug
20.03 KB
Del
OK
sysconfig.aug
2.49 KB
Del
OK
sysconfig_route.aug
2.55 KB
Del
OK
sysctl.aug
923 B
Del
OK
syslog.aug
7.33 KB
Del
OK
systemd.aug
5.88 KB
Del
OK
termcap.aug
1.03 KB
Del
OK
thttpd.aug
1.31 KB
Del
OK
tmpfiles.aug
3.03 KB
Del
OK
toml.aug
4.06 KB
Del
OK
trapperkeeper.aug
4.01 KB
Del
OK
tuned.aug
387 B
Del
OK
up2date.aug
2.21 KB
Del
OK
updatedb.aug
1.13 KB
Del
OK
util.aug
4.85 KB
Del
OK
vfstab.aug
1.71 KB
Del
OK
vmware_config.aug
702 B
Del
OK
vsftpd.aug
2.72 KB
Del
OK
webmin.aug
1.23 KB
Del
OK
wine.aug
1.92 KB
Del
OK
xendconfsxp.aug
1.07 KB
Del
OK
xinetd.aug
4.02 KB
Del
OK
xml.aug
6.33 KB
Del
OK
xorg.aug
10.43 KB
Del
OK
xymon.aug
2.26 KB
Del
OK
xymon_alerting.aug
6.11 KB
Del
OK
yaml.aug
1.54 KB
Del
OK
yum.aug
2.19 KB
Del
OK
Edit: build.aug
(* Module: Build Generic functions to build lenses Author: Raphael Pinson <raphink@gmail.com> About: License This file is licensed under the LGPL v2+, like the rest of Augeas. About: Reference This file provides generic functions to build Augeas lenses *) module Build = let eol = Util.eol (************************************************************************ * Group: GENERIC CONSTRUCTIONS ************************************************************************) (************************************************************************ * View: brackets * Put a lens inside brackets * * Parameters: * l:lens - the left bracket lens * r: lens - the right bracket lens * lns:lens - the lens to put inside brackets ************************************************************************) let brackets (l:lens) (r:lens) (lns:lens) = l . lns . r (************************************************************************ * Group: LIST CONSTRUCTIONS ************************************************************************) (************************************************************************ * View: list * Build a list of identical lenses separated with a given separator * (at least 2 elements) * * Parameters: * lns:lens - the lens to repeat in the list * sep:lens - the separator lens, which can be taken from the <Sep> module ************************************************************************) let list (lns:lens) (sep:lens) = lns . ( sep . lns )+ (************************************************************************ * View: opt_list * Same as <list>, but there might be only one element in the list * * Parameters: * lns:lens - the lens to repeat in the list * sep:lens - the separator lens, which can be taken from the <Sep> module ************************************************************************) let opt_list (lns:lens) (sep:lens) = lns . ( sep . lns )* (************************************************************************ * Group: LABEL OPERATIONS ************************************************************************) (************************************************************************ * View: xchg * Replace a pattern with a different label in the tree, * thus emulating a key but allowing to replace the keyword * with a different value than matched * * Parameters: * m:regexp - the pattern to match * d:string - the default value when a node in created * l:string - the label to apply for such nodes ************************************************************************) let xchg (m:regexp) (d:string) (l:string) = del m d . label l (************************************************************************ * View: xchgs * Same as <xchg>, but the pattern is the default string * * Parameters: * m:string - the string to replace, also used as default * l:string - the label to apply for such nodes ************************************************************************) let xchgs (m:string) (l:string) = xchg m m l (************************************************************************ * Group: SUBNODE CONSTRUCTIONS ************************************************************************) (************************************************************************ * View: key_value_line * A subnode with a keyword, a separator and a storing lens, * and an end of line * * Parameters: * kw:regexp - the pattern to match as key * sep:lens - the separator lens, which can be taken from the <Sep> module * sto:lens - the storing lens ************************************************************************) let key_value_line (kw:regexp) (sep:lens) (sto:lens) = [ key kw . sep . sto . eol ] (************************************************************************ * View: key_value_line_comment * Same as <key_value_line>, but allows to have a comment in the end of a line * and an end of line * * Parameters: * kw:regexp - the pattern to match as key * sep:lens - the separator lens, which can be taken from the <Sep> module * sto:lens - the storing lens * comment:lens - the comment lens, which can be taken from <Util> ************************************************************************) let key_value_line_comment (kw:regexp) (sep:lens) (sto:lens) (comment:lens) = [ key kw . sep . sto . (eol|comment) ] (************************************************************************ * View: key_value * Same as <key_value_line>, but does not end with an end of line * * Parameters: * kw:regexp - the pattern to match as key * sep:lens - the separator lens, which can be taken from the <Sep> module * sto:lens - the storing lens ************************************************************************) let key_value (kw: regexp) (sep:lens) (sto:lens) = [ key kw . sep . sto ] (************************************************************************ * View: key_ws_value * * Store a key/value pair where key and value are separated by whitespace * and the value goes to the end of the line. Leading and trailing * whitespace is stripped from the value. The end of line is consumed by * this lens * * Parameters: * kw:regexp - the pattern to match as key ************************************************************************) let key_ws_value (kw:regexp) = key_value_line kw Util.del_ws_spc (store Rx.space_in) (************************************************************************ * View: flag * A simple flag subnode, consisting of a single key * * Parameters: * kw:regexp - the pattern to match as key ************************************************************************) let flag (kw:regexp) = [ key kw ] (************************************************************************ * View: flag_line * A simple flag line, consisting of a single key * * Parameters: * kw:regexp - the pattern to match as key ************************************************************************) let flag_line (kw:regexp) = [ key kw . eol ] (************************************************************************ * Group: BLOCK CONSTRUCTIONS ************************************************************************) (************************************************************************ * View: block_generic * A block enclosed in brackets * * Parameters: * entry:lens - the entry to be stored inside the block. * This entry should include <Util.empty> * or its equivalent if necessary. * entry_noindent:lens - the entry to be stored inside the block, * without indentation. * This entry should not include <Util.empty> * entry_noeol:lens - the entry to be stored inside the block, * without eol. * This entry should not include <Util.empty> * entry_noindent_noeol:lens - the entry to be stored inside the block, * without indentation or eol. * This entry should not include <Util.empty> * comment:lens - the comment lens used in the block * comment_noindent:lens - the comment lens used in the block, * without indentation. * ldelim_re:regexp - regexp for the left delimiter * rdelim_re:regexp - regexp for the right delimiter * ldelim_default:string - default value for the left delimiter * rdelim_default:string - default value for the right delimiter ************************************************************************) let block_generic (entry:lens) (entry_noindent:lens) (entry_noeol:lens) (entry_noindent_noeol:lens) (comment:lens) (comment_noindent:lens) (ldelim_re:regexp) (rdelim_re:regexp) (ldelim_default:string) (rdelim_default:string) = let block_single = entry_noindent_noeol | comment_noindent in let block_start = entry_noindent | comment_noindent in let block_middle = (entry | comment)* in let block_end = entry_noeol | comment in del ldelim_re ldelim_default . ( ( block_start . block_middle . block_end ) | block_single ) . del rdelim_re rdelim_default (************************************************************************ * View: block_setdefault * A block enclosed in brackets * * Parameters: * entry:lens - the entry to be stored inside the block. * This entry should not include <Util.empty>, * <Util.comment> or <Util.comment_noindent>, * should not be indented or finish with an eol. * ldelim_re:regexp - regexp for the left delimiter * rdelim_re:regexp - regexp for the left delimiter * ldelim_default:string - default value for the left delimiter * rdelim_default:string - default value for the right delimiter ************************************************************************) let block_setdelim (entry:lens) (ldelim_re:regexp) (rdelim_re:regexp) (ldelim_default:string) (rdelim_default:string) = block_generic (Util.empty | Util.indent . entry . eol) (entry . eol) (Util.indent . entry) entry Util.comment Util.comment_noindent ldelim_re rdelim_re ldelim_default rdelim_default (* Variable: block_ldelim_re *) let block_ldelim_re = /[ \t\n]+\{[ \t\n]*/ (* Variable: block_rdelim_re *) let block_rdelim_re = /[ \t\n]*\}/ (* Variable: block_ldelim_default *) let block_ldelim_default = " {\n" (* Variable: block_rdelim_default *) let block_rdelim_default = "}" (************************************************************************ * View: block * A block enclosed in brackets * * Parameters: * entry:lens - the entry to be stored inside the block. * This entry should not include <Util.empty>, * <Util.comment> or <Util.comment_noindent>, * should not be indented or finish with an eol. ************************************************************************) let block (entry:lens) = block_setdelim entry block_ldelim_re block_rdelim_re block_ldelim_default block_rdelim_default (* Variable: block_ldelim_newlines_re *) let block_ldelim_newlines_re = /[ \t\n]*\{([ \t\n]*\n)?/ (* Variable: block_rdelim_newlines_re *) let block_rdelim_newlines_re = /[ \t]*\}/ (* Variable: block_ldelim_newlines_default *) let block_ldelim_newlines_default = "\n{\n" (* Variable: block_rdelim_newlines_default *) let block_rdelim_newlines_default = "}" (************************************************************************ * View: block_newline * A block enclosed in brackets, with newlines forced * and indentation defaulting to a tab. * * Parameters: * entry:lens - the entry to be stored inside the block. * This entry should not include <Util.empty>, * <Util.comment> or <Util.comment_noindent>, * should be indented and finish with an eol. ************************************************************************) let block_newlines (entry:lens) (comment:lens) = del block_ldelim_newlines_re block_ldelim_newlines_default . ((entry | comment) . (Util.empty | entry | comment)*)? . del block_rdelim_newlines_re block_rdelim_newlines_default (************************************************************************ * View: block_newlines_spc * A block enclosed in brackets, with newlines forced * and indentation defaulting to a tab. The opening brace * must be preceded by whitespace * * Parameters: * entry:lens - the entry to be stored inside the block. * This entry should not include <Util.empty>, * <Util.comment> or <Util.comment_noindent>, * should be indented and finish with an eol. ************************************************************************) let block_newlines_spc (entry:lens) (comment:lens) = del (/[ \t\n]/ . block_ldelim_newlines_re) block_ldelim_newlines_default . ((entry | comment) . (Util.empty | entry | comment)*)? . del block_rdelim_newlines_re block_rdelim_newlines_default (************************************************************************ * View: named_block * A named <block> enclosed in brackets * * Parameters: * kw:regexp - the regexp for the block name * entry:lens - the entry to be stored inside the block * this entry should not include <Util.empty> ************************************************************************) let named_block (kw:regexp) (entry:lens) = [ key kw . block entry . eol ] (************************************************************************ * Group: COMBINATORICS ************************************************************************) (************************************************************************ * View: combine_two_ord * Combine two lenses, ensuring first lens is first * * Parameters: * a:lens - the first lens * b:lens - the second lens ************************************************************************) let combine_two_ord (a:lens) (b:lens) = a . b (************************************************************************ * View: combine_two * Combine two lenses * * Parameters: * a:lens - the first lens * b:lens - the second lens ************************************************************************) let combine_two (a:lens) (b:lens) = combine_two_ord a b | combine_two_ord b a (************************************************************************ * View: combine_two_opt_ord * Combine two lenses optionally, ensuring first lens is first * (a, and optionally b) * * Parameters: * a:lens - the first lens * b:lens - the second lens ************************************************************************) let combine_two_opt_ord (a:lens) (b:lens) = a . b? (************************************************************************ * View: combine_two_opt * Combine two lenses optionally * (either a, b, or both, in any order) * * Parameters: * a:lens - the first lens * b:lens - the second lens ************************************************************************) let combine_two_opt (a:lens) (b:lens) = combine_two_opt_ord a b | combine_two_opt_ord b a (************************************************************************ * View: combine_three_ord * Combine three lenses, ensuring first lens is first * (a followed by either b, c, in any order) * * Parameters: * a:lens - the first lens * b:lens - the second lens * c:lens - the third lens ************************************************************************) let combine_three_ord (a:lens) (b:lens) (c:lens) = combine_two_ord a (combine_two b c) (************************************************************************ * View: combine_three * Combine three lenses * * Parameters: * a:lens - the first lens * b:lens - the second lens * c:lens - the third lens ************************************************************************) let combine_three (a:lens) (b:lens) (c:lens) = combine_three_ord a b c | combine_three_ord b a c | combine_three_ord c b a (************************************************************************ * View: combine_three_opt_ord * Combine three lenses optionally, ensuring first lens is first * (a followed by either b, c, or any of them, in any order) * * Parameters: * a:lens - the first lens * b:lens - the second lens * c:lens - the third lens ************************************************************************) let combine_three_opt_ord (a:lens) (b:lens) (c:lens) = combine_two_opt_ord a (combine_two_opt b c) (************************************************************************ * View: combine_three_opt * Combine three lenses optionally * (either a, b, c, or any of them, in any order) * * Parameters: * a:lens - the first lens * b:lens - the second lens * c:lens - the third lens ************************************************************************) let combine_three_opt (a:lens) (b:lens) (c:lens) = combine_three_opt_ord a b c | combine_three_opt_ord b a c | combine_three_opt_ord c b a
Save