Initial commit
This commit is contained in:
@@ -0,0 +1,91 @@
|
||||
# Example configuration file for AIDE.
|
||||
|
||||
@@define DBDIR /usr/lib/aide
|
||||
@@define LOGDIR /usr/lib/aide/logs
|
||||
|
||||
# The location of the database to be read.
|
||||
database_in=file:@@{DBDIR}/aide.db.gz
|
||||
|
||||
# The location of the database to be written.
|
||||
#database_out=sql:host:port:database:login_name:passwd:table
|
||||
#database_out=file:aide.db.new
|
||||
database_out=file:@@{DBDIR}/aide.db.gz
|
||||
|
||||
# Whether to gzip the output to database
|
||||
gzip_dbout=yes
|
||||
|
||||
# Default.
|
||||
log_level=warning
|
||||
|
||||
report_url=file:@@{LOGDIR}/aide.log
|
||||
report_url=stdout
|
||||
#report_url=stderr
|
||||
#NOT IMPLEMENTED report_url=mailto:root@foo.com
|
||||
#NOT IMPLEMENTED report_url=syslog:LOG_AUTH
|
||||
|
||||
# These are the default rules.
|
||||
#
|
||||
#p: permissions
|
||||
#i: inode:
|
||||
#n: number of links
|
||||
#u: user
|
||||
#g: group
|
||||
#s: size
|
||||
#b: block count
|
||||
#m: mtime
|
||||
#a: atime
|
||||
#c: ctime
|
||||
#S: check for growing size
|
||||
#acl: Access Control Lists
|
||||
#selinux SELinux security context
|
||||
#xattrs: Extended file attributes
|
||||
#md5: md5 checksum
|
||||
#sha1: sha1 checksum
|
||||
#sha256: sha256 checksum
|
||||
#sha512: sha512 checksum
|
||||
#rmd160: rmd160 checksum
|
||||
#tiger: tiger checksum
|
||||
|
||||
#haval: haval checksum (MHASH only)
|
||||
#gost: gost checksum (MHASH only)
|
||||
#crc32: crc32 checksum (MHASH only)
|
||||
#whirlpool: whirlpool checksum (MHASH only)
|
||||
|
||||
FIPSR = p+u+g+s+acl+xattrs+sha256
|
||||
|
||||
#R: p+i+n+u+g+s+m+c+acl+selinux+xattrs+md5
|
||||
#L: p+i+n+u+g+acl+selinux+xattrs
|
||||
#E: Empty group
|
||||
#>: Growing logfile p+u+g+i+n+S+acl+selinux+xattrs
|
||||
|
||||
# You can create custom rules like this.
|
||||
# With MHASH...
|
||||
# ALLXTRAHASHES = sha1+rmd160+sha256+sha512+whirlpool+tiger+haval+gost+crc32
|
||||
ALLXTRAHASHES = sha1+rmd160+sha256+sha512+tiger
|
||||
# Everything but access time (Ie. all changes)
|
||||
EVERYTHING = R+ALLXTRAHASHES
|
||||
|
||||
# Sane, with multiple hashes
|
||||
# NORMAL = R+rmd160+sha256+whirlpool
|
||||
NORMAL = FIPSR+sha512
|
||||
|
||||
# For directories, don't bother doing hashes
|
||||
DIR = p+u+g+acl+xattrs
|
||||
|
||||
# Access control only
|
||||
PERMS = p+u+g+acl
|
||||
|
||||
# Logfile are special, in that they often change
|
||||
LOG = >
|
||||
|
||||
# Just do sha256 and sha512 hashes
|
||||
LSPP = FIPSR+sha512
|
||||
|
||||
# Some files get updated automatically, so the inode/ctime/mtime change
|
||||
# but we want to know when the data inside them changes
|
||||
DATAONLY = p+u+g+s+acl+xattrs+sha256
|
||||
|
||||
# Next decide what directories/files you want in the database.
|
||||
|
||||
# Check only permissions, inode, user and group for /etc, but
|
||||
# cover some important files closely.
|
||||
@@ -0,0 +1,74 @@
|
||||
SUMMARY = "Advanced Intrusion Detection Environment"
|
||||
HOMEPAGE = "https://aide.github.io"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
|
||||
DEPENDS = "bison-native libpcre"
|
||||
|
||||
SRC_URI = "https://github.com/aide/aide/releases/download/v${PV}/${BPN}-${PV}.tar.gz \
|
||||
file://aide.conf"
|
||||
|
||||
SRC_URI[sha256sum] = "c81505246f3ffc2e76036d43a77212ae82895b5881d9b9e25c1361b1a9b7a846"
|
||||
|
||||
UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
|
||||
|
||||
inherit autotools pkgconfig aide-base
|
||||
|
||||
PACKAGECONFIG ??=" mhash zlib e2fsattrs posix capabilities curl \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux audit', '', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'xattr', '', d)} \
|
||||
"
|
||||
PACKAGECONFIG[selinux] = "--with-selinux, --without-selinux, libselinux, libselinux"
|
||||
PACKAGECONFIG[zlib] = "--with-zlib, --without-zlib, zlib, zlib "
|
||||
PACKAGECONFIG[xattr] = "--with-xattr, --without-xattr, attr, attr"
|
||||
PACKAGECONFIG[curl] = "--with-curl, --without-curl, curl, libcurl"
|
||||
PACKAGECONFIG[audit] = "--with-audit, --without-audit,audit"
|
||||
PACKAGECONFIG[gcrypt] = "--with-gcrypt, --without-gcrypt, libgcrypt, libgcrypt"
|
||||
PACKAGECONFIG[mhash] = "--with-mhash, --without-mhash, libmhash, libmhash"
|
||||
PACKAGECONFIG[e2fsattrs] = "--with-e2fsattrs, --without-e2fsattrs, e2fsprogs, e2fsprogs"
|
||||
PACKAGECONFIG[capabilities] = "--with-capabilities, --without-capabilities, libcap, libcap"
|
||||
PACKAGECONFIG[posix] = "--with-posix-acl, --without-posix-acl, acl, acl"
|
||||
|
||||
|
||||
do_install[nostamp] = "1"
|
||||
|
||||
do_install:append () {
|
||||
install -d ${D}${libdir}/${PN}/logs
|
||||
install -d ${D}${sysconfdir}
|
||||
install ${WORKDIR}/aide.conf ${D}${sysconfdir}/
|
||||
|
||||
for dir in ${AIDE_INCLUDE_DIRS}; do
|
||||
echo "${dir} NORMAL" >> ${D}${sysconfdir}/aide.conf
|
||||
done
|
||||
for dir in ${AIDE_SKIP_DIRS}; do
|
||||
echo "!${dir}" >> ${D}${sysconfdir}/aide.conf
|
||||
done
|
||||
}
|
||||
|
||||
do_install:class-native () {
|
||||
install -d ${STAGING_AIDE_DIR}/bin
|
||||
install -d ${STAGING_AIDE_DIR}/lib/logs
|
||||
|
||||
install ${B}/aide ${STAGING_AIDE_DIR}/bin
|
||||
install ${WORKDIR}/aide.conf ${STAGING_AIDE_DIR}/
|
||||
|
||||
sed -i -s "s:\@\@define DBDIR.*:\@\@define DBDIR ${STAGING_AIDE_DIR}/lib:" ${STAGING_AIDE_DIR}/aide.conf
|
||||
sed -i -e "s:\@\@define LOGDIR.*:\@\@define LOGDIR ${STAGING_AIDE_DIR}/lib/logs:" ${STAGING_AIDE_DIR}/aide.conf
|
||||
}
|
||||
|
||||
CONF_FILE = "${sysconfdir}/aide.conf"
|
||||
|
||||
FILES:${PN} += "${libdir}/${PN} ${sysconfdir}/aide.conf"
|
||||
|
||||
pkg_postinst_ontarget:${PN} () {
|
||||
if [ ${AIDE_SCAN_POSTINIT} ]; then
|
||||
${bindir}/aide -i
|
||||
fi
|
||||
if [ ${AIDE_RESCAN_POSTINIT} && -e ${libdir}/aide/aide.db.gz ]; then
|
||||
${bindir}/aide -C
|
||||
fi
|
||||
}
|
||||
|
||||
RDEPENDS:${PN} = "bison libpcre"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
@@ -0,0 +1,42 @@
|
||||
SUMMARY = "CrowdSec is a free, modern & collaborative behavior detection engine, coupled with a global IP reputation network."
|
||||
|
||||
LICENSE = "MIT"
|
||||
LIC_FILES_CHKSUM = "file://src/import/LICENSE;md5=105e75b680b2ab82fa5718661b41f3bf"
|
||||
|
||||
SRC_URI = "git://github.com/crowdsecurity/crowdsec.git;branch=master;protocol=https"
|
||||
SRCREV = "73e0bbaf93070f4a640eb5a22212b5dcf26699de"
|
||||
|
||||
DEPENDS = "jq-native"
|
||||
|
||||
GO_IMPORT = "import"
|
||||
|
||||
inherit go
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
do_compile() {
|
||||
export GOARCH="${TARGET_GOARCH}"
|
||||
export GOROOT="${STAGING_LIBDIR_NATIVE}/${TARGET_SYS}/go"
|
||||
|
||||
# Pass the needed cflags/ldflags so that cgo
|
||||
# can find the needed headers files and libraries
|
||||
export CGO_ENABLED="1"
|
||||
export CFLAGS=""
|
||||
export LDFLAGS=""
|
||||
export CGO_CFLAGS="${BUILDSDK_CFLAGS} --sysroot=${STAGING_DIR_TARGET}"
|
||||
export CGO_LDFLAGS="${BUILDSDK_LDFLAGS} --sysroot=${STAGING_DIR_TARGET}"
|
||||
|
||||
cd ${S}/src/import
|
||||
oe_runmake release
|
||||
}
|
||||
|
||||
do_install_ () {
|
||||
chmod +x -R --silent ${B}/pkg
|
||||
}
|
||||
|
||||
|
||||
INSANE_SKIP:${PN} = "already-stripped"
|
||||
INSANE_SKIP:${PN}-dev = "ldflags"
|
||||
|
||||
RDEPENDS:${PN} = "go"
|
||||
RDEPENDS:${PN}-dev = "bash"
|
||||
@@ -0,0 +1,37 @@
|
||||
From b948d36a8ca8e04794381f0f6eba29daf7e3fd01 Mon Sep 17 00:00:00 2001
|
||||
From: Armin Kuster <akuster808@gmail.com>
|
||||
Date: Wed, 21 Apr 2021 00:56:53 +0000
|
||||
Subject: [PATCH 1/2] Makefile: drop running scrips @ install
|
||||
|
||||
Upstream-Status: Inappropriate [embedded specific]
|
||||
|
||||
Signed-off-by: Armin Kuster <akuster808@gmail.com>
|
||||
---
|
||||
src/Makefile | 4 ----
|
||||
1 file changed, 4 deletions(-)
|
||||
|
||||
diff --git a/src/Makefile b/src/Makefile
|
||||
index 06a7094c..dfb8cb58 100644
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -409,7 +409,6 @@ install-hybrid: install-server-generic
|
||||
install-server: install-server-generic
|
||||
|
||||
install-common: build
|
||||
- ./init/adduser.sh ${OSSEC_USER} ${OSSEC_USER_MAIL} ${OSSEC_USER_REM} ${OSSEC_GROUP} ${PREFIX}
|
||||
$(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) -d ${PREFIX}/
|
||||
$(call INSTALL_CMD,0750,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/logs
|
||||
$(call INSTALL_CMD,0660,${OSSEC_USER},${OSSEC_GROUP}) /dev/null ${PREFIX}/logs/ossec.log
|
||||
@@ -485,9 +484,6 @@ endif
|
||||
$(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) -d ${PREFIX}/var
|
||||
$(call INSTALL_CMD,0770,root,${OSSEC_GROUP}) -d ${PREFIX}/var/run
|
||||
|
||||
- ./init/fw-check.sh execute
|
||||
-
|
||||
-
|
||||
|
||||
install-server-generic: install-common
|
||||
$(call INSTALL_CMD,0660,${OSSEC_USER},${OSSEC_GROUP}) /dev/null ${PREFIX}/logs/active-responses.log
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -0,0 +1,251 @@
|
||||
From d9ec907881b72d42b4918f7cfb46516ce8e77772 Mon Sep 17 00:00:00 2001
|
||||
From: Armin Kuster <akuster808@gmail.com>
|
||||
Date: Sat, 24 Apr 2021 23:07:29 +0000
|
||||
Subject: [PATCH 2/2] Makefile: don't set uid/gid
|
||||
|
||||
Upstream-Status: Inappropriate [embedded specific]
|
||||
|
||||
Signed-off-by: Armin Kuster <akuster808@gmail.com>
|
||||
---
|
||||
src/Makefile | 166 +++++++++++++++++++++++++--------------------------
|
||||
1 file changed, 83 insertions(+), 83 deletions(-)
|
||||
|
||||
diff --git a/src/Makefile b/src/Makefile
|
||||
index dfb8cb58..a4d69ef6 100644
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -21,7 +21,7 @@ OSSEC_USER?=ossec
|
||||
OSSEC_USER_MAIL?=ossecm
|
||||
OSSEC_USER_REM?=ossecr
|
||||
|
||||
-INSTALL_CMD?=install -m $(1) -o $(2) -g $(3)
|
||||
+INSTALL_CMD?=install -m $(1)
|
||||
INSTALL_LOCALTIME?=yes
|
||||
INSTALL_RESOLVCONF?=yes
|
||||
|
||||
@@ -397,10 +397,10 @@ endif
|
||||
install: install-${TARGET}
|
||||
|
||||
install-agent: install-common
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-agentd ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) agent-auth ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-agentd ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) agent-auth ${PREFIX}/bin
|
||||
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/queue/rids
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/queue/rids
|
||||
|
||||
install-local: install-server-generic
|
||||
|
||||
@@ -409,129 +409,129 @@ install-hybrid: install-server-generic
|
||||
install-server: install-server-generic
|
||||
|
||||
install-common: build
|
||||
- $(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) -d ${PREFIX}/
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/logs
|
||||
- $(call INSTALL_CMD,0660,${OSSEC_USER},${OSSEC_GROUP}) /dev/null ${PREFIX}/logs/ossec.log
|
||||
-
|
||||
- $(call INSTALL_CMD,0550,root,0) -d ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-logcollector ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-syscheckd ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-execd ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) manage_agents ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ../contrib/util.sh ${PREFIX}/bin/
|
||||
- $(call INSTALL_CMD,0550,root,0) ${OSSEC_CONTROL_SRC} ${PREFIX}/bin/ossec-control
|
||||
+ $(call INSTALL_CMD,0550) -d ${PREFIX}/
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/logs
|
||||
+ $(call INSTALL_CMD,0660) /dev/null ${PREFIX}/logs/ossec.log
|
||||
+
|
||||
+ $(call INSTALL_CMD,0550) -d ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-logcollector ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-syscheckd ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-execd ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) manage_agents ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ../contrib/util.sh ${PREFIX}/bin/
|
||||
+ $(call INSTALL_CMD,0550) ${OSSEC_CONTROL_SRC} ${PREFIX}/bin/ossec-control
|
||||
|
||||
ifeq (${LUA_ENABLE},yes)
|
||||
- $(call INSTALL_CMD,0550,root,0) -d ${PREFIX}/lua
|
||||
- $(call INSTALL_CMD,0550,root,0) -d ${PREFIX}/lua/native
|
||||
- $(call INSTALL_CMD,0550,root,0) -d ${PREFIX}/lua/compiled
|
||||
- $(call INSTALL_CMD,0550,root,0) ${EXTERNAL_LUA}src/ossec-lua ${PREFIX}/bin/
|
||||
- $(call INSTALL_CMD,0550,root,0) ${EXTERNAL_LUA}src/ossec-luac ${PREFIX}/bin/
|
||||
+ $(call INSTALL_CMD,0550) -d ${PREFIX}/lua
|
||||
+ $(call INSTALL_CMD,0550) -d ${PREFIX}/lua/native
|
||||
+ $(call INSTALL_CMD,0550) -d ${PREFIX}/lua/compiled
|
||||
+ $(call INSTALL_CMD,0550) ${EXTERNAL_LUA}src/ossec-lua ${PREFIX}/bin/
|
||||
+ $(call INSTALL_CMD,0550) ${EXTERNAL_LUA}src/ossec-luac ${PREFIX}/bin/
|
||||
endif
|
||||
|
||||
- $(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) -d ${PREFIX}/queue
|
||||
- $(call INSTALL_CMD,0770,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/queue/alerts
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/queue/ossec
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/queue/syscheck
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/queue/diff
|
||||
+ $(call INSTALL_CMD,0550) -d ${PREFIX}/queue
|
||||
+ $(call INSTALL_CMD,0770) -d ${PREFIX}/queue/alerts
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/queue/ossec
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/queue/syscheck
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/queue/diff
|
||||
|
||||
- $(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) -d ${PREFIX}/etc
|
||||
+ $(call INSTALL_CMD,0550) -d ${PREFIX}/etc
|
||||
ifeq (${INSTALL_LOCALTIME},yes)
|
||||
- $(call INSTALL_CMD,0440,root,${OSSEC_GROUP}) /etc/localtime ${PREFIX}/etc
|
||||
+ $(call INSTALL_CMD,0440) /etc/localtime ${PREFIX}/etc
|
||||
endif
|
||||
ifeq (${INSTALL_RESOLVCONF},yes)
|
||||
- $(call INSTALL_CMD,0440,root,${OSSEC_GROUP}) /etc/resolv.conf ${PREFIX}/etc
|
||||
+ $(call INSTALL_CMD,0440) /etc/resolv.conf ${PREFIX}/etc
|
||||
endif
|
||||
|
||||
- $(call INSTALL_CMD,1550,root,${OSSEC_GROUP}) -d ${PREFIX}/tmp
|
||||
+ $(call INSTALL_CMD,1550) -d ${PREFIX}/tmp
|
||||
|
||||
ifneq (,$(wildcard /etc/TIMEZONE))
|
||||
- $(call INSTALL_CMD,440,root,${OSSEC_GROUP}) /etc/TIMEZONE ${PREFIX}/etc/
|
||||
+ $(call INSTALL_CMD,440) /etc/TIMEZONE ${PREFIX}/etc/
|
||||
endif
|
||||
# Solaris Needs some extra files
|
||||
ifeq (${uname_S},SunOS)
|
||||
- $(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) -d ${PREFIX}/usr/share/lib/zoneinfo/
|
||||
+ $(call INSTALL_CMD,0550) -d ${PREFIX}/usr/share/lib/zoneinfo/
|
||||
cp -r /usr/share/lib/zoneinfo/* ${PREFIX}/usr/share/lib/zoneinfo/
|
||||
endif
|
||||
- $(call INSTALL_CMD,0640,root,${OSSEC_GROUP}) -b ../etc/internal_options.conf ${PREFIX}/etc/
|
||||
+ $(call INSTALL_CMD,0640) -b ../etc/internal_options.conf ${PREFIX}/etc/
|
||||
ifeq (,$(wildcard ${PREFIX}/etc/local_internal_options.conf))
|
||||
- $(call INSTALL_CMD,0640,root,${OSSEC_GROUP}) ../etc/local_internal_options.conf ${PREFIX}/etc/local_internal_options.conf
|
||||
+ $(call INSTALL_CMD,0640) ../etc/local_internal_options.conf ${PREFIX}/etc/local_internal_options.conf
|
||||
endif
|
||||
ifeq (,$(wildcard ${PREFIX}/etc/client.keys))
|
||||
- $(call INSTALL_CMD,0640,root,${OSSEC_GROUP}) /dev/null ${PREFIX}/etc/client.keys
|
||||
+ $(call INSTALL_CMD,0640) /dev/null ${PREFIX}/etc/client.keys
|
||||
endif
|
||||
ifeq (,$(wildcard ${PREFIX}/etc/ossec.conf))
|
||||
ifneq (,$(wildcard ../etc/ossec.mc))
|
||||
- $(call INSTALL_CMD,0640,root,${OSSEC_GROUP}) ../etc/ossec.mc ${PREFIX}/etc/ossec.conf
|
||||
+ $(call INSTALL_CMD,0640) ../etc/ossec.mc ${PREFIX}/etc/ossec.conf
|
||||
else
|
||||
- $(call INSTALL_CMD,0640,root,${OSSEC_GROUP}) ${OSSEC_CONF_SRC} ${PREFIX}/etc/ossec.conf
|
||||
+ $(call INSTALL_CMD,0640) ${OSSEC_CONF_SRC} ${PREFIX}/etc/ossec.conf
|
||||
endif
|
||||
endif
|
||||
|
||||
- $(call INSTALL_CMD,0770,root,${OSSEC_GROUP}) -d ${PREFIX}/etc/shared
|
||||
- $(call INSTALL_CMD,0640,${OSSEC_USER},${OSSEC_GROUP}) rootcheck/db/*.txt ${PREFIX}/etc/shared/
|
||||
+ $(call INSTALL_CMD,0770) -d ${PREFIX}/etc/shared
|
||||
+ $(call INSTALL_CMD,0640) rootcheck/db/*.txt ${PREFIX}/etc/shared/
|
||||
|
||||
- $(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) -d ${PREFIX}/active-response
|
||||
- $(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) -d ${PREFIX}/active-response/bin
|
||||
- $(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) -d ${PREFIX}/agentless
|
||||
- $(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) agentlessd/scripts/* ${PREFIX}/agentless/
|
||||
+ $(call INSTALL_CMD,0550) -d ${PREFIX}/active-response
|
||||
+ $(call INSTALL_CMD,0550) -d ${PREFIX}/active-response/bin
|
||||
+ $(call INSTALL_CMD,0550) -d ${PREFIX}/agentless
|
||||
+ $(call INSTALL_CMD,0550) agentlessd/scripts/* ${PREFIX}/agentless/
|
||||
|
||||
- $(call INSTALL_CMD,0700,root,${OSSEC_GROUP}) -d ${PREFIX}/.ssh
|
||||
+ $(call INSTALL_CMD,0700) -d ${PREFIX}/.ssh
|
||||
|
||||
- $(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) ../active-response/*.sh ${PREFIX}/active-response/bin/
|
||||
- $(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) ../active-response/firewalls/*.sh ${PREFIX}/active-response/bin/
|
||||
+ $(call INSTALL_CMD,0550) ../active-response/*.sh ${PREFIX}/active-response/bin/
|
||||
+ $(call INSTALL_CMD,0550) ../active-response/firewalls/*.sh ${PREFIX}/active-response/bin/
|
||||
|
||||
- $(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) -d ${PREFIX}/var
|
||||
- $(call INSTALL_CMD,0770,root,${OSSEC_GROUP}) -d ${PREFIX}/var/run
|
||||
+ $(call INSTALL_CMD,0550) -d ${PREFIX}/var
|
||||
+ $(call INSTALL_CMD,0770) -d ${PREFIX}/var/run
|
||||
|
||||
|
||||
install-server-generic: install-common
|
||||
- $(call INSTALL_CMD,0660,${OSSEC_USER},${OSSEC_GROUP}) /dev/null ${PREFIX}/logs/active-responses.log
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/logs/archives
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/logs/alerts
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/logs/firewall
|
||||
-
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-agentlessd ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-analysisd ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-monitord ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-reportd ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-maild ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-remoted ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-logtest ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-csyslogd ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-authd ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-dbd ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-makelists ${PREFIX}/bin
|
||||
- $(call INSTALL_CMD,0550,root,0) verify-agent-conf ${PREFIX}/bin/
|
||||
- $(call INSTALL_CMD,0550,root,0) clear_stats ${PREFIX}/bin/
|
||||
- $(call INSTALL_CMD,0550,root,0) list_agents ${PREFIX}/bin/
|
||||
- $(call INSTALL_CMD,0550,root,0) ossec-regex ${PREFIX}/bin/
|
||||
- $(call INSTALL_CMD,0550,root,0) syscheck_update ${PREFIX}/bin/
|
||||
- $(call INSTALL_CMD,0550,root,0) agent_control ${PREFIX}/bin/
|
||||
- $(call INSTALL_CMD,0550,root,0) syscheck_control ${PREFIX}/bin/
|
||||
- $(call INSTALL_CMD,0550,root,0) rootcheck_control ${PREFIX}/bin/
|
||||
-
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/stats
|
||||
- $(call INSTALL_CMD,0550,root,${OSSEC_GROUP}) -d ${PREFIX}/rules
|
||||
+ $(call INSTALL_CMD,0660) /dev/null ${PREFIX}/logs/active-responses.log
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/logs/archives
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/logs/alerts
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/logs/firewall
|
||||
+
|
||||
+ $(call INSTALL_CMD,0550) ossec-agentlessd ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-analysisd ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-monitord ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-reportd ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-maild ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-remoted ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-logtest ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-csyslogd ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-authd ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-dbd ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) ossec-makelists ${PREFIX}/bin
|
||||
+ $(call INSTALL_CMD,0550) verify-agent-conf ${PREFIX}/bin/
|
||||
+ $(call INSTALL_CMD,0550) clear_stats ${PREFIX}/bin/
|
||||
+ $(call INSTALL_CMD,0550) list_agents ${PREFIX}/bin/
|
||||
+ $(call INSTALL_CMD,0550) ossec-regex ${PREFIX}/bin/
|
||||
+ $(call INSTALL_CMD,0550) syscheck_update ${PREFIX}/bin/
|
||||
+ $(call INSTALL_CMD,0550) agent_control ${PREFIX}/bin/
|
||||
+ $(call INSTALL_CMD,0550) syscheck_control ${PREFIX}/bin/
|
||||
+ $(call INSTALL_CMD,0550) rootcheck_control ${PREFIX}/bin/
|
||||
+
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/stats
|
||||
+ $(call INSTALL_CMD,0550) -d ${PREFIX}/rules
|
||||
ifneq (,$(wildcard ${PREFIX}/rules/local_rules.xml))
|
||||
cp ${PREFIX}/rules/local_rules.xml ${PREFIX}/rules/local_rules.xml.installbackup
|
||||
- $(call INSTALL_CMD,0640,root,${OSSEC_GROUP}) -b ../etc/rules/*.xml ${PREFIX}/rules
|
||||
- $(call INSTALL_CMD,0640,root,${OSSEC_GROUP}) ${PREFIX}/rules/local_rules.xml.installbackup ${PREFIX}/rules/local_rules.xml
|
||||
+ $(call INSTALL_CMD,0640) -b ../etc/rules/*.xml ${PREFIX}/rules
|
||||
+ $(call INSTALL_CMD,0640) ${PREFIX}/rules/local_rules.xml.installbackup ${PREFIX}/rules/local_rules.xml
|
||||
rm ${PREFIX}/rules/local_rules.xml.installbackup
|
||||
else
|
||||
- $(call INSTALL_CMD,0640,root,${OSSEC_GROUP}) -b ../etc/rules/*.xml ${PREFIX}/rules
|
||||
+ $(call INSTALL_CMD,0640) -b ../etc/rules/*.xml ${PREFIX}/rules
|
||||
endif
|
||||
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/queue/fts
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/queue/fts
|
||||
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/queue/rootcheck
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/queue/rootcheck
|
||||
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER_REM},${OSSEC_GROUP}) -d ${PREFIX}/queue/agent-info
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER},${OSSEC_GROUP}) -d ${PREFIX}/queue/agentless
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/queue/agent-info
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/queue/agentless
|
||||
|
||||
- $(call INSTALL_CMD,0750,${OSSEC_USER_REM},${OSSEC_GROUP}) -d ${PREFIX}/queue/rids
|
||||
+ $(call INSTALL_CMD,0750) -d ${PREFIX}/queue/rids
|
||||
|
||||
- $(call INSTALL_CMD,0640,root,${OSSEC_GROUP}) ../etc/decoder.xml ${PREFIX}/etc/
|
||||
+ $(call INSTALL_CMD,0640) ../etc/decoder.xml ${PREFIX}/etc/
|
||||
|
||||
rm -f ${PREFIX}/etc/shared/merged.mg
|
||||
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -0,0 +1,165 @@
|
||||
SUMMARY = "A full platform to monitor and control your systems"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=d625d1520b5e38faefb81cf9772badc9"
|
||||
|
||||
|
||||
DEPENDS = "openssl libpcre2 zlib libevent"
|
||||
SRC_URI = "git://github.com/ossec/ossec-hids;branch=master;protocol=https \
|
||||
file://0001-Makefile-drop-running-scrips-install.patch \
|
||||
file://0002-Makefile-don-t-set-uid-gid.patch \
|
||||
"
|
||||
|
||||
SRCREV = "bf797c759994015274f3bc31fe2bed278cce67ee"
|
||||
|
||||
UPSTREAM_CHECK_COMMITS = "1"
|
||||
|
||||
inherit autotools-brokensep useradd
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
OSSEC_UID ?= "ossec"
|
||||
OSSEC_RUID ?= "ossecr"
|
||||
OSSEC_GID ?= "ossec"
|
||||
OSSEC_EMAIL ?= "ossecm"
|
||||
|
||||
do_configure[noexec] = "1"
|
||||
|
||||
do_compile() {
|
||||
cd ${S}/src
|
||||
make PREFIX=${prefix} TARGET=local USE_SYSTEMD=No build
|
||||
}
|
||||
|
||||
do_install(){
|
||||
install -d ${D}${sysconfdir}
|
||||
install -d ${D}/var/ossec/${sysconfdir}
|
||||
|
||||
cd ${S}/src
|
||||
make TARGET=local PREFIX=${D}/var/ossec install
|
||||
|
||||
echo "DIRECTORY=\"/var/ossec\"" > ${D}/${sysconfdir}/ossec-init.conf
|
||||
echo "VERSION=\"${PV}\"" >> ${D}/${sysconfdir}/ossec-init.conf
|
||||
echo "DATE=\"`date`\"" >> ${D}/${sysconfdir}/ossec-init.conf
|
||||
echo "TYPE=\"local\"" >> ${D}/${sysconfdir}/ossec-init.conf
|
||||
chmod 600 ${D}/${sysconfdir}/ossec-init.conf
|
||||
install -m 640 ${D}/${sysconfdir}/ossec-init.conf ${D}/var/ossec/${sysconfdir}/ossec-init.conf
|
||||
}
|
||||
|
||||
pkg_postinst_ontarget:${PN} () {
|
||||
DIR="/var/ossec"
|
||||
|
||||
usermod -g ossec -G ossec -a root
|
||||
|
||||
# Default for all directories
|
||||
chmod -R 550 ${DIR}
|
||||
chown -R root:${OSSEC_GID} ${DIR}
|
||||
|
||||
# To the ossec queue (default for agentd to read)
|
||||
chown -R ${OSSEC_UUID}:${OSSEC_GID} ${DIR}/queue/ossec
|
||||
chmod -R 770 ${DIR}/queue/ossec
|
||||
|
||||
# For the logging user
|
||||
chown -R ${OSSEC_UUID}:${OSSEC_GID} ${DIR}/logs
|
||||
chmod -R 750 ${DIR}/logs
|
||||
chmod -R 775 ${DIR}/queue/rids
|
||||
touch ${DIR}/logs/ossec.log
|
||||
chown ${OSSEC_UUID}:${OSSEC_GID} ${DIR}/logs/ossec.log
|
||||
chmod 664 ${DIR}/logs/ossec.log
|
||||
|
||||
chown -R ${OSSEC_UUID}:${OSSEC_GID} ${DIR}/queue/diff
|
||||
chmod -R 750 ${DIR}/queue/diff
|
||||
chmod 740 ${DIR}/queue/diff/* > /dev/null 2>&1 || true
|
||||
|
||||
# For the etc dir
|
||||
chmod 550 ${DIR}/etc
|
||||
chown -R root:${OSSEC_GID} ${DIR}/etc
|
||||
if [ -f /etc/localtime ]; then
|
||||
cp -pL /etc/localtime ${DIR}/etc/;
|
||||
chmod 555 ${DIR}/etc/localtime
|
||||
chown root:${OSSEC_GID} ${DIR}/etc/localtime
|
||||
fi
|
||||
|
||||
if [ -f /etc/TIMEZONE ]; then
|
||||
cp -p /etc/TIMEZONE ${DIR}/etc/;
|
||||
chmod 555 ${DIR}/etc/TIMEZONE
|
||||
fi
|
||||
|
||||
# More files
|
||||
chown root:${OSSEC_GID} ${DIR}/etc/internal_options.conf
|
||||
chown root:${OSSEC_GID} ${DIR}/etc/local_internal_options.conf >/dev/null 2>&1 || true
|
||||
chown root:${OSSEC_GID} ${DIR}/etc/client.keys >/dev/null 2>&1 || true
|
||||
chown root:${OSSEC_GID} ${DIR}/agentless/*
|
||||
chown ${OSSEC_UUID}:${OSSEC_GID} ${DIR}/.ssh
|
||||
chown root:${OSSEC_GID} ${DIR}/etc/shared/*
|
||||
|
||||
chmod 550 ${DIR}/etc
|
||||
chmod 440 ${DIR}/etc/internal_options.conf
|
||||
chmod 660 ${DIR}/etc/local_internal_options.conf >/dev/null 2>&1 || true
|
||||
chmod 440 ${DIR}/etc/client.keys >/dev/null 2>&1 || true
|
||||
chmod 550 ${DIR}/agentless/*
|
||||
chmod 700 ${DIR}/.ssh
|
||||
chmod 770 ${DIR}/etc/shared
|
||||
chmod 660 ${DIR}/etc/shared/*
|
||||
|
||||
# For the /var/run
|
||||
chmod 770 ${DIR}/var/run
|
||||
chown root:${OSSEC_GID} ${DIR}/var/run
|
||||
|
||||
# For util.sh
|
||||
chown root:${OSSEC_GID} ${DIR}/bin/util.sh
|
||||
chmod +x ${DIR}/bin/util.sh
|
||||
|
||||
# For binaries and active response
|
||||
chmod 755 ${DIR}/active-response/bin/*
|
||||
chown root:${OSSEC_GID} ${DIR}/active-response/bin/*
|
||||
chown root:${OSSEC_GID} ${DIR}/bin/*
|
||||
chmod 550 ${DIR}/bin/*
|
||||
|
||||
# For ossec.conf
|
||||
chown root:${OSSEC_GID} ${DIR}/etc/ossec.conf
|
||||
chmod 660 ${DIR}/etc/ossec.conf
|
||||
|
||||
# Debconf
|
||||
. /usr/share/debconf/confmodule
|
||||
db_input high ossec-hids-agent/server-ip || true
|
||||
db_go
|
||||
|
||||
db_get ossec-hids-agent/server-ip
|
||||
SERVER_IP=$RET
|
||||
|
||||
sed -i "s/<server-ip>[^<]\+<\/server-ip>/<server-ip>${SERVER_IP}<\/server-ip>/" ${DIR}/etc/ossec.conf
|
||||
db_stop
|
||||
|
||||
# ossec-init.conf
|
||||
if [ -e ${DIR}/etc/ossec-init.conf ] && [ -d /etc/ ]; then
|
||||
if [ -e /etc/ossec-init.conf ]; then
|
||||
rm -f /etc/ossec-init.conf
|
||||
fi
|
||||
ln -s ${DIR}/etc/ossec-init.conf /etc/ossec-init.conf
|
||||
fi
|
||||
|
||||
# init.d/ossec file
|
||||
if [ -x ${DIR}/etc/init.d/ossec ] && [ -d /etc/init.d/ ]; then
|
||||
if [ -e /etc/init.d/ossec ]; then
|
||||
rm -f /etc/init.d/ossec
|
||||
fi
|
||||
ln -s ${DIR}/etc/init.d/ossec /etc/init.d/ossec
|
||||
fi
|
||||
|
||||
# Service
|
||||
if [ -x /etc/init.d/ossec ]; then
|
||||
update-rc.d -f ossec defaults
|
||||
fi
|
||||
|
||||
# Delete tmp directory
|
||||
if [ -d ${OSSEC_HIDS_TMP_DIR} ]; then
|
||||
rm -r ${OSSEC_HIDS_TMP_DIR}
|
||||
fi
|
||||
}
|
||||
|
||||
USERADD_PACKAGES = "${PN}"
|
||||
USERADD_PARAM:${PN} = "--system --home-dir /var/ossec -g ossec --shell /bin/false ossec"
|
||||
GROUPADD_PARAM:${PN} = "--system ossec"
|
||||
|
||||
RDEPENDS:${PN} = "openssl bash"
|
||||
|
||||
COMPATIBLE_HOST:libc-musl = "null"
|
||||
@@ -0,0 +1,44 @@
|
||||
From 111b1e8f35e989513d8961a45a806767109f6e1e Mon Sep 17 00:00:00 2001
|
||||
From: Mingli Yu <mingli.yu@windriver.com>
|
||||
Date: Thu, 11 Aug 2022 17:15:30 +0800
|
||||
Subject: [PATCH] Don't expose configure args
|
||||
|
||||
Don't expost configure args to fix buildpath issue.
|
||||
|
||||
Upstream-Status: Inappropriate [oe specific]
|
||||
|
||||
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
|
||||
---
|
||||
scripts/samhain.ebuild-light.in | 2 +-
|
||||
scripts/samhain.ebuild.in | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/scripts/samhain.ebuild-light.in b/scripts/samhain.ebuild-light.in
|
||||
index 2b09cdb..b7f7062 100644
|
||||
--- a/scripts/samhain.ebuild-light.in
|
||||
+++ b/scripts/samhain.ebuild-light.in
|
||||
@@ -55,7 +55,7 @@ src_compile() {
|
||||
# --with-state-dir=/var/lib/${PN} \
|
||||
# --with-log-file=/var/log/${PN}.log \
|
||||
|
||||
- ./configure ${myconf} @mydefargs@ || die
|
||||
+ ./configure ${myconf} mydefargs || die
|
||||
emake || die
|
||||
|
||||
echo '#!/bin/sh' > ./sstrip
|
||||
diff --git a/scripts/samhain.ebuild.in b/scripts/samhain.ebuild.in
|
||||
index 635a746..b9a42e7 100644
|
||||
--- a/scripts/samhain.ebuild.in
|
||||
+++ b/scripts/samhain.ebuild.in
|
||||
@@ -55,7 +55,7 @@ src_compile() {
|
||||
# --with-state-dir=/var/lib/${PN} \
|
||||
# --with-log-file=/var/log/${PN}.log \
|
||||
|
||||
- ./configure ${myconf} @mydefargs@ || die
|
||||
+ ./configure ${myconf} mydefargs || die
|
||||
emake || die
|
||||
|
||||
echo '#!/bin/sh' > ./sstrip
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
From e67acafa62f71f0015ed548918b98ed0b1ded128 Mon Sep 17 00:00:00 2001
|
||||
From: Yi Zhao <yi.zhao@windriver.com>
|
||||
Date: Sun, 19 Jan 2020 15:53:48 +0800
|
||||
Subject: [PATCH] fix build with new version attr
|
||||
|
||||
The attr/xattr.h has been removed from attr 2.4.48 with commit:
|
||||
http://git.savannah.nongnu.org/cgit/attr.git/commit/include?id=7921157890d07858d092f4003ca4c6bae9fd2c38
|
||||
The xattr syscalls are provided by sys/xattr.h from glibc now.
|
||||
Remove the checking code to adapt it.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
|
||||
---
|
||||
aclocal.m4 | 26 +++++++++++---------------
|
||||
src/sh_unix.c | 2 +-
|
||||
2 files changed, 12 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/aclocal.m4 b/aclocal.m4
|
||||
index ee5b204..38cef8e 100644
|
||||
--- a/aclocal.m4
|
||||
+++ b/aclocal.m4
|
||||
@@ -1453,23 +1453,19 @@ AC_DEFUN([sh_CHECK_POSIX_ACL],
|
||||
|
||||
AC_DEFUN([sh_CHECK_XATTR],
|
||||
[
|
||||
- AC_CHECK_HEADERS(attr/xattr.h)
|
||||
- if test $ac_cv_header_attr_xattr_h = yes; then
|
||||
-
|
||||
- AC_CHECK_LIB([attr], [getxattr], sh_lattr=yes, sh_lattr=no)
|
||||
- if test x"$sh_lattr" = xyes; then
|
||||
- LIBATTR=-lattr
|
||||
- else
|
||||
- LIBATTR=
|
||||
- fi
|
||||
-
|
||||
- OLDLIBS="$LIBS"
|
||||
- LIBS="$LIBS $LIBATTR"
|
||||
- AC_CHECK_FUNCS([getxattr lgetxattr fgetxattr],
|
||||
- [sh_fattr=yes],[sh_fattr=no])
|
||||
- LIBS="$OLDLIBS"
|
||||
+ AC_CHECK_LIB([attr], [getxattr], sh_lattr=yes, sh_lattr=no)
|
||||
+ if test x"$sh_lattr" = xyes; then
|
||||
+ LIBATTR=-lattr
|
||||
+ else
|
||||
+ LIBATTR=
|
||||
fi
|
||||
|
||||
+ OLDLIBS="$LIBS"
|
||||
+ LIBS="$LIBS $LIBATTR"
|
||||
+ AC_CHECK_FUNCS([getxattr lgetxattr fgetxattr],
|
||||
+ [sh_fattr=yes],[sh_fattr=no])
|
||||
+ LIBS="$OLDLIBS"
|
||||
+
|
||||
if test x"$sh_fattr" = xyes; then
|
||||
AC_DEFINE(USE_XATTR, 1, [Define if you want extended attributes support.])
|
||||
LIBS="$LIBS $LIBATTR"
|
||||
diff --git a/src/sh_unix.c b/src/sh_unix.c
|
||||
index 3ede57f..ef236e9 100644
|
||||
--- a/src/sh_unix.c
|
||||
+++ b/src/sh_unix.c
|
||||
@@ -3681,7 +3681,7 @@ static char * sh_unix_getinfo_acl (char * path, int fd, struct stat * buf)
|
||||
|
||||
#ifdef USE_XATTR
|
||||
|
||||
-#include <attr/xattr.h>
|
||||
+#include <sys/xattr.h>
|
||||
static char * sh_unix_getinfo_xattr_int (char * path, int fd, char * name)
|
||||
{
|
||||
char * out = NULL;
|
||||
--
|
||||
2.7.4
|
||||
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
current_dir=$(dirname $(readlink -f $0))
|
||||
$current_dir/cutest
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
From ae79606a6745dbbd429d1d4671dfe3045d735057 Mon Sep 17 00:00:00 2001
|
||||
From: Jackie Huang <jackie.huang@windriver.com>
|
||||
Date: Thu, 14 Sep 2017 13:26:55 +0800
|
||||
Subject: [PATCH] Add LDFLAGS variable for compiling samhain_setpwd
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
|
||||
---
|
||||
Makefile.in | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index 01de987..49356cf 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -1128,7 +1128,7 @@ sh_tiger_i.o: $(srcsrc)/$(TIGER_SRC) Makefile config_xor.h
|
||||
samhain_setpwd: encode config_xor.h $(srcsrc)/samhain_setpwd.c
|
||||
@echo '$(COMPILE) -o samhain_setpwd $(srcsrc)/samhain_setpwd.c'; \
|
||||
./encode $(XOR_CODE) $(srcsrc)/samhain_setpwd.c; \
|
||||
- $(COMPILE) -o samhain_setpwd x_samhain_setpwd.c; \
|
||||
+ $(COMPILE) $(LDFLAGS) -o samhain_setpwd x_samhain_setpwd.c; \
|
||||
rm x_samhain_setpwd.c
|
||||
|
||||
samhain_stealth: encode config_xor.h $(srcsrc)/samhain_stealth.c
|
||||
--
|
||||
2.11.0
|
||||
|
||||
+131
@@ -0,0 +1,131 @@
|
||||
From 3e2ca7e06b16ceff6d12beb5113312f6525df595 Mon Sep 17 00:00:00 2001
|
||||
From: Jackie Huang <jackie.huang@windriver.com>
|
||||
Date: Thu, 14 Sep 2017 11:02:12 +0800
|
||||
Subject: [PATCH] configure.ac: avoid searching host for postgresql
|
||||
|
||||
Upstream-Status: Inappropriate [cross compile specific]
|
||||
|
||||
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
|
||||
---
|
||||
configure.ac | 101 +++--------------------------------------------------------
|
||||
1 file changed, 5 insertions(+), 96 deletions(-)
|
||||
|
||||
Index: samhain-4.4.2/configure.ac
|
||||
===================================================================
|
||||
--- samhain-4.4.2.orig/configure.ac
|
||||
+++ samhain-4.4.2/configure.ac
|
||||
@@ -1290,90 +1290,11 @@ AC_ARG_WITH(database,
|
||||
AC_DEFINE(WITH_POSTGRES)
|
||||
AC_DEFINE(WITH_DATABASE)
|
||||
#
|
||||
- PGCONF="no"
|
||||
- MY_PATH="${PATH}:/usr/local/bin:/usr/local/pgsql/bin"
|
||||
- OLD_IFS="$IFS"
|
||||
- IFS=":"
|
||||
- for ff in ${MY_PATH}
|
||||
- do
|
||||
- if test -f "$ff/pg_config"
|
||||
- then
|
||||
- PGCONF="$ff/pg_config"
|
||||
- fi
|
||||
- done
|
||||
- IFS="${OLD_IFS}"
|
||||
- #
|
||||
- #
|
||||
- if test "x${PGCONF}" = "xno"
|
||||
- then
|
||||
- AC_MSG_CHECKING(for PostgreSQL in /usr/local/pgsql /usr/pgsql /usr/local /usr PGSQL_HOME)
|
||||
- pgsql_directory="/usr/local/pgsql /usr/pgsql /usr/local /usr ${PGSQL_HOME}"
|
||||
- for i in $pgsql_directory; do
|
||||
- if test -r $i/include/pgsql/libpq-fe.h; then
|
||||
- PGSQL_INC_DIR=$i/include
|
||||
- PGSQL_DIR=$i
|
||||
- # use AC_CHECK_HEADERS to check for pgsql/libpq-fe.h
|
||||
- fi
|
||||
- done
|
||||
- if test -z "$PGSQL_DIR"; then
|
||||
- for i in $pgsql_directory; do
|
||||
- if test -r $i/include/postgresql/libpq-fe.h; then
|
||||
- PGSQL_INC_DIR=$i/include
|
||||
- PGSQL_DIR=$i
|
||||
- fi
|
||||
- done
|
||||
- fi
|
||||
- if test -z "$PGSQL_DIR"; then
|
||||
- for i in $pgsql_directory; do
|
||||
- if test -r $i/include/libpq-fe.h; then
|
||||
- PGSQL_INC_DIR=$i/include
|
||||
- PGSQL_DIR=$i
|
||||
- fi
|
||||
- done
|
||||
- fi
|
||||
-
|
||||
- if test -z "$PGSQL_DIR"; then
|
||||
- tmp=""
|
||||
- for i in $pgsql_directory; do
|
||||
- tmp="$tmp $i/include $i/include/pgsql $i/include/postgresql"
|
||||
- done
|
||||
- FAIL_MESSAGE("PostgreSQL header file (libpq-fe.h)", $tmp)
|
||||
- fi
|
||||
-
|
||||
- for i in lib lib/pgsql lib/postgresql; do
|
||||
- str="$PGSQL_DIR/$i/libpq.*"
|
||||
- for j in `echo $str`; do
|
||||
- if test -r $j; then
|
||||
- PGSQL_LIB_DIR="$PGSQL_DIR/$i"
|
||||
- break 2
|
||||
- fi
|
||||
- done
|
||||
- done
|
||||
-
|
||||
- if test -z "$PGSQL_LIB_DIR"; then
|
||||
- for ff in $pgsql_directory; do
|
||||
- for i in lib lib/pgsql lib/postgresql; do
|
||||
- str="$ff/$i/libpq.*"
|
||||
- for j in `echo $str`; do
|
||||
- if test -r $j; then
|
||||
- PGSQL_LIB_DIR="$ff/$i"
|
||||
- break 3
|
||||
- fi
|
||||
- done
|
||||
- done
|
||||
- done
|
||||
- fi
|
||||
-
|
||||
- if test -z "$PGSQL_LIB_DIR"; then
|
||||
- tmp=""
|
||||
- for i in $pgsql_directory; do
|
||||
- tmp="$i/lib $i/lib/pgsql $i/lib/postgresql"
|
||||
- done
|
||||
- FAIL_MESSAGE("postgresql library libpq", $tmp)
|
||||
- fi
|
||||
-
|
||||
- AC_MSG_RESULT(yes)
|
||||
-
|
||||
+ if test -z "${PGSQL_LIB_DIR}" ; then
|
||||
+ FAIL_MESSAGE("PGSQL_LIB_DIR is not set!")
|
||||
+ elif test -z "${PGSQL_INC_DIR}" ; then
|
||||
+ FAIL_MESSAGE("PGSQL_INC_DIR is not set!")
|
||||
+ else
|
||||
LIBS="$LIBS -L${PGSQL_LIB_DIR} -lpq -lm"
|
||||
if test x"$enable_static" = xyes; then
|
||||
LIBS="$LIBS -L${PGSQL_LIB_DIR} -lpq -lcrypt -lm"
|
||||
@@ -1382,18 +1303,6 @@ AC_ARG_WITH(database,
|
||||
fi
|
||||
# CFLAGS="$CFLAGS -I${PGSQL_INC_DIR}"
|
||||
CPPFLAGS="$CPPFLAGS -I${PGSQL_INC_DIR}"
|
||||
- AC_CHECK_HEADERS(pgsql/libpq-fe.h)
|
||||
- AC_CHECK_HEADERS(postgresql/libpq-fe.h)
|
||||
- else
|
||||
- pg_lib_dir=`${PGCONF} --libdir`
|
||||
- if test x"$enable_static" = xyes; then
|
||||
- LIBS="$LIBS -L${pg_lib_dir} -lpq -lcrypt -lm"
|
||||
- else
|
||||
- LIBS="$LIBS -L${pg_lib_dir} -lpq -lm"
|
||||
- fi
|
||||
- pg_inc_dir=`${PGCONF} --includedir`
|
||||
- # CFLAGS="$CFLAGS -I${pg_inc_dir}"
|
||||
- CPPFLAGS="$CPPFLAGS -I${pg_inc_dir}"
|
||||
fi
|
||||
elif test "x${withval}" = "xodbc"; then
|
||||
AC_MSG_CHECKING(for odbc in /usr /usr/local ODBC_HOME)
|
||||
@@ -0,0 +1,3 @@
|
||||
# Set this to "yes" to start the server, after you configure it, of
|
||||
# course.
|
||||
SAMHAIN_CLIENT_START="no"
|
||||
@@ -0,0 +1,122 @@
|
||||
#!/bin/bash
|
||||
# chkconfig: 2345 99 10
|
||||
# description: File Integrity Checking Daemon
|
||||
#
|
||||
# processname: samhain
|
||||
# config : /etc/samhainrc
|
||||
# logfile : /var/log/samhain_log
|
||||
# database: /var/lib/samhain/samhain_file
|
||||
#
|
||||
|
||||
NAME=samhain
|
||||
DAEMON=/usr/sbin/samhain
|
||||
RETVAL=0
|
||||
PIDFILE=/var/run/samhain.pid
|
||||
|
||||
. /etc/default/rcS
|
||||
|
||||
. /etc/default/samhain-client
|
||||
|
||||
if [ "x$SAMHAIN_CLIENT_START" != "xyes" ]; then
|
||||
echo "${0}: client disabled in /etc/default/samhain-client"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ -x $DAEMON ]; then
|
||||
:
|
||||
else
|
||||
echo "${0}: executable ${DAEMON} not found"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -e /var/lib/samhain/samhain_file ]; then
|
||||
echo "${0}: /var/lib/samhain/samhain_file does not exist. You must"
|
||||
echo " run 'samhain -t init' before samhian-client can start."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
samhain_done()
|
||||
{
|
||||
if [ $RETVAL -eq 0 ]; then
|
||||
echo "."
|
||||
else
|
||||
echo " failed."
|
||||
fi
|
||||
}
|
||||
|
||||
log_stat_msg () {
|
||||
case "$1" in
|
||||
0)
|
||||
echo "Service $NAME: Running";
|
||||
;;
|
||||
1)
|
||||
echo "Service $NAME: Stopped and /var/run pid file exists";
|
||||
;;
|
||||
3)
|
||||
echo "Service $NAME: Stopped";
|
||||
;;
|
||||
*)
|
||||
echo "Service $NAME: Status unknown";
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
#
|
||||
# Remove a stale PID file, if found
|
||||
#
|
||||
if test -f ${PIDFILE}; then
|
||||
/bin/rm -f ${PIDFILE}
|
||||
fi
|
||||
#
|
||||
echo -n "Starting ${NAME}"
|
||||
start-stop-daemon --start --quiet --exec $DAEMON
|
||||
RETVAL=$?
|
||||
samhain_done
|
||||
;;
|
||||
|
||||
stop)
|
||||
echo -n "Stopping $NAME"
|
||||
start-stop-daemon --stop --quiet --exec $DAEMON
|
||||
RETVAL=$?
|
||||
|
||||
#
|
||||
# Remove a stale PID file, if found
|
||||
#
|
||||
if test -f ${PIDFILE}; then
|
||||
/bin/rm -f ${PIDFILE}
|
||||
fi
|
||||
if test -S /var/run/${NAME}.sock; then
|
||||
/bin/rm -f /var/run/${NAME}.sock
|
||||
fi
|
||||
samhain_done
|
||||
;;
|
||||
|
||||
restart)
|
||||
$0 stop
|
||||
sleep 3
|
||||
$0 start
|
||||
RETVAL=$?
|
||||
;;
|
||||
|
||||
reload|force-reload)
|
||||
echo -n "Reloading $NAME configuration files"
|
||||
start-stop-daemon --stop --signal 1 --quiet --exec $DAEMON
|
||||
RETVAL=$?
|
||||
samhain_done
|
||||
;;
|
||||
|
||||
status)
|
||||
$DAEMON status
|
||||
RETVAL=$?
|
||||
log_stat_msg ${RETVAL}
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "$0 usage: {start|stop|status|restart|reload}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit $RETVAL
|
||||
@@ -0,0 +1,102 @@
|
||||
From 02a143f0068cbc6cea71359169210fbb3606d4bb Mon Sep 17 00:00:00 2001
|
||||
From: Jackie Huang <jackie.huang@windriver.com>
|
||||
Date: Mon, 18 Jan 2016 00:24:57 -0500
|
||||
Subject: [PATCH] configure: add option for ps
|
||||
|
||||
The configure searches hardcoded host paths for PSPATH
|
||||
and run ps commands to decide PSARG which will fail
|
||||
on host without ps:
|
||||
| configure: error: Cannot find ps in any of /usr/ucb /bin /usr/bin
|
||||
|
||||
So add an option so we can specify the ps at configure
|
||||
to avoid host contamination.
|
||||
|
||||
Upstream-Status: Inappropriate [cross compile specific]
|
||||
|
||||
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
|
||||
[AK: refactored for 4.4.3]
|
||||
Signed-off-by: Armin Kuster <akuster808@gmail.com>
|
||||
|
||||
Index: samhain-4.4.2/configure.ac
|
||||
===================================================================
|
||||
--- samhain-4.4.2.orig/configure.ac
|
||||
+++ samhain-4.4.2/configure.ac
|
||||
@@ -743,56 +743,16 @@ then
|
||||
fi
|
||||
AC_CHECK_HEADERS(gmp.h)
|
||||
|
||||
-AC_MSG_CHECKING([for ps])
|
||||
-PS=
|
||||
-for ff in /usr/ucb /bin /usr/bin; do
|
||||
- if test -x "$ff/ps"; then
|
||||
- PS="$ff/ps"
|
||||
- AC_MSG_RESULT([$PS])
|
||||
- break
|
||||
- fi
|
||||
-done
|
||||
-if test x$PS = x
|
||||
-then
|
||||
- AC_MSG_RESULT([no])
|
||||
- AC_MSG_ERROR([Cannot find ps in any of /usr/ucb /bin /usr/bin])
|
||||
-fi
|
||||
-AC_DEFINE_UNQUOTED([PSPATH], _("$PS"), [Path to ps])
|
||||
+AC_ARG_WITH(ps-path,
|
||||
+ [ --with-ps-path=PATH set path to ps command ],
|
||||
+ [
|
||||
+ if test "x${withval}" != xno; then
|
||||
+ pspath="${withval}"
|
||||
+ AC_DEFINE_UNQUOTED([PSPATH], _("${pspath}"), [Path to ps])
|
||||
+ AC_DEFINE_UNQUOTED([PSARG], _("ax"), [Argument for ps])
|
||||
+ fi
|
||||
+ ])
|
||||
|
||||
-AC_MSG_CHECKING([how to use ps])
|
||||
-$PS ax >/dev/null 2>&1
|
||||
-if test $? -eq 0; then
|
||||
- case "$host_os" in
|
||||
- *openbsd*)
|
||||
- one=`$PS akx | wc -l`
|
||||
- ;;
|
||||
- *)
|
||||
- one=`$PS ax | wc -l`
|
||||
- ;;
|
||||
- esac
|
||||
-else
|
||||
- one=0
|
||||
-fi
|
||||
-$PS -e >/dev/null 2>&1
|
||||
-if test $? -eq 0; then
|
||||
- two=`$PS -e | wc -l`
|
||||
-else
|
||||
- two=0
|
||||
-fi
|
||||
-if test $one -ge $two
|
||||
-then
|
||||
- case "$host_os" in
|
||||
- *openbsd*)
|
||||
- PSARG="akx"
|
||||
- ;;
|
||||
- *)
|
||||
- PSARG="ax"
|
||||
- ;;
|
||||
- esac
|
||||
-else
|
||||
- PSARG="-e"
|
||||
-fi
|
||||
-AC_DEFINE_UNQUOTED([PSARG], _("$PSARG"), [Argument for ps])
|
||||
AC_MSG_RESULT([$PS $PSARG])
|
||||
|
||||
dnl *****************************************
|
||||
Index: samhain-4.4.2/aclocal.m4
|
||||
===================================================================
|
||||
--- samhain-4.4.2.orig/aclocal.m4
|
||||
+++ samhain-4.4.2/aclocal.m4
|
||||
@@ -409,7 +409,7 @@ x_includes=NONE
|
||||
x_libraries=NONE
|
||||
DESTDIR=
|
||||
SH_ENABLE_OPTS="selinux posix-acl asm ssp db-reload xml-log message-queue login-watch process-check port-check mounts-check logfile-monitor userfiles debug ptrace static network udp nocl stealth micro-stealth install-name identity khide suidcheck base largefile mail external-scripts encrypt srp dnmalloc ipv6 shellexpand suid"
|
||||
-SH_WITH_OPTS="prelude libprelude-prefix database libwrap cflags libs console altconsole timeserver alttimeserver rnd egd-socket port logserver altlogserver signify pubkey-checksum gpg keyid checksum fp recipient sender trusted tmp-dir config-file log-file pid-file state-dir data-file html-file"
|
||||
+SH_WITH_OPTS="prelude libprelude-prefix database libwrap cflags libs console altconsole timeserver alttimeserver rnd egd-socket port logserver altlogserver kcheck gpg keyid checksum fp recipient sender trusted tmp-dir config-file log-file pid-file state-dir data-file html-file ps-path"
|
||||
|
||||
# Installation directory options.
|
||||
# These are left unexpanded so users can "make install exec_prefix=/foo"
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
Fix error when compile for powerpc:
|
||||
|
||||
| x_sh_dbIO.c: In function 'swap_short':
|
||||
| x_sh_dbIO.c:229:36: error: initializer element is not constant
|
||||
| 229 | static unsigned short ooop = *iptr;
|
||||
| | ^
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Kai Kang <kai.kang@windriver.com>
|
||||
---
|
||||
src/sh_dbIO.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/sh_dbIO.c b/src/sh_dbIO.c
|
||||
index b547ac5..23a9621 100644
|
||||
--- a/src/sh_dbIO.c
|
||||
+++ b/src/sh_dbIO.c
|
||||
@@ -226,7 +226,8 @@ static unsigned short * swap_short (unsigned short * iptr)
|
||||
else
|
||||
{
|
||||
/* alignment problem */
|
||||
- static unsigned short ooop = *iptr;
|
||||
+ static unsigned short ooop;
|
||||
+ ooop = *iptr;
|
||||
unsigned short hi = (ooop & 0xff00);
|
||||
unsigned short lo = (ooop & 0xff);
|
||||
ooop = (lo << 8) | (hi >> 8);
|
||||
+44
@@ -0,0 +1,44 @@
|
||||
commit 0f6bdc219e598de08a3f37887efa5dfa50e2b996
|
||||
Author: Aws Ismail <aws.ismail@windriver.com>
|
||||
Date: Fri Jun 22 15:47:08 2012 -0400
|
||||
|
||||
Hash fix for MIPS64 and AARCH64
|
||||
|
||||
Samhain uses the addresses of local variables in generating hash
|
||||
values. The hashing function is designed only for 32-bit values.
|
||||
For MIPS64 when a 64-bit address is passed in the resulting hash
|
||||
exceeds the limits of the underlying mechanism and samhain
|
||||
ultimately fails. The solution is to simply take the lower
|
||||
32-bits of the address and use that in generating hash values.
|
||||
|
||||
Signed-off-by: Greg Moffatt <greg.moffatt@windriver.com>
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
|
||||
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
|
||||
|
||||
diff --git a/src/dnmalloc.c b/src/dnmalloc.c
|
||||
index da9a5c5..fc91400 100644
|
||||
--- a/src/dnmalloc.c
|
||||
+++ b/src/dnmalloc.c
|
||||
@@ -2703,11 +2703,19 @@ static void freecilst_add(chunkinfoptr p) {
|
||||
}
|
||||
|
||||
/* Calculate the hash table entry for a chunk */
|
||||
+#if defined(CONFIG_ARCH_MIPS64) || defined(CONFIG_ARCH_AARCH64)
|
||||
+#ifdef STARTHEAP_IS_ZERO
|
||||
+#define hash(p) ((((unsigned long) p) & 0x7fffffff) >> 7)
|
||||
+#else
|
||||
+#define hash(p) ((((unsigned long) p - (unsigned long) startheap) & 0x7fffffff) >> 7)
|
||||
+#endif
|
||||
+#else
|
||||
#ifdef STARTHEAP_IS_ZERO
|
||||
#define hash(p) (((unsigned long) p) >> 7)
|
||||
#else
|
||||
#define hash(p) (((unsigned long) p - (unsigned long) startheap) >> 7)
|
||||
#endif
|
||||
+#endif /* CONFIG_ARCH_MIPS64 */
|
||||
|
||||
static void
|
||||
hashtable_add (chunkinfoptr ci)
|
||||
@@ -0,0 +1,24 @@
|
||||
not run test on host, since we are doing cross-compile
|
||||
|
||||
Upstream-Status: Inappropriate [cross compile specific]
|
||||
|
||||
Signed-off-by: Roy Li <rongqing.li@windriver.com>
|
||||
---
|
||||
Makefile.in | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile.in b/Makefile.in
|
||||
index e1b32a8..74bfdc9 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -1234,7 +1234,6 @@ intcutest: internal.h $(OBJECTS) $(CUTEST_OBJECTS) sh_tiger_i.o $(srcsrc)/CuTest
|
||||
rm x_samhain.c; \
|
||||
$(LINK) sh_tiger_i.o $(CUTEST_OBJECTS) CuTestMain.o CuTest.o $(OBJECTS) $(LIBS_TRY); \
|
||||
test -f ./intcutest && mv ./intcutest ./cutest; \
|
||||
- ./cutest
|
||||
|
||||
runcutest:
|
||||
gdb ./cutest
|
||||
--
|
||||
1.7.10.4
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
commit a932b03b65edeb02ccad2fce06bfa68a8f2fbb04
|
||||
Author: Aws Ismail <aws.ismail@windriver.com>
|
||||
Date: Thu Jan 10 16:29:05 2013 -0500
|
||||
|
||||
Set the PID Lock path for samhain.pid
|
||||
|
||||
The explicit path for samhain.pid inorder
|
||||
for samhain to work properly after it initial
|
||||
database build.
|
||||
|
||||
Upstream-Status: Inappropriate [configuration]
|
||||
|
||||
Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
|
||||
|
||||
diff --git a/samhainrc.linux b/samhainrc.linux
|
||||
index 10a8176..a7b06e6 100644
|
||||
--- a/samhainrc.linux
|
||||
+++ b/samhainrc.linux
|
||||
@@ -639,7 +639,7 @@ SetFileCheckTime = 86400
|
||||
|
||||
## Path to the PID file
|
||||
#
|
||||
-# SetLockfilePath = (default: compiled-in)
|
||||
+SetLockfilePath = /run/samhain.pid
|
||||
|
||||
|
||||
## The digest/checksum/hash algorithm
|
||||
@@ -0,0 +1,61 @@
|
||||
From 00fb527e45da42550156197647e01de9a6b1ad52 Mon Sep 17 00:00:00 2001
|
||||
From: Wenzong Fan <wenzong.fan@windriver.com>
|
||||
Date: Mon, 3 Mar 2014 01:50:01 -0500
|
||||
Subject: [PATCH] fix real path for some files/dirs
|
||||
|
||||
Upstream-Status: Inappropriate [configuration]
|
||||
|
||||
Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
|
||||
---
|
||||
samhainrc.linux | 15 +++++++--------
|
||||
1 file changed, 7 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/samhainrc.linux b/samhainrc.linux
|
||||
index e9727b4..7775d83 100644
|
||||
--- a/samhainrc.linux
|
||||
+++ b/samhainrc.linux
|
||||
@@ -93,7 +93,6 @@ dir = 99/etc
|
||||
##
|
||||
file = /etc/mtab
|
||||
file = /etc/fstab
|
||||
-file = /etc/adjtime
|
||||
file = /etc/motd
|
||||
file = /etc/lvm/lvm.conf
|
||||
|
||||
@@ -153,11 +152,11 @@ dir = 99/var
|
||||
|
||||
[IgnoreAll]
|
||||
dir = -1/var/cache
|
||||
-dir = -1/var/lock
|
||||
-dir = -1/var/mail
|
||||
-dir = -1/var/run
|
||||
+dir = -1/run/lock
|
||||
+dir = -1/var/spool/mail
|
||||
+dir = -1/run
|
||||
dir = -1/var/spool
|
||||
-dir = -1/var/tmp
|
||||
+dir = -1/var/volatile/tmp
|
||||
|
||||
|
||||
[Attributes]
|
||||
@@ -167,7 +166,7 @@ dir = -1/var/tmp
|
||||
file = /var/lib/rpm/__db.00?
|
||||
|
||||
file = /var/lib/logrotate.status
|
||||
-file = /var/lib/random-seed
|
||||
+file = /var/lib/urandom/random-seed
|
||||
|
||||
|
||||
[GrowingLogFiles]
|
||||
@@ -176,7 +175,7 @@ file = /var/lib/random-seed
|
||||
## are ignored. Logfile rotation will cause a report because of shrinking
|
||||
## size and different inode.
|
||||
##
|
||||
-dir = 99/var/log
|
||||
+dir = 99/var/volatile/log
|
||||
|
||||
[Attributes]
|
||||
#
|
||||
--
|
||||
1.7.9.5
|
||||
|
||||
@@ -0,0 +1,158 @@
|
||||
commit 4c6658441eb3ffc4e51ed70f78cbdab046957580
|
||||
Author: Aws Ismail <aws.ismail@windriver.com>
|
||||
Date: Fri Jun 22 16:38:20 2012 -0400
|
||||
|
||||
Make samhainrc OE-friendly.
|
||||
|
||||
Patch the samhainrc that will be installed
|
||||
as part of the 'make install' step to more
|
||||
accurately reflect what will be found, and
|
||||
what will be of concern, on a OE install.
|
||||
|
||||
Upstream-Status: Inappropriate [configuration]
|
||||
|
||||
Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
|
||||
|
||||
diff --git a/samhainrc.linux b/samhainrc.linux
|
||||
index 9bc5ca4..10a8176 100644
|
||||
--- a/samhainrc.linux
|
||||
+++ b/samhainrc.linux
|
||||
@@ -74,7 +74,6 @@ dir = 0/
|
||||
[Attributes]
|
||||
file = /tmp
|
||||
file = /dev
|
||||
-file = /media
|
||||
file = /proc
|
||||
file = /sys
|
||||
|
||||
@@ -93,19 +92,10 @@ dir = 99/etc
|
||||
## check permission and ownership
|
||||
##
|
||||
file = /etc/mtab
|
||||
+file = /etc/fstab
|
||||
file = /etc/adjtime
|
||||
file = /etc/motd
|
||||
-file = /etc/lvm/.cache
|
||||
-
|
||||
-# On Ubuntu, these are in /var/lib rather than /etc
|
||||
-file = /etc/cups/certs
|
||||
-file = /etc/cups/certs/0
|
||||
-
|
||||
-# managed by fstab-sync on Fedora Core
|
||||
-file = /etc/fstab
|
||||
-
|
||||
-# modified when booting
|
||||
-file = /etc/sysconfig/hwconf
|
||||
+file = /etc/lvm/lvm.conf
|
||||
|
||||
# There are files in /etc that might change, thus changing the directory
|
||||
# timestamps. Put it here as 'file', and in the ReadOnly section as 'dir'.
|
||||
@@ -147,10 +137,6 @@ dir = 99/dev
|
||||
##
|
||||
dir = -1/dev/pts
|
||||
|
||||
-# dir = -1/dev/.udevdb
|
||||
-
|
||||
-file = /dev/ppp
|
||||
-
|
||||
#
|
||||
# --------- /usr -----------
|
||||
#
|
||||
@@ -167,50 +153,21 @@ dir = 99/var
|
||||
|
||||
[IgnoreAll]
|
||||
dir = -1/var/cache
|
||||
-dir = -1/var/backups
|
||||
-dir = -1/var/games
|
||||
-dir = -1/var/gdm
|
||||
dir = -1/var/lock
|
||||
dir = -1/var/mail
|
||||
dir = -1/var/run
|
||||
dir = -1/var/spool
|
||||
dir = -1/var/tmp
|
||||
-dir = -1/var/lib/texmf
|
||||
-dir = -1/var/lib/scrollkeeper
|
||||
|
||||
|
||||
[Attributes]
|
||||
|
||||
-dir = /var/lib/nfs
|
||||
-dir = /var/lib/pcmcia
|
||||
-
|
||||
# /var/lib/rpm changes if packets are installed;
|
||||
# /var/lib/rpm/__db.00[123] even more frequently
|
||||
file = /var/lib/rpm/__db.00?
|
||||
|
||||
-file = /var/lib/acpi-support/vbestate
|
||||
-file = /var/lib/alsa/asound.state
|
||||
-file = /var/lib/apt/lists/lock
|
||||
-file = /var/lib/apt/lists/partial
|
||||
-file = /var/lib/cups/certs
|
||||
-file = /var/lib/cups/certs/0
|
||||
-file = /var/lib/dpkg/lock
|
||||
-file = /var/lib/gdm
|
||||
-file = /var/lib/gdm/.cookie
|
||||
-file = /var/lib/gdm/.gdmfifo
|
||||
-file = /var/lib/gdm/:0.Xauth
|
||||
-file = /var/lib/gdm/:0.Xservers
|
||||
-file = /var/lib/logrotate/status
|
||||
-file = /var/lib/mysql
|
||||
-file = /var/lib/mysql/ib_logfile0
|
||||
-file = /var/lib/mysql/ibdata1
|
||||
-file = /var/lib/slocate
|
||||
-file = /var/lib/slocate/slocate.db
|
||||
-file = /var/lib/slocate/slocate.db.tmp
|
||||
-file = /var/lib/urandom
|
||||
-file = /var/lib/urandom/random-seed
|
||||
+file = /var/lib/logrotate.status
|
||||
file = /var/lib/random-seed
|
||||
-file = /var/lib/xkb
|
||||
|
||||
|
||||
[GrowingLogFiles]
|
||||
@@ -325,7 +282,7 @@ IgnoreMissing = /var/lib/slocate/slocate.db.tmp
|
||||
|
||||
## Console
|
||||
##
|
||||
-# PrintSeverity=info
|
||||
+PrintSeverity=warn
|
||||
|
||||
## Logfile
|
||||
##
|
||||
@@ -333,7 +290,7 @@ IgnoreMissing = /var/lib/slocate/slocate.db.tmp
|
||||
|
||||
## Syslog
|
||||
##
|
||||
-# SyslogSeverity=none
|
||||
+SyslogSeverity=info
|
||||
|
||||
## Remote server (yule)
|
||||
##
|
||||
@@ -556,7 +513,8 @@ ChecksumTest=check
|
||||
## and I/O limit (kilobytes per second; 0 == off)
|
||||
## to reduce load on host.
|
||||
#
|
||||
-# SetNiceLevel = 0
|
||||
+# By default we configure samhain to be nice with everything else on the system
|
||||
+SetNiceLevel = 10
|
||||
# SetIOLimit = 0
|
||||
|
||||
## The version string to embed in file signature databases
|
||||
@@ -565,13 +523,14 @@ ChecksumTest=check
|
||||
|
||||
## Interval between time stamp messages
|
||||
#
|
||||
-# SetLoopTime = 60
|
||||
-SetLoopTime = 600
|
||||
+# Log a timestamp every hour
|
||||
+SetLoopTime = 3600
|
||||
|
||||
## Interval between file checks
|
||||
#
|
||||
# SetFileCheckTime = 600
|
||||
-SetFileCheckTime = 7200
|
||||
+# One file system check per day
|
||||
+SetFileCheckTime = 86400
|
||||
|
||||
## Alternative: crontab-like schedule
|
||||
#
|
||||
@@ -0,0 +1 @@
|
||||
d daemon daemon 0775 /var/log/yule none
|
||||
@@ -0,0 +1 @@
|
||||
d /var/log/yule 0775 daemon daemon -
|
||||
@@ -0,0 +1,3 @@
|
||||
# Set this to "yes" to start the server, after you configure it, of
|
||||
# course.
|
||||
SAMHAIN_SERVER_START="no"
|
||||
@@ -0,0 +1,116 @@
|
||||
#!/bin/bash
|
||||
# chkconfig: 2345 98 11
|
||||
# description: File Integrity Checking Daemon
|
||||
#
|
||||
# processname: yule
|
||||
# config : /etc/yulerc
|
||||
# logfile : /var/log/yule/yule_log
|
||||
# database: /var/lib/yule/yule_file
|
||||
#
|
||||
|
||||
NAME=yule
|
||||
DAEMON=/usr/sbin/yule
|
||||
RETVAL=0
|
||||
PIDFILE=/var/run/yule.pid
|
||||
|
||||
. /etc/default/rcS
|
||||
|
||||
. /etc/default/samhain-server
|
||||
|
||||
if [ "x$SAMHAIN_SERVER_START" != "xyes" ]; then
|
||||
echo "${0}: server disabled in /etc/default/samhain-server"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ -x $DAEMON ]; then
|
||||
:
|
||||
else
|
||||
echo "${0}: executable ${DAEMON} not found"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
samhain_done()
|
||||
{
|
||||
if [ $RETVAL -eq 0 ]; then
|
||||
echo "."
|
||||
else
|
||||
echo " failed."
|
||||
fi
|
||||
}
|
||||
|
||||
log_stat_msg () {
|
||||
case "$1" in
|
||||
0)
|
||||
echo "Service $NAME: Running";
|
||||
;;
|
||||
1)
|
||||
echo "Service $NAME: Stopped and /var/run pid file exists";
|
||||
;;
|
||||
3)
|
||||
echo "Service $NAME: Stopped";
|
||||
;;
|
||||
*)
|
||||
echo "Service $NAME: Status unknown";
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
#
|
||||
# Remove a stale PID file, if found
|
||||
#
|
||||
if test -f ${PIDFILE}; then
|
||||
/bin/rm -f ${PIDFILE}
|
||||
fi
|
||||
#
|
||||
echo -n "Starting ${NAME}"
|
||||
start-stop-daemon --start --quiet --exec $DAEMON
|
||||
RETVAL=$?
|
||||
samhain_done
|
||||
;;
|
||||
|
||||
stop)
|
||||
echo -n "Stopping $NAME"
|
||||
start-stop-daemon --stop --quiet --exec $DAEMON
|
||||
RETVAL=$?
|
||||
|
||||
#
|
||||
# Remove a stale PID file, if found
|
||||
#
|
||||
if test -f ${PIDFILE}; then
|
||||
/bin/rm -f ${PIDFILE}
|
||||
fi
|
||||
if test -S /var/run/${NAME}.sock; then
|
||||
/bin/rm -f /var/run/${NAME}.sock
|
||||
fi
|
||||
samhain_done
|
||||
;;
|
||||
|
||||
restart)
|
||||
$0 stop
|
||||
sleep 3
|
||||
$0 start
|
||||
RETVAL=$?
|
||||
;;
|
||||
|
||||
reload|force-reload)
|
||||
echo -n "Reloading $NAME configuration files"
|
||||
start-stop-daemon --stop --signal 1 --quiet --exec $DAEMON
|
||||
RETVAL=$?
|
||||
samhain_done
|
||||
;;
|
||||
|
||||
status)
|
||||
$DAEMON status
|
||||
RETVAL=$?
|
||||
log_stat_msg ${RETVAL}
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "$0 usage: {start|stop|status|restart|reload}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit $RETVAL
|
||||
@@ -0,0 +1,22 @@
|
||||
samhain: fix sha256 for big-endian machines
|
||||
|
||||
After computing the digest, big-endian machines would
|
||||
memset() the digest to the first byte of state instead
|
||||
of using memcpy() to transfer it.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Joe Slater <jslater@windriver.com>
|
||||
|
||||
|
||||
--- a/src/sh_checksum.c
|
||||
+++ b/src/sh_checksum.c
|
||||
@@ -468,7 +468,7 @@ void SHA256_Final(sha2_byte digest[], SH
|
||||
}
|
||||
}
|
||||
#else
|
||||
- memset(d, context->state, SHA256_DIGEST_LENGTH);
|
||||
+ memcpy(d, context->state, SHA256_DIGEST_LENGTH);
|
||||
/* bcopy(context->state, d, SHA256_DIGEST_LENGTH); */
|
||||
#endif
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
# Set this to "yes" to start the server, after you configure it, of
|
||||
# course.
|
||||
SAMHAIN_STANDALONE_START="no"
|
||||
@@ -0,0 +1,123 @@
|
||||
#!/bin/sh
|
||||
# chkconfig: 2345 99 10
|
||||
# description: File Integrity Checking Daemon
|
||||
#
|
||||
# processname: samhain
|
||||
# config : /etc/samhainrc
|
||||
# logfile : /var/log/samhain_log
|
||||
# database: /var/lib/samhain/samhain_file
|
||||
#
|
||||
|
||||
NAME=samhain
|
||||
DAEMON=/usr/sbin/samhain
|
||||
RETVAL=0
|
||||
VERBOSE=yes
|
||||
PIDFILE=/var/run/samhain.pid
|
||||
|
||||
. /etc/default/samhain-standalone
|
||||
|
||||
if [ "x$SAMHAIN_STANDALONE_START" != "xyes" ]; then
|
||||
echo "${0}: samhain disabled in /etc/default/samhain-standalone"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ -x $DAEMON ]; then
|
||||
:
|
||||
else
|
||||
echo "${0}: executable ${DAEMON} not found"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -e /var/lib/samhain/samhain_file ]; then
|
||||
echo "${0}: /var/lib/samhain/samhain_file does not exist. You must"
|
||||
echo " run 'samhain -t init' before samhian can start."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
samhain_done()
|
||||
{
|
||||
if [ $RETVAL -eq 0 ]; then
|
||||
echo "."
|
||||
else
|
||||
echo " failed."
|
||||
fi
|
||||
}
|
||||
|
||||
log_stat_msg () {
|
||||
case "$1" in
|
||||
0)
|
||||
echo "Service $NAME: Running";
|
||||
;;
|
||||
1)
|
||||
echo "Service $NAME: Stopped and /var/run pid file exists";
|
||||
;;
|
||||
3)
|
||||
echo "Service $NAME: Stopped";
|
||||
;;
|
||||
*)
|
||||
echo "Service $NAME: Status unknown";
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
#
|
||||
# Remove a stale PID file, if found
|
||||
#
|
||||
if test -f ${PIDFILE}; then
|
||||
/bin/rm -f ${PIDFILE}
|
||||
fi
|
||||
|
||||
echo -n "Starting ${NAME}"
|
||||
start-stop-daemon --start --quiet --exec $DAEMON
|
||||
RETVAL=$?
|
||||
samhain_done
|
||||
exit $RETVAL
|
||||
;;
|
||||
stop)
|
||||
echo -n "Stopping $NAME"
|
||||
start-stop-daemon --stop --quiet --exec $DAEMON
|
||||
RETVAL=$?
|
||||
samhain_done
|
||||
#
|
||||
# Remove a stale PID file, if found
|
||||
#
|
||||
if test -f ${PIDFILE}; then
|
||||
/bin/rm -f ${PIDFILE}
|
||||
fi
|
||||
if test -S /var/run/${NAME}.sock; then
|
||||
/bin/rm -f /var/run/${NAME}.sock
|
||||
fi
|
||||
;;
|
||||
|
||||
restart)
|
||||
$0 stop
|
||||
sleep 3
|
||||
$0 start
|
||||
RETVAL=$?
|
||||
;;
|
||||
|
||||
reload|force-reload)
|
||||
echo -n "Reloading $NAME configuration files"
|
||||
start-stop-daemon --stop --signal 1 --quiet --exec $DAEMON
|
||||
RETVAL=$?
|
||||
samhain_done
|
||||
;;
|
||||
|
||||
status)
|
||||
if pidof -o %PPID $DAEMON > /dev/null; then
|
||||
echo "Samhain running"
|
||||
RETVAL=0
|
||||
else
|
||||
echo "Samhain not running"
|
||||
RETVAL=1
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo "$0 usage: {start|stop|status|restart|reload}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit $RETVAL
|
||||
@@ -0,0 +1,12 @@
|
||||
[Unit]
|
||||
Description=Samhain @MODE_NAME@ Daemon
|
||||
After=syslog.target network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
RemainAfterExit=yes
|
||||
ExecStart=@LIBDIR@/@SAMHAIN_HELPER@ start
|
||||
ExecStop=@LIBDIR@/@SAMHAIN_HELPER@ stop
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -0,0 +1,15 @@
|
||||
INITSCRIPT_PARAMS = "defaults 15 85"
|
||||
|
||||
require samhain.inc
|
||||
|
||||
# Let the default Logserver be 127.0.0.1
|
||||
EXTRA_OECONF += " \
|
||||
--with-logserver=${SAMHAIN_SERVER} \
|
||||
--with-port=${SAMHAIN_PORT} \
|
||||
"
|
||||
|
||||
MODE_NAME = "client"
|
||||
SAMHAIN_MODE = "client"
|
||||
|
||||
RDEPENDS:${PN} = "acl zlib attr bash"
|
||||
RCONFLICTS:${PN} = "samhain-standalone"
|
||||
@@ -0,0 +1,32 @@
|
||||
INITSCRIPT_PARAMS = "defaults 14 86"
|
||||
|
||||
require samhain.inc
|
||||
|
||||
DEPENDS = "gmp"
|
||||
|
||||
SRC_URI += "file://samhain-server-volatiles \
|
||||
file://samhain-server-volatiles.conf \
|
||||
"
|
||||
|
||||
MODE_NAME = "server"
|
||||
SAMHAIN_MODE = "server"
|
||||
|
||||
TARGET_CC_ARCH += "${LDFLAGS}"
|
||||
|
||||
do_install:append() {
|
||||
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
|
||||
install -d ${D}${sysconfdir}/tmpfiles.d
|
||||
install -m 0644 ${WORKDIR}/samhain-server-volatiles.conf \
|
||||
${D}${sysconfdir}/tmpfiles.d/samhain-server.conf
|
||||
else
|
||||
install -d ${D}${sysconfdir}/default/volatiles
|
||||
install -m 0644 ${WORKDIR}/samhain-server-volatiles \
|
||||
${D}${sysconfdir}/default/volatiles/samhain-server
|
||||
fi
|
||||
|
||||
install -m 700 samhain-install.sh init/samhain.startLinux \
|
||||
init/samhain.startLSB ${D}/var/lib/samhain
|
||||
}
|
||||
|
||||
RDEPENDS:${PN} += "gmp bash perl"
|
||||
RCONFLICTS:${PN} = "samhain-standalone"
|
||||
@@ -0,0 +1,35 @@
|
||||
require samhain.inc
|
||||
|
||||
SRC_URI += "file://samhain-not-run-ptest-on-host.patch \
|
||||
file://0001-Don-t-expose-configure-args.patch \
|
||||
file://run-ptest \
|
||||
"
|
||||
|
||||
PROVIDES += "samhain"
|
||||
|
||||
MODE_NAME = "standalone"
|
||||
SAMHAIN_MODE = "no"
|
||||
|
||||
SYSTEMD_SERVICE:${PN} = "samhain.service"
|
||||
|
||||
inherit ptest
|
||||
|
||||
do_compile() {
|
||||
if [ "${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'yes', 'no', d)}" = "yes" ]; then
|
||||
oe_runmake cutest
|
||||
rm -f ${S}*.o config_xor.h internal.h
|
||||
fi
|
||||
oe_runmake "$@"
|
||||
}
|
||||
|
||||
do_install:append() {
|
||||
ln -sf ${INITSCRIPT_NAME} ${D}${sysconfdir}/init.d/samhain
|
||||
}
|
||||
|
||||
do_install_ptest() {
|
||||
mkdir -p ${D}${PTEST_PATH}
|
||||
install ${S}/cutest ${D}${PTEST_PATH}
|
||||
}
|
||||
|
||||
RPROVIDES:${PN} += "samhain"
|
||||
RCONFLICTS:${PN} = "samhain-client samhain-server"
|
||||
@@ -0,0 +1,160 @@
|
||||
DESCRIPTION = "Provides file integrity checking and log file monitoring/analysis"
|
||||
HOMEPAGE = "http://www.la-samhna.de/samhain/"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=8ca43cbc842c2336e835926c2166c28b"
|
||||
|
||||
PV = "4.4.10"
|
||||
|
||||
SRC_URI = "https://la-samhna.de/archive/samhain_signed-${PV}.tar.gz \
|
||||
file://${INITSCRIPT_NAME}.init \
|
||||
file://${INITSCRIPT_NAME}.default \
|
||||
file://samhain.service \
|
||||
file://samhain-mips64-aarch64-dnmalloc-hash-fix.patch \
|
||||
file://samhain-samhainrc.patch \
|
||||
file://samhain-samhainrc-fix-files-dirs-path.patch \
|
||||
file://samhain-pid-path.patch \
|
||||
file://samhain-sha256-big-endian.patch \
|
||||
file://samhain-configure-add-option-for-ps.patch \
|
||||
file://samhain-avoid-searching-host-for-postgresql.patch \
|
||||
file://samhain-add-LDFLAGS-variable-for-samhain_setpwd.patch \
|
||||
file://fix-build-with-new-version-attr.patch \
|
||||
file://samhain-fix-initializer-element-is-not-constant.patch \
|
||||
"
|
||||
|
||||
SRC_URI[sha256sum] = "ae6ee8eff3cb111b7fc14a57bcc258443dd0bcf1bfacfdf229935ed053c1ce3d"
|
||||
|
||||
UPSTREAM_CHECK_URI = "https://www.la-samhna.de/samhain/archive.html"
|
||||
UPSTREAM_CHECK_REGEX = "samhain_signed-(?P<pver>(\d+(\.\d+)+))\.tar"
|
||||
|
||||
S = "${WORKDIR}/samhain-${PV}"
|
||||
|
||||
inherit autotools-brokensep update-rc.d pkgconfig systemd
|
||||
|
||||
SAMHAIN_PORT ??= "49777"
|
||||
SAMHAIN_SERVER ??= "NULL"
|
||||
|
||||
INITSCRIPT_NAME = "${BPN}"
|
||||
INITSCRIPT_PARAMS ?= "defaults"
|
||||
|
||||
SYSTEMD_PACKAGES = "${PN}"
|
||||
SYSTEMD_SERVICE:${PN} = "${INITSCRIPT_NAME}.service"
|
||||
SYSTEMD_AUTO_ENABLE = "disable"
|
||||
|
||||
# supports mysql|postgresql|oracle|odbc but postgresql is the only one available
|
||||
|
||||
PACKAGECONFIG ??= "postgresql ps \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6', '', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux audit', '', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'acl', 'acl', '', d)} \
|
||||
"
|
||||
|
||||
PACKAGECONFIG[postgresql] = "--with-database=postgresql --enable-xml-log PGSQL_INC_DIR=${STAGING_INCDIR} PGSQL_LIB_DIR=${STAGING_LIBDIR}, , postgresql"
|
||||
PACKAGECONFIG[suidcheck] = "--enable-suidcheck, , "
|
||||
PACKAGECONFIG[logwatch] = "--enable-login-watch, , "
|
||||
PACKAGECONFIG[mounts] = "--enable-mounts-check, , "
|
||||
PACKAGECONFIG[userfiles] = "--enable-userfiles, , "
|
||||
PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
|
||||
PACKAGECONFIG[selinux] = "--enable-selinux, --disable-selinux, libselinux attr"
|
||||
PACKAGECONFIG[acl] = " --enable-posix-acl , --disable-posix-acl, acl"
|
||||
PACKAGECONFIG[audit] = "ac_cv_header_auparse_h=yes,ac_cv_header_auparse_h=no,audit"
|
||||
PACKAGECONFIG[ps] = "--with-ps-path=${base_bindir}/ps,,,procps"
|
||||
|
||||
EXTRA_OEMAKE:append:aarch64 = " CPPFLAGS+=-DCONFIG_ARCH_AARCH64=1"
|
||||
EXTRA_OEMAKE:append:mips64 = " CPPFLAGS+=-DCONFIG_ARCH_MIPS64=1"
|
||||
|
||||
do_unpack_samhain() {
|
||||
cd ${WORKDIR}
|
||||
tar -xzvf samhain-${PV}.tar.gz
|
||||
}
|
||||
|
||||
python do_unpack:append() {
|
||||
bb.build.exec_func('do_unpack_samhain', d)
|
||||
}
|
||||
|
||||
do_configure:prepend:arm() {
|
||||
export sh_cv___va_copy=yes
|
||||
}
|
||||
|
||||
do_configure:prepend:aarch64() {
|
||||
export sh_cv___va_copy=yes
|
||||
}
|
||||
|
||||
# If we use oe_runconf in do_configure() it will by default
|
||||
# use the prefix --oldincludedir=/usr/include which is not
|
||||
# recognized by Samhain's configure script and would invariably
|
||||
# throw back the error "unrecognized option: --oldincludedir=/usr/include"
|
||||
do_configure:prepend () {
|
||||
cat << EOF > ${S}/config-site.${BP}
|
||||
ssp_cv_lib=no
|
||||
sh_cv_va_copy=yes
|
||||
EOF
|
||||
export CONFIG_SITE=${S}/config-site.${BP}
|
||||
}
|
||||
|
||||
do_configure () {
|
||||
autoconf -f
|
||||
./configure \
|
||||
--build=${BUILD_SYS} \
|
||||
--host=${HOST_SYS} \
|
||||
--target=${TARGET_SYS} \
|
||||
--prefix=${prefix} \
|
||||
--exec_prefix=${exec_prefix} \
|
||||
--bindir=${bindir} \
|
||||
--sbindir=${sbindir} \
|
||||
--libexecdir=${libexecdir} \
|
||||
--datadir=${datadir} \
|
||||
--sysconfdir=${sysconfdir} \
|
||||
--sharedstatedir=${sharedstatedir} \
|
||||
--localstatedir=${localstatedir} \
|
||||
--libdir=${libdir} \
|
||||
--includedir=${includedir} \
|
||||
--infodir=${infodir} \
|
||||
--mandir=${mandir} \
|
||||
--enable-network=${SAMHAIN_MODE} \
|
||||
--with-pid-file=${localstatedir}/run/samhain.pid \
|
||||
--with-data-file=${localstatedir}/lib/samhain/samhain_file \
|
||||
${EXTRA_OECONF}
|
||||
}
|
||||
|
||||
do_compile:prepend:libc-musl () {
|
||||
sed -i 's/^#define HAVE_MALLOC_H.*//' ${B}/config.h
|
||||
}
|
||||
|
||||
# Install the init script, it's default file, and the extraneous
|
||||
# documentation.
|
||||
do_install:append () {
|
||||
oe_runmake install DESTDIR='${D}' INSTALL=install-boot
|
||||
|
||||
install -D -m 755 ${WORKDIR}/${INITSCRIPT_NAME}.init \
|
||||
${D}${sysconfdir}/init.d/${INITSCRIPT_NAME}
|
||||
|
||||
install -D -m 755 ${WORKDIR}/${INITSCRIPT_NAME}.default \
|
||||
${D}${sysconfdir}/default/${INITSCRIPT_NAME}
|
||||
|
||||
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
|
||||
if [ "${SAMHAIN_MODE}" = "no" ]; then
|
||||
install -D -m 0644 ${WORKDIR}/samhain.service ${D}/${systemd_system_unitdir}/samhain.service
|
||||
else
|
||||
install -D -m 0644 ${WORKDIR}/samhain.service ${D}/${systemd_system_unitdir}/${BPN}.service
|
||||
fi
|
||||
install -D -m 0755 ${WORKDIR}/${BPN}.init ${D}/${libexecdir}/${BPN}
|
||||
sed -i -e 's,@LIBDIR@,${libexecdir},' \
|
||||
-e 's,@SAMHAIN_HELPER@,${BPN},' \
|
||||
-e 's,@MODE_NAME@,${MODE_NAME},' \
|
||||
${D}${systemd_system_unitdir}/samhain*.service
|
||||
fi
|
||||
|
||||
install -d ${D}${docdir}/${BPN}
|
||||
cp -r docs/* ${D}${docdir}/${BPN}
|
||||
cp -r scripts ${D}${docdir}/${BPN}
|
||||
install -d -m 755 ${D}${localstatedir}/samhain
|
||||
|
||||
# Prevent QA warnings about installed ${localstatedir}/run
|
||||
if [ -d ${D}${localstatedir}/run ]; then
|
||||
rmdir ${D}${localstatedir}/run
|
||||
fi
|
||||
|
||||
rm -rf ${D}${localstatedir}/log
|
||||
}
|
||||
|
||||
FILES:${PN} += "${systemd_system_unitdir}"
|
||||
@@ -0,0 +1,32 @@
|
||||
Skip pkg Makefile from using its own rust steps
|
||||
|
||||
Upstream-Status: Inappropriate [OE Specific]
|
||||
|
||||
Signed-off-by: Armin Kuster <akuster808@gmail.com>
|
||||
|
||||
Index: suricata-6.0.2/Makefile.am
|
||||
===================================================================
|
||||
--- suricata-6.0.2.orig/Makefile.am
|
||||
+++ suricata-6.0.2/Makefile.am
|
||||
@@ -7,7 +7,7 @@ EXTRA_DIST = ChangeLog COPYING LICENSE s
|
||||
$(SURICATA_UPDATE_DIR) \
|
||||
lua \
|
||||
acsite.m4
|
||||
-SUBDIRS = $(HTP_DIR) rust src qa rules doc contrib etc python ebpf \
|
||||
+SUBDIRS = $(HTP_DIR) src qa rules doc contrib etc python ebpf \
|
||||
$(SURICATA_UPDATE_DIR)
|
||||
|
||||
CLEANFILES = stamp-h[0-9]*
|
||||
Index: suricata-6.0.2/Makefile.in
|
||||
===================================================================
|
||||
--- suricata-6.0.2.orig/Makefile.in
|
||||
+++ suricata-6.0.2/Makefile.in
|
||||
@@ -426,7 +426,7 @@ EXTRA_DIST = ChangeLog COPYING LICENSE s
|
||||
lua \
|
||||
acsite.m4
|
||||
|
||||
-SUBDIRS = $(HTP_DIR) rust src qa rules doc contrib etc python ebpf \
|
||||
+SUBDIRS = $(HTP_DIR) src qa rules doc contrib etc python ebpf \
|
||||
$(SURICATA_UPDATE_DIR)
|
||||
|
||||
CLEANFILES = stamp-h[0-9]*
|
||||
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
suricata -u
|
||||
@@ -0,0 +1,20 @@
|
||||
[Unit]
|
||||
Description=Suricata IDS/IDP daemon
|
||||
After=network.target
|
||||
Requires=network.target
|
||||
Documentation=man:suricata(8) man:suricatasc(8)
|
||||
Documentation=https://redmine.openinfosecfoundation.org/projects/suricata/wiki
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_RAW
|
||||
RestrictAddressFamilies=
|
||||
ExecStart=/usr/bin/suricata -c /etc/suricata/suricata.yaml eth0
|
||||
ExecReload=/bin/kill -HUP $MAINPID
|
||||
PrivateTmp=yes
|
||||
ProtectHome=yes
|
||||
ProtectSystem=yes
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,2 @@
|
||||
#Type Path Mode UID GID Age Argument
|
||||
d /var/log/suricata 0755 root root
|
||||
@@ -0,0 +1,2 @@
|
||||
# <type> <owner> <group> <mode> <path> <linksource>
|
||||
d root root 0755 /var/log/suricata none
|
||||
@@ -0,0 +1,27 @@
|
||||
SUMMARY = "LibHTP is a security-aware parser for the HTTP protocol and the related bits and pieces."
|
||||
|
||||
require suricata.inc
|
||||
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;beginline=1;endline=2;md5=596ab7963a1a0e5198e5a1c4aa621843"
|
||||
|
||||
SRC_URI = "git://github.com/OISF/libhtp.git;protocol=https;branch=0.5.x"
|
||||
SRCREV = "be0063a6138f795fc1af76cc5340bcb11d3b0b87"
|
||||
|
||||
DEPENDS = "zlib"
|
||||
|
||||
inherit autotools-brokensep pkgconfig
|
||||
|
||||
CFLAGS += "-D_DEFAULT_SOURCE"
|
||||
|
||||
#S = "${WORKDIR}/suricata-${VER}/${BPN}"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
do_configure () {
|
||||
cd ${S}
|
||||
./autogen.sh
|
||||
oe_runconf
|
||||
}
|
||||
|
||||
RDEPENDS:${PN} += "zlib"
|
||||
|
||||
@@ -0,0 +1,724 @@
|
||||
# ak did manually
|
||||
SRC_URI += " \
|
||||
crate://crates.io/autocfg/1.0.1;name=autocfg-1.0.1 \
|
||||
crate://crates.io/brotli/3.3.0;name=brotli-3.0.3 \
|
||||
crate://crates.io/crc/1.8.1;name=crc-1.8.1 \
|
||||
crate://crates.io/der-parser/0.5.0;name=der-parser-0.5.0 \
|
||||
crate://crates.io/der-parser/4.1.0;name=der-parser-4.1.0 \
|
||||
crate://crates.io/der-parser/3.0.4;name=der-parser-3.0.4 \
|
||||
crate://crates.io/flate2/1.0.20;name=flate2-1.0.20 \
|
||||
crate://crates.io/ipsec-parser/0.5.0;name=ipsec-parser-0.5.0 \
|
||||
crate://crates.io/kerberos-parser/0.5.0;name=kerberos-parser-0.5.0 \
|
||||
crate://crates.io/md5/0.7.0;name=md5-0.7.0 \
|
||||
crate://crates.io/memchr/2.3.4;name=memchr-2.3.4 \
|
||||
crate://crates.io/nom/5.1.1;name=nom-5.1.1 \
|
||||
crate://crates.io/ntp-parser/0.4.0;name=ntp-parser-0.5.0 \
|
||||
crate://crates.io/num/0.2.1;name=num-0.2.1 \
|
||||
crate://crates.io/num-derive/0.2.5;name=num-derive-0.2.5 \
|
||||
crate://crates.io/snmp-parser/0.6.0;name=snmp-parser-0.6.0 \
|
||||
crate://crates.io/tls-parser/0.9.4;name=tls-parser-0.9.4 \
|
||||
crate://crates.io/uuid/0.8.2;name=uuid-0.8.2 \
|
||||
crate://crates.io/widestring/0.4.3;name=widestring-0.4.3 \
|
||||
crate://crates.io/x509-parser/0.6.5;name=x509-parser-0.6.5 \
|
||||
crate://crates.io/build_const/0.2.1;name=build_const-0.2.1 \
|
||||
crate://crates.io/der-oid-macro/0.2.0;name=der-oid-macro-0.2.0 \
|
||||
crate://crates.io/proc-macro-hack/0.5.19;name=proc-macro-hack-0.5.19 \
|
||||
crate://crates.io/rusticata-macros/2.1.0;name=rusticata-macros-2.1.0 \
|
||||
crate://crates.io/miniz_oxide/0.4.4;name=miniz_oxide-0.4.4 \
|
||||
crate://crates.io/num-bigint/0.2.6;name=num-bigint-0.2.6 \
|
||||
crate://crates.io/num-bigint/0.3.1;name=num-bigint-0.3.1 \
|
||||
crate://crates.io/num-complex/0.2.4;name=num-complex-0.2.4 \
|
||||
crate://crates.io/num-integer/0.1.44;name=num-integer-0.1.44 \
|
||||
crate://crates.io/num-iter/0.1.42;name=num-iter-0.1.42 \
|
||||
crate://crates.io/num-rational/0.2.4;name=num-rational-0.2.4 \
|
||||
crate://crates.io/num-traits/0.2.14;name=num-traits-0.2.14 \
|
||||
crate://crates.io/num-traits/0.1.43;name=num-traits-0.1.43 \
|
||||
crate://crates.io/enum_primitive/0.1.1;name=enum_primitive-0.1.1 \
|
||||
crate://crates.io/phf/0.8.0;name=phf-0.8.0 \
|
||||
crate://crates.io/phf_codegen/0.8.0;name=phf_codegen-0.8.0 \
|
||||
crate://crates.io/phf_generator/0.8.0;name=phf_generator-0.8.0 \
|
||||
crate://crates.io/base64/0.11.0;name=base64-0.11.0 \
|
||||
crate://crates.io/time/0.1.44;name=time-0.1.44 \
|
||||
crate://crates.io/wasi/0.10.0+wasi-snapshot-preview1;name=wasi-0.10.0+wasi-snapshot-preview1 \
|
||||
crate://crates.io/lexical-core/0.6.8;name=lexical-core-0.6.8 \
|
||||
"
|
||||
|
||||
# test case support
|
||||
SRC_URI += " \
|
||||
crate://crates.io/test-case/1.0.1;name=test-case-1.0.1 \
|
||||
"
|
||||
|
||||
# Autogenerated with 'bitbake -c update_crates suricata'
|
||||
# from vendor/base64/Cargo.lock
|
||||
SRC_URI += " \
|
||||
crate://crates.io/arrayvec/0.4.11;name=arrayvec-0.4.11 \
|
||||
crate://crates.io/atty/0.2.12;name=atty-0.2.12 \
|
||||
crate://crates.io/autocfg/0.1.4;name=autocfg-0.1.4 \
|
||||
crate://crates.io/bitflags/1.1.0;name=bitflags-1.1.0 \
|
||||
crate://crates.io/bstr/0.2.1;name=bstr-0.2.1 \
|
||||
crate://crates.io/byteorder/1.3.2;name=byteorder-1.3.2 \
|
||||
crate://crates.io/cast/0.2.2;name=cast-0.2.2 \
|
||||
crate://crates.io/cfg-if/0.1.9;name=cfg-if-0.1.9 \
|
||||
crate://crates.io/clap/2.33.0;name=clap-2.33.0 \
|
||||
crate://crates.io/cloudabi/0.0.3;name=cloudabi-0.0.3 \
|
||||
crate://crates.io/criterion/0.3.0;name=criterion-0.3.0 \
|
||||
crate://crates.io/criterion-plot/0.4.0;name=criterion-plot-0.4.0 \
|
||||
crate://crates.io/crossbeam-deque/0.6.3;name=crossbeam-deque-0.6.3 \
|
||||
crate://crates.io/crossbeam-epoch/0.7.1;name=crossbeam-epoch-0.7.1 \
|
||||
crate://crates.io/crossbeam-queue/0.1.2;name=crossbeam-queue-0.1.2 \
|
||||
crate://crates.io/crossbeam-utils/0.6.5;name=crossbeam-utils-0.6.5 \
|
||||
crate://crates.io/csv/1.1.1;name=csv-1.1.1 \
|
||||
crate://crates.io/csv-core/0.1.6;name=csv-core-0.1.6 \
|
||||
crate://crates.io/doc-comment/0.3.1;name=doc-comment-0.3.1 \
|
||||
crate://crates.io/either/1.5.2;name=either-1.5.2 \
|
||||
crate://crates.io/fuchsia-cprng/0.1.1;name=fuchsia-cprng-0.1.1 \
|
||||
crate://crates.io/getrandom/0.1.13;name=getrandom-0.1.13 \
|
||||
crate://crates.io/itertools/0.8.0;name=itertools-0.8.0 \
|
||||
crate://crates.io/itoa/0.4.4;name=itoa-0.4.4 \
|
||||
crate://crates.io/lazy_static/1.3.0;name=lazy_static-1.3.0 \
|
||||
crate://crates.io/libc/0.2.65;name=libc-0.2.65 \
|
||||
crate://crates.io/memchr/2.2.1;name=memchr-2.2.1 \
|
||||
crate://crates.io/memoffset/0.2.1;name=memoffset-0.2.1 \
|
||||
crate://crates.io/nodrop/0.1.13;name=nodrop-0.1.13 \
|
||||
crate://crates.io/num-traits/0.2.8;name=num-traits-0.2.8 \
|
||||
crate://crates.io/num_cpus/1.10.1;name=num_cpus-1.10.1 \
|
||||
crate://crates.io/proc-macro2/0.4.30;name=proc-macro2-0.4.30 \
|
||||
crate://crates.io/quote/0.6.13;name=quote-0.6.13 \
|
||||
crate://crates.io/rand/0.6.5;name=rand-0.6.5 \
|
||||
crate://crates.io/rand_chacha/0.1.1;name=rand_chacha-0.1.1 \
|
||||
crate://crates.io/rand_core/0.3.1;name=rand_core-0.3.1 \
|
||||
crate://crates.io/rand_core/0.4.0;name=rand_core-0.4.0 \
|
||||
crate://crates.io/rand_core/0.5.1;name=rand_core-0.5.1 \
|
||||
crate://crates.io/rand_hc/0.1.0;name=rand_hc-0.1.0 \
|
||||
crate://crates.io/rand_isaac/0.1.1;name=rand_isaac-0.1.1 \
|
||||
crate://crates.io/rand_jitter/0.1.4;name=rand_jitter-0.1.4 \
|
||||
crate://crates.io/rand_os/0.1.3;name=rand_os-0.1.3 \
|
||||
crate://crates.io/rand_os/0.2.2;name=rand_os-0.2.2 \
|
||||
crate://crates.io/rand_pcg/0.1.2;name=rand_pcg-0.1.2 \
|
||||
crate://crates.io/rand_xorshift/0.1.1;name=rand_xorshift-0.1.1 \
|
||||
crate://crates.io/rand_xoshiro/0.3.1;name=rand_xoshiro-0.3.1 \
|
||||
crate://crates.io/rayon/1.1.0;name=rayon-1.1.0 \
|
||||
crate://crates.io/rayon-core/1.5.0;name=rayon-core-1.5.0 \
|
||||
crate://crates.io/rdrand/0.4.0;name=rdrand-0.4.0 \
|
||||
crate://crates.io/regex-automata/0.1.7;name=regex-automata-0.1.7 \
|
||||
crate://crates.io/ryu/1.0.0;name=ryu-1.0.0 \
|
||||
crate://crates.io/same-file/1.0.4;name=same-file-1.0.4 \
|
||||
crate://crates.io/scopeguard/0.3.3;name=scopeguard-0.3.3 \
|
||||
crate://crates.io/serde/1.0.94;name=serde-1.0.94 \
|
||||
crate://crates.io/serde_derive/1.0.94;name=serde_derive-1.0.94 \
|
||||
crate://crates.io/serde_json/1.0.40;name=serde_json-1.0.40 \
|
||||
crate://crates.io/syn/0.15.39;name=syn-0.15.39 \
|
||||
crate://crates.io/textwrap/0.11.0;name=textwrap-0.11.0 \
|
||||
crate://crates.io/tinytemplate/1.0.2;name=tinytemplate-1.0.2 \
|
||||
crate://crates.io/unicode-width/0.1.5;name=unicode-width-0.1.5 \
|
||||
crate://crates.io/unicode-xid/0.1.0;name=unicode-xid-0.1.0 \
|
||||
crate://crates.io/walkdir/2.2.8;name=walkdir-2.2.8 \
|
||||
crate://crates.io/wasi/0.7.0;name=wasi-0.7.0 \
|
||||
crate://crates.io/winapi/0.3.7;name=winapi-0.3.7 \
|
||||
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0;name=winapi-i686-pc-windows-gnu-0.4.0 \
|
||||
crate://crates.io/winapi-util/0.1.2;name=winapi-util-0.1.2 \
|
||||
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0;name=winapi-x86_64-pc-windows-gnu-0.4.0 \
|
||||
"
|
||||
|
||||
# from vendor/ryu/Cargo.lock
|
||||
SRC_URI += " \
|
||||
crate://crates.io/cfg-if/1.0.0;name=cfg-if-1.0.0 \
|
||||
crate://crates.io/getrandom/0.2.7;name=getrandom-0.2.7 \
|
||||
crate://crates.io/hermit-abi/0.1.19;name=hermit-abi-0.1.19 \
|
||||
crate://crates.io/libc/0.2.134;name=libc-0.2.134 \
|
||||
crate://crates.io/no-panic/0.1.16;name=no-panic-0.1.16 \
|
||||
crate://crates.io/num_cpus/1.13.1;name=num_cpus-1.13.1 \
|
||||
crate://crates.io/ppv-lite86/0.2.16;name=ppv-lite86-0.2.16 \
|
||||
crate://crates.io/proc-macro2/1.0.46;name=proc-macro2-1.0.46 \
|
||||
crate://crates.io/quote/1.0.21;name=quote-1.0.21 \
|
||||
crate://crates.io/rand/0.8.5;name=rand-0.8.5 \
|
||||
crate://crates.io/rand_chacha/0.3.1;name=rand_chacha-0.3.1 \
|
||||
crate://crates.io/rand_core/0.6.4;name=rand_core-0.6.4 \
|
||||
crate://crates.io/rand_xorshift/0.3.0;name=rand_xorshift-0.3.0 \
|
||||
crate://crates.io/syn/1.0.102;name=syn-1.0.102 \
|
||||
crate://crates.io/unicode-ident/1.0.4;name=unicode-ident-1.0.4 \
|
||||
crate://crates.io/wasi/0.11.0+wasi-snapshot-preview1;name=wasi-0.11.0+wasi-snapshot-preview1 \
|
||||
"
|
||||
|
||||
SRC_URI[cfg-if-1.0.0.sha256sum] = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
||||
SRC_URI[getrandom-0.2.7.sha256sum] = "4eb1a864a501629691edf6c15a593b7a51eebaa1e8468e9ddc623de7c9b58ec6"
|
||||
SRC_URI[hermit-abi-0.1.19.sha256sum] = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
|
||||
SRC_URI[libc-0.2.134.sha256sum] = "329c933548736bc49fd575ee68c89e8be4d260064184389a5b77517cddd99ffb"
|
||||
SRC_URI[no-panic-0.1.16.sha256sum] = "12f10d4b6dcf2138f0fc171f4cc8f49517cc71ac57e29aa061c61aa57ec2dffc"
|
||||
SRC_URI[num_cpus-1.13.1.sha256sum] = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1"
|
||||
SRC_URI[ppv-lite86-0.2.16.sha256sum] = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872"
|
||||
SRC_URI[proc-macro2-1.0.46.sha256sum] = "94e2ef8dbfc347b10c094890f778ee2e36ca9bb4262e86dc99cd217e35f3470b"
|
||||
SRC_URI[quote-1.0.21.sha256sum] = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179"
|
||||
SRC_URI[rand-0.8.5.sha256sum] = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
|
||||
SRC_URI[rand_chacha-0.3.1.sha256sum] = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
|
||||
SRC_URI[rand_core-0.6.4.sha256sum] = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
|
||||
SRC_URI[rand_xorshift-0.3.0.sha256sum] = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f"
|
||||
SRC_URI[syn-1.0.102.sha256sum] = "3fcd952facd492f9be3ef0d0b7032a6e442ee9b361d4acc2b1d0c4aaa5f613a1"
|
||||
SRC_URI[unicode-ident-1.0.4.sha256sum] = "dcc811dc4066ac62f84f11307873c4850cb653bfa9b1719cee2bd2204a4bc5dd"
|
||||
SRC_URI[wasi-0.11.0+wasi-snapshot-preview1.sha256sum] = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
|
||||
# from vendor/flate2/Cargo.lock
|
||||
SRC_URI += " \
|
||||
crate://crates.io/adler/1.0.2;name=adler-1.0.2 \
|
||||
crate://crates.io/cc/1.0.77;name=cc-1.0.77 \
|
||||
crate://crates.io/cfg-if/1.0.0;name=cfg-if-1.0.0 \
|
||||
crate://crates.io/cloudflare-zlib-sys/0.3.0;name=cloudflare-zlib-sys-0.3.0 \
|
||||
crate://crates.io/cmake/0.1.49;name=cmake-0.1.49 \
|
||||
crate://crates.io/crc32fast/1.3.2;name=crc32fast-1.3.2 \
|
||||
crate://crates.io/getrandom/0.2.8;name=getrandom-0.2.8 \
|
||||
crate://crates.io/libc/0.2.137;name=libc-0.2.137 \
|
||||
crate://crates.io/libz-ng-sys/1.1.8;name=libz-ng-sys-1.1.8 \
|
||||
crate://crates.io/libz-sys/1.1.8;name=libz-sys-1.1.8 \
|
||||
crate://crates.io/miniz_oxide/0.6.2;name=miniz_oxide-0.6.2 \
|
||||
crate://crates.io/pkg-config/0.3.26;name=pkg-config-0.3.26 \
|
||||
crate://crates.io/ppv-lite86/0.2.17;name=ppv-lite86-0.2.17 \
|
||||
crate://crates.io/quickcheck/1.0.3;name=quickcheck-1.0.3 \
|
||||
crate://crates.io/rand/0.8.5;name=rand-0.8.5 \
|
||||
crate://crates.io/rand_chacha/0.3.1;name=rand_chacha-0.3.1 \
|
||||
crate://crates.io/rand_core/0.6.4;name=rand_core-0.6.4 \
|
||||
crate://crates.io/vcpkg/0.2.15;name=vcpkg-0.2.15 \
|
||||
crate://crates.io/wasi/0.11.0+wasi-snapshot-preview1;name=wasi-0.11.0+wasi-snapshot-preview1 \
|
||||
"
|
||||
|
||||
SRC_URI[adler-1.0.2.sha256sum] = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
|
||||
SRC_URI[cc-1.0.77.sha256sum] = "e9f73505338f7d905b19d18738976aae232eb46b8efc15554ffc56deb5d9ebe4"
|
||||
SRC_URI[cfg-if-1.0.0.sha256sum] = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
||||
SRC_URI[cloudflare-zlib-sys-0.3.0.sha256sum] = "2040b6d1edfee6d75f172d81e2d2a7807534f3f294ce18184c70e7bb0105cd6f"
|
||||
SRC_URI[cmake-0.1.49.sha256sum] = "db34956e100b30725f2eb215f90d4871051239535632f84fea3bc92722c66b7c"
|
||||
SRC_URI[crc32fast-1.3.2.sha256sum] = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
|
||||
SRC_URI[getrandom-0.2.8.sha256sum] = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
|
||||
SRC_URI[libc-0.2.137.sha256sum] = "fc7fcc620a3bff7cdd7a365be3376c97191aeaccc2a603e600951e452615bf89"
|
||||
SRC_URI[libz-ng-sys-1.1.8.sha256sum] = "4399ae96a9966bf581e726de86969f803a81b7ce795fcd5480e640589457e0f2"
|
||||
SRC_URI[libz-sys-1.1.8.sha256sum] = "9702761c3935f8cc2f101793272e202c72b99da8f4224a19ddcf1279a6450bbf"
|
||||
SRC_URI[miniz_oxide-0.6.2.sha256sum] = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa"
|
||||
SRC_URI[pkg-config-0.3.26.sha256sum] = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
|
||||
SRC_URI[ppv-lite86-0.2.17.sha256sum] = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
|
||||
SRC_URI[quickcheck-1.0.3.sha256sum] = "588f6378e4dd99458b60ec275b4477add41ce4fa9f64dcba6f15adccb19b50d6"
|
||||
SRC_URI[rand-0.8.5.sha256sum] = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
|
||||
SRC_URI[rand_chacha-0.3.1.sha256sum] = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
|
||||
SRC_URI[rand_core-0.6.4.sha256sum] = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
|
||||
SRC_URI[vcpkg-0.2.15.sha256sum] = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
|
||||
SRC_URI[wasi-0.11.0+wasi-snapshot-preview1.sha256sum] = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
|
||||
# from vendor/nom/Cargo.lock
|
||||
SRC_URI += " \
|
||||
crate://crates.io/aho-corasick/0.7.6;name=aho-corasick-0.7.6 \
|
||||
crate://crates.io/arrayvec/0.4.11;name=arrayvec-0.4.11 \
|
||||
crate://crates.io/atty/0.2.13;name=atty-0.2.13 \
|
||||
crate://crates.io/autocfg/0.1.6;name=autocfg-0.1.6 \
|
||||
crate://crates.io/bitflags/1.2.1;name=bitflags-1.2.1 \
|
||||
crate://crates.io/bstr/0.2.7;name=bstr-0.2.7 \
|
||||
crate://crates.io/byteorder/1.3.2;name=byteorder-1.3.2 \
|
||||
crate://crates.io/cast/0.2.2;name=cast-0.2.2 \
|
||||
crate://crates.io/cc/1.0.40;name=cc-1.0.40 \
|
||||
crate://crates.io/cfg-if/0.1.9;name=cfg-if-0.1.9 \
|
||||
crate://crates.io/clap/2.33.0;name=clap-2.33.0 \
|
||||
crate://crates.io/cloudabi/0.0.3;name=cloudabi-0.0.3 \
|
||||
crate://crates.io/criterion/0.2.11;name=criterion-0.2.11 \
|
||||
crate://crates.io/criterion-plot/0.3.1;name=criterion-plot-0.3.1 \
|
||||
crate://crates.io/crossbeam-deque/0.6.3;name=crossbeam-deque-0.6.3 \
|
||||
crate://crates.io/crossbeam-epoch/0.7.2;name=crossbeam-epoch-0.7.2 \
|
||||
crate://crates.io/crossbeam-queue/0.1.2;name=crossbeam-queue-0.1.2 \
|
||||
crate://crates.io/crossbeam-utils/0.6.6;name=crossbeam-utils-0.6.6 \
|
||||
crate://crates.io/csv/1.1.1;name=csv-1.1.1 \
|
||||
crate://crates.io/csv-core/0.1.6;name=csv-core-0.1.6 \
|
||||
crate://crates.io/doc-comment/0.3.1;name=doc-comment-0.3.1 \
|
||||
crate://crates.io/either/1.5.2;name=either-1.5.2 \
|
||||
crate://crates.io/fs_extra/1.1.0;name=fs_extra-1.1.0 \
|
||||
crate://crates.io/fuchsia-cprng/0.1.1;name=fuchsia-cprng-0.1.1 \
|
||||
crate://crates.io/itertools/0.8.0;name=itertools-0.8.0 \
|
||||
crate://crates.io/itoa/0.4.4;name=itoa-0.4.4 \
|
||||
crate://crates.io/jemalloc-sys/0.1.8;name=jemalloc-sys-0.1.8 \
|
||||
crate://crates.io/jemallocator/0.1.9;name=jemallocator-0.1.9 \
|
||||
crate://crates.io/lazy_static/1.3.0;name=lazy_static-1.3.0 \
|
||||
crate://crates.io/lexical-core/0.6.7;name=lexical-core-0.6.7 \
|
||||
crate://crates.io/libc/0.2.62;name=libc-0.2.62 \
|
||||
crate://crates.io/memchr/2.2.1;name=memchr-2.2.1 \
|
||||
crate://crates.io/memoffset/0.5.1;name=memoffset-0.5.1 \
|
||||
crate://crates.io/nodrop/0.1.13;name=nodrop-0.1.13 \
|
||||
crate://crates.io/num-traits/0.2.8;name=num-traits-0.2.8 \
|
||||
crate://crates.io/num_cpus/1.10.1;name=num_cpus-1.10.1 \
|
||||
crate://crates.io/proc-macro2/1.0.1;name=proc-macro2-1.0.1 \
|
||||
crate://crates.io/quote/1.0.2;name=quote-1.0.2 \
|
||||
crate://crates.io/rand_core/0.3.1;name=rand_core-0.3.1 \
|
||||
crate://crates.io/rand_core/0.4.2;name=rand_core-0.4.2 \
|
||||
crate://crates.io/rand_os/0.1.3;name=rand_os-0.1.3 \
|
||||
crate://crates.io/rand_xoshiro/0.1.0;name=rand_xoshiro-0.1.0 \
|
||||
crate://crates.io/rayon/1.1.0;name=rayon-1.1.0 \
|
||||
crate://crates.io/rayon-core/1.5.0;name=rayon-core-1.5.0 \
|
||||
crate://crates.io/rdrand/0.4.0;name=rdrand-0.4.0 \
|
||||
crate://crates.io/regex/1.2.1;name=regex-1.2.1 \
|
||||
crate://crates.io/regex-automata/0.1.8;name=regex-automata-0.1.8 \
|
||||
crate://crates.io/regex-syntax/0.6.11;name=regex-syntax-0.6.11 \
|
||||
crate://crates.io/rustc_version/0.2.3;name=rustc_version-0.2.3 \
|
||||
crate://crates.io/ryu/1.0.0;name=ryu-1.0.0 \
|
||||
crate://crates.io/same-file/1.0.5;name=same-file-1.0.5 \
|
||||
crate://crates.io/scopeguard/1.0.0;name=scopeguard-1.0.0 \
|
||||
crate://crates.io/semver/0.9.0;name=semver-0.9.0 \
|
||||
crate://crates.io/semver-parser/0.7.0;name=semver-parser-0.7.0 \
|
||||
crate://crates.io/serde/1.0.99;name=serde-1.0.99 \
|
||||
crate://crates.io/serde_derive/1.0.99;name=serde_derive-1.0.99 \
|
||||
crate://crates.io/serde_json/1.0.40;name=serde_json-1.0.40 \
|
||||
crate://crates.io/static_assertions/0.3.4;name=static_assertions-0.3.4 \
|
||||
crate://crates.io/syn/1.0.3;name=syn-1.0.3 \
|
||||
crate://crates.io/textwrap/0.11.0;name=textwrap-0.11.0 \
|
||||
crate://crates.io/thread_local/0.3.6;name=thread_local-0.3.6 \
|
||||
crate://crates.io/tinytemplate/1.0.2;name=tinytemplate-1.0.2 \
|
||||
crate://crates.io/unicode-width/0.1.6;name=unicode-width-0.1.6 \
|
||||
crate://crates.io/unicode-xid/0.2.0;name=unicode-xid-0.2.0 \
|
||||
crate://crates.io/version_check/0.9.1;name=version_check-0.9.1 \
|
||||
crate://crates.io/walkdir/2.2.9;name=walkdir-2.2.9 \
|
||||
crate://crates.io/winapi/0.3.7;name=winapi-0.3.7 \
|
||||
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0;name=winapi-i686-pc-windows-gnu-0.4.0 \
|
||||
crate://crates.io/winapi-util/0.1.2;name=winapi-util-0.1.2 \
|
||||
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0;name=winapi-x86_64-pc-windows-gnu-0.4.0 \
|
||||
"
|
||||
|
||||
# from vendor/brotli/Cargo.lock
|
||||
SRC_URI += " \
|
||||
crate://crates.io/alloc-no-stdlib/2.0.3;name=alloc-no-stdlib-2.0.3 \
|
||||
crate://crates.io/alloc-stdlib/0.2.1;name=alloc-stdlib-0.2.1 \
|
||||
crate://crates.io/block-buffer/0.7.3;name=block-buffer-0.7.3 \
|
||||
crate://crates.io/block-padding/0.1.5;name=block-padding-0.1.5 \
|
||||
crate://crates.io/brotli-decompressor/2.3.2;name=brotli-decompressor-2.3.2 \
|
||||
crate://crates.io/byte-tools/0.3.1;name=byte-tools-0.3.1 \
|
||||
crate://crates.io/byteorder/1.4.3;name=byteorder-1.4.3 \
|
||||
crate://crates.io/cfg-if/1.0.0;name=cfg-if-1.0.0 \
|
||||
crate://crates.io/digest/0.8.1;name=digest-0.8.1 \
|
||||
crate://crates.io/fake-simd/0.1.2;name=fake-simd-0.1.2 \
|
||||
crate://crates.io/generic-array/0.12.4;name=generic-array-0.12.4 \
|
||||
crate://crates.io/libm/0.1.4;name=libm-0.1.4 \
|
||||
crate://crates.io/opaque-debug/0.2.3;name=opaque-debug-0.2.3 \
|
||||
crate://crates.io/packed_simd_2/0.3.7;name=packed_simd_2-0.3.7 \
|
||||
crate://crates.io/sha2/0.8.2;name=sha2-0.8.2 \
|
||||
crate://crates.io/typenum/1.15.0;name=typenum-1.15.0 \
|
||||
"
|
||||
|
||||
SRC_URI[alloc-no-stdlib-2.0.3.sha256sum] = "35ef4730490ad1c4eae5c4325b2a95f521d023e5c885853ff7aca0a6a1631db3"
|
||||
SRC_URI[alloc-stdlib-0.2.1.sha256sum] = "697ed7edc0f1711de49ce108c541623a0af97c6c60b2f6e2b65229847ac843c2"
|
||||
SRC_URI[block-buffer-0.7.3.sha256sum] = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b"
|
||||
SRC_URI[block-padding-0.1.5.sha256sum] = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5"
|
||||
SRC_URI[brotli-decompressor-2.3.2.sha256sum] = "59ad2d4653bf5ca36ae797b1f4bb4dbddb60ce49ca4aed8a2ce4829f60425b80"
|
||||
SRC_URI[byte-tools-0.3.1.sha256sum] = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7"
|
||||
SRC_URI[byteorder-1.4.3.sha256sum] = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
|
||||
SRC_URI[cfg-if-1.0.0.sha256sum] = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
||||
SRC_URI[digest-0.8.1.sha256sum] = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5"
|
||||
SRC_URI[fake-simd-0.1.2.sha256sum] = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
|
||||
SRC_URI[generic-array-0.12.4.sha256sum] = "ffdf9f34f1447443d37393cc6c2b8313aebddcd96906caf34e54c68d8e57d7bd"
|
||||
SRC_URI[libm-0.1.4.sha256sum] = "7fc7aa29613bd6a620df431842069224d8bc9011086b1db4c0e0cd47fa03ec9a"
|
||||
SRC_URI[opaque-debug-0.2.3.sha256sum] = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
|
||||
SRC_URI[packed_simd_2-0.3.7.sha256sum] = "defdcfef86dcc44ad208f71d9ff4ce28df6537a4e0d6b0e8e845cb8ca10059a6"
|
||||
SRC_URI[sha2-0.8.2.sha256sum] = "a256f46ea78a0c0d9ff00077504903ac881a1dafdc20da66545699e7776b3e69"
|
||||
SRC_URI[typenum-1.15.0.sha256sum] = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987"
|
||||
# from vendor/alloc-stdlib/Cargo.lock
|
||||
SRC_URI += " \
|
||||
crate://crates.io/alloc-no-stdlib/2.0.4;name=alloc-no-stdlib-2.0.4 \
|
||||
"
|
||||
|
||||
SRC_URI[alloc-no-stdlib-2.0.4.sha256sum] = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3"
|
||||
# from vendor/brotli-decompressor/Cargo.lock
|
||||
SRC_URI += " \
|
||||
crate://crates.io/alloc-no-stdlib/2.0.4;name=alloc-no-stdlib-2.0.4 \
|
||||
crate://crates.io/alloc-stdlib/0.2.2;name=alloc-stdlib-0.2.2 \
|
||||
"
|
||||
|
||||
SRC_URI[alloc-no-stdlib-2.0.4.sha256sum] = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3"
|
||||
SRC_URI[alloc-stdlib-0.2.2.sha256sum] = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece"
|
||||
# from vendor/phf_generator/Cargo.lock
|
||||
SRC_URI += " \
|
||||
crate://crates.io/arrayvec/0.4.12;name=arrayvec-0.4.12 \
|
||||
crate://crates.io/atty/0.2.13;name=atty-0.2.13 \
|
||||
crate://crates.io/autocfg/0.1.6;name=autocfg-0.1.6 \
|
||||
crate://crates.io/bitflags/1.2.1;name=bitflags-1.2.1 \
|
||||
crate://crates.io/bstr/0.2.8;name=bstr-0.2.8 \
|
||||
crate://crates.io/byteorder/1.3.2;name=byteorder-1.3.2 \
|
||||
crate://crates.io/c2-chacha/0.2.2;name=c2-chacha-0.2.2 \
|
||||
crate://crates.io/cast/0.2.2;name=cast-0.2.2 \
|
||||
crate://crates.io/cfg-if/0.1.10;name=cfg-if-0.1.10 \
|
||||
crate://crates.io/clap/2.33.0;name=clap-2.33.0 \
|
||||
crate://crates.io/criterion/0.3.0;name=criterion-0.3.0 \
|
||||
crate://crates.io/criterion-plot/0.4.0;name=criterion-plot-0.4.0 \
|
||||
crate://crates.io/crossbeam-deque/0.7.1;name=crossbeam-deque-0.7.1 \
|
||||
crate://crates.io/crossbeam-epoch/0.7.2;name=crossbeam-epoch-0.7.2 \
|
||||
crate://crates.io/crossbeam-queue/0.1.2;name=crossbeam-queue-0.1.2 \
|
||||
crate://crates.io/crossbeam-utils/0.6.6;name=crossbeam-utils-0.6.6 \
|
||||
crate://crates.io/csv/1.1.1;name=csv-1.1.1 \
|
||||
crate://crates.io/csv-core/0.1.6;name=csv-core-0.1.6 \
|
||||
crate://crates.io/either/1.5.3;name=either-1.5.3 \
|
||||
crate://crates.io/getrandom/0.1.12;name=getrandom-0.1.12 \
|
||||
crate://crates.io/itertools/0.8.0;name=itertools-0.8.0 \
|
||||
crate://crates.io/itoa/0.4.4;name=itoa-0.4.4 \
|
||||
crate://crates.io/lazy_static/1.4.0;name=lazy_static-1.4.0 \
|
||||
crate://crates.io/libc/0.2.64;name=libc-0.2.64 \
|
||||
crate://crates.io/memchr/2.2.1;name=memchr-2.2.1 \
|
||||
crate://crates.io/memoffset/0.5.1;name=memoffset-0.5.1 \
|
||||
crate://crates.io/nodrop/0.1.14;name=nodrop-0.1.14 \
|
||||
crate://crates.io/num-traits/0.2.8;name=num-traits-0.2.8 \
|
||||
crate://crates.io/num_cpus/1.10.1;name=num_cpus-1.10.1 \
|
||||
crate://crates.io/phf_shared/0.8.0;name=phf_shared-0.8.0 \
|
||||
crate://crates.io/ppv-lite86/0.2.5;name=ppv-lite86-0.2.5 \
|
||||
crate://crates.io/proc-macro2/1.0.5;name=proc-macro2-1.0.5 \
|
||||
crate://crates.io/quote/1.0.2;name=quote-1.0.2 \
|
||||
crate://crates.io/rand/0.7.2;name=rand-0.7.2 \
|
||||
crate://crates.io/rand_chacha/0.2.1;name=rand_chacha-0.2.1 \
|
||||
crate://crates.io/rand_core/0.5.1;name=rand_core-0.5.1 \
|
||||
crate://crates.io/rand_hc/0.2.0;name=rand_hc-0.2.0 \
|
||||
crate://crates.io/rand_os/0.2.2;name=rand_os-0.2.2 \
|
||||
crate://crates.io/rand_pcg/0.2.0;name=rand_pcg-0.2.0 \
|
||||
crate://crates.io/rand_xoshiro/0.3.1;name=rand_xoshiro-0.3.1 \
|
||||
crate://crates.io/rayon/1.2.0;name=rayon-1.2.0 \
|
||||
crate://crates.io/rayon-core/1.6.0;name=rayon-core-1.6.0 \
|
||||
crate://crates.io/regex-automata/0.1.8;name=regex-automata-0.1.8 \
|
||||
crate://crates.io/rustc_version/0.2.3;name=rustc_version-0.2.3 \
|
||||
crate://crates.io/ryu/1.0.2;name=ryu-1.0.2 \
|
||||
crate://crates.io/same-file/1.0.5;name=same-file-1.0.5 \
|
||||
crate://crates.io/scopeguard/1.0.0;name=scopeguard-1.0.0 \
|
||||
crate://crates.io/semver/0.9.0;name=semver-0.9.0 \
|
||||
crate://crates.io/semver-parser/0.7.0;name=semver-parser-0.7.0 \
|
||||
crate://crates.io/serde/1.0.101;name=serde-1.0.101 \
|
||||
crate://crates.io/serde_derive/1.0.101;name=serde_derive-1.0.101 \
|
||||
crate://crates.io/serde_json/1.0.41;name=serde_json-1.0.41 \
|
||||
crate://crates.io/siphasher/0.3.1;name=siphasher-0.3.1 \
|
||||
crate://crates.io/syn/1.0.5;name=syn-1.0.5 \
|
||||
crate://crates.io/textwrap/0.11.0;name=textwrap-0.11.0 \
|
||||
crate://crates.io/tinytemplate/1.0.2;name=tinytemplate-1.0.2 \
|
||||
crate://crates.io/unicode-width/0.1.6;name=unicode-width-0.1.6 \
|
||||
crate://crates.io/unicode-xid/0.2.0;name=unicode-xid-0.2.0 \
|
||||
crate://crates.io/walkdir/2.2.9;name=walkdir-2.2.9 \
|
||||
crate://crates.io/wasi/0.7.0;name=wasi-0.7.0 \
|
||||
crate://crates.io/winapi/0.3.8;name=winapi-0.3.8 \
|
||||
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0;name=winapi-i686-pc-windows-gnu-0.4.0 \
|
||||
crate://crates.io/winapi-util/0.1.2;name=winapi-util-0.1.2 \
|
||||
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0;name=winapi-x86_64-pc-windows-gnu-0.4.0 \
|
||||
"
|
||||
|
||||
# from vendor/rand/Cargo.lock
|
||||
SRC_URI += " \
|
||||
crate://crates.io/base-x/0.2.5;name=base-x-0.2.5 \
|
||||
crate://crates.io/bumpalo/2.6.0;name=bumpalo-2.6.0 \
|
||||
crate://crates.io/c2-chacha/0.2.2;name=c2-chacha-0.2.2 \
|
||||
crate://crates.io/cfg-if/0.1.9;name=cfg-if-0.1.9 \
|
||||
crate://crates.io/discard/1.0.4;name=discard-1.0.4 \
|
||||
crate://crates.io/getrandom/0.1.12;name=getrandom-0.1.12 \
|
||||
crate://crates.io/itoa/0.4.4;name=itoa-0.4.4 \
|
||||
crate://crates.io/lazy_static/1.4.0;name=lazy_static-1.4.0 \
|
||||
crate://crates.io/libc/0.2.62;name=libc-0.2.62 \
|
||||
crate://crates.io/log/0.4.8;name=log-0.4.8 \
|
||||
crate://crates.io/packed_simd/0.3.3;name=packed_simd-0.3.3 \
|
||||
crate://crates.io/ppv-lite86/0.2.5;name=ppv-lite86-0.2.5 \
|
||||
crate://crates.io/proc-macro2/0.4.30;name=proc-macro2-0.4.30 \
|
||||
crate://crates.io/proc-macro2/1.0.3;name=proc-macro2-1.0.3 \
|
||||
crate://crates.io/quote/0.6.13;name=quote-0.6.13 \
|
||||
crate://crates.io/quote/1.0.2;name=quote-1.0.2 \
|
||||
crate://crates.io/rand_chacha/0.2.1;name=rand_chacha-0.2.1 \
|
||||
crate://crates.io/rand_core/0.5.1;name=rand_core-0.5.1 \
|
||||
crate://crates.io/rand_hc/0.2.0;name=rand_hc-0.2.0 \
|
||||
crate://crates.io/rand_pcg/0.2.1;name=rand_pcg-0.2.1 \
|
||||
crate://crates.io/rustc_version/0.2.3;name=rustc_version-0.2.3 \
|
||||
crate://crates.io/ryu/1.0.0;name=ryu-1.0.0 \
|
||||
crate://crates.io/semver/0.9.0;name=semver-0.9.0 \
|
||||
crate://crates.io/semver-parser/0.7.0;name=semver-parser-0.7.0 \
|
||||
crate://crates.io/serde/1.0.100;name=serde-1.0.100 \
|
||||
crate://crates.io/serde_derive/1.0.100;name=serde_derive-1.0.100 \
|
||||
crate://crates.io/serde_json/1.0.40;name=serde_json-1.0.40 \
|
||||
crate://crates.io/sha1/0.6.0;name=sha1-0.6.0 \
|
||||
crate://crates.io/stdweb/0.4.18;name=stdweb-0.4.18 \
|
||||
crate://crates.io/stdweb-derive/0.5.1;name=stdweb-derive-0.5.1 \
|
||||
crate://crates.io/stdweb-internal-macros/0.2.7;name=stdweb-internal-macros-0.2.7 \
|
||||
crate://crates.io/stdweb-internal-runtime/0.1.4;name=stdweb-internal-runtime-0.1.4 \
|
||||
crate://crates.io/syn/0.15.44;name=syn-0.15.44 \
|
||||
crate://crates.io/syn/1.0.5;name=syn-1.0.5 \
|
||||
crate://crates.io/unicode-xid/0.1.0;name=unicode-xid-0.1.0 \
|
||||
crate://crates.io/unicode-xid/0.2.0;name=unicode-xid-0.2.0 \
|
||||
crate://crates.io/wasi/0.7.0;name=wasi-0.7.0 \
|
||||
crate://crates.io/wasm-bindgen/0.2.50;name=wasm-bindgen-0.2.50 \
|
||||
crate://crates.io/wasm-bindgen-backend/0.2.50;name=wasm-bindgen-backend-0.2.50 \
|
||||
crate://crates.io/wasm-bindgen-macro/0.2.50;name=wasm-bindgen-macro-0.2.50 \
|
||||
crate://crates.io/wasm-bindgen-macro-support/0.2.50;name=wasm-bindgen-macro-support-0.2.50 \
|
||||
crate://crates.io/wasm-bindgen-shared/0.2.50;name=wasm-bindgen-shared-0.2.50 \
|
||||
"
|
||||
|
||||
SRC_URI[arrayvec-0.4.11.sha256sum] = "b8d73f9beda665eaa98ab9e4f7442bd4e7de6652587de55b2525e52e29c1b0ba"
|
||||
SRC_URI[atty-0.2.12.sha256sum] = "ecaaea69f52b3b18633611ec0007d188517d0366f47ff703d400fa6879d6f8d5"
|
||||
SRC_URI[autocfg-0.1.4.sha256sum] = "0e49efa51329a5fd37e7c79db4621af617cd4e3e5bc224939808d076077077bf"
|
||||
SRC_URI[bitflags-1.1.0.sha256sum] = "3d155346769a6855b86399e9bc3814ab343cd3d62c7e985113d46a0ec3c281fd"
|
||||
SRC_URI[bstr-0.2.1.sha256sum] = "6cc0572e02f76cb335f309b19e0a0d585b4f62788f7d26de2a13a836a637385f"
|
||||
SRC_URI[byteorder-1.3.2.sha256sum] = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
|
||||
SRC_URI[cast-0.2.2.sha256sum] = "926013f2860c46252efceabb19f4a6b308197505082c609025aa6706c011d427"
|
||||
SRC_URI[cfg-if-0.1.9.sha256sum] = "b486ce3ccf7ffd79fdeb678eac06a9e6c09fc88d33836340becb8fffe87c5e33"
|
||||
SRC_URI[clap-2.33.0.sha256sum] = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9"
|
||||
SRC_URI[cloudabi-0.0.3.sha256sum] = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
|
||||
SRC_URI[criterion-0.3.0.sha256sum] = "938703e165481c8d612ea3479ac8342e5615185db37765162e762ec3523e2fc6"
|
||||
SRC_URI[criterion-plot-0.4.0.sha256sum] = "eccdc6ce8bbe352ca89025bee672aa6d24f4eb8c53e3a8b5d1bc58011da072a2"
|
||||
SRC_URI[crossbeam-deque-0.6.3.sha256sum] = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13"
|
||||
SRC_URI[crossbeam-epoch-0.7.1.sha256sum] = "04c9e3102cc2d69cd681412141b390abd55a362afc1540965dad0ad4d34280b4"
|
||||
SRC_URI[crossbeam-queue-0.1.2.sha256sum] = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b"
|
||||
SRC_URI[crossbeam-utils-0.6.5.sha256sum] = "f8306fcef4a7b563b76b7dd949ca48f52bc1141aa067d2ea09565f3e2652aa5c"
|
||||
SRC_URI[csv-1.1.1.sha256sum] = "37519ccdfd73a75821cac9319d4fce15a81b9fcf75f951df5b9988aa3a0af87d"
|
||||
SRC_URI[csv-core-0.1.6.sha256sum] = "9b5cadb6b25c77aeff80ba701712494213f4a8418fcda2ee11b6560c3ad0bf4c"
|
||||
SRC_URI[doc-comment-0.3.1.sha256sum] = "923dea538cea0aa3025e8685b20d6ee21ef99c4f77e954a30febbaac5ec73a97"
|
||||
SRC_URI[either-1.5.2.sha256sum] = "5527cfe0d098f36e3f8839852688e63c8fff1c90b2b405aef730615f9a7bcf7b"
|
||||
SRC_URI[fuchsia-cprng-0.1.1.sha256sum] = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
|
||||
SRC_URI[getrandom-0.1.13.sha256sum] = "e7db7ca94ed4cd01190ceee0d8a8052f08a247aa1b469a7f68c6a3b71afcf407"
|
||||
SRC_URI[itertools-0.8.0.sha256sum] = "5b8467d9c1cebe26feb08c640139247fac215782d35371ade9a2136ed6085358"
|
||||
SRC_URI[itoa-0.4.4.sha256sum] = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f"
|
||||
SRC_URI[lazy_static-1.3.0.sha256sum] = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14"
|
||||
SRC_URI[libc-0.2.65.sha256sum] = "1a31a0627fdf1f6a39ec0dd577e101440b7db22672c0901fe00a9a6fbb5c24e8"
|
||||
SRC_URI[memchr-2.2.1.sha256sum] = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e"
|
||||
SRC_URI[memoffset-0.2.1.sha256sum] = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3"
|
||||
SRC_URI[nodrop-0.1.13.sha256sum] = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945"
|
||||
SRC_URI[num-traits-0.2.8.sha256sum] = "6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32"
|
||||
SRC_URI[num_cpus-1.10.1.sha256sum] = "bcef43580c035376c0705c42792c294b66974abbfd2789b511784023f71f3273"
|
||||
SRC_URI[proc-macro2-0.4.30.sha256sum] = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
|
||||
SRC_URI[quote-0.6.13.sha256sum] = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1"
|
||||
SRC_URI[rand-0.6.5.sha256sum] = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
|
||||
SRC_URI[rand_chacha-0.1.1.sha256sum] = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
|
||||
SRC_URI[rand_core-0.3.1.sha256sum] = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
|
||||
SRC_URI[rand_core-0.4.0.sha256sum] = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0"
|
||||
SRC_URI[rand_core-0.5.1.sha256sum] = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
|
||||
SRC_URI[rand_hc-0.1.0.sha256sum] = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
|
||||
SRC_URI[rand_isaac-0.1.1.sha256sum] = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
|
||||
SRC_URI[rand_jitter-0.1.4.sha256sum] = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
|
||||
SRC_URI[rand_os-0.1.3.sha256sum] = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
|
||||
SRC_URI[rand_os-0.2.2.sha256sum] = "a788ae3edb696cfcba1c19bfd388cc4b8c21f8a408432b199c072825084da58a"
|
||||
SRC_URI[rand_pcg-0.1.2.sha256sum] = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
|
||||
SRC_URI[rand_xorshift-0.1.1.sha256sum] = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
|
||||
SRC_URI[rand_xoshiro-0.3.1.sha256sum] = "0e18c91676f670f6f0312764c759405f13afb98d5d73819840cf72a518487bff"
|
||||
SRC_URI[rayon-1.1.0.sha256sum] = "a4b0186e22767d5b9738a05eab7c6ac90b15db17e5b5f9bd87976dd7d89a10a4"
|
||||
SRC_URI[rayon-core-1.5.0.sha256sum] = "ebbe0df8435ac0c397d467b6cad6d25543d06e8a019ef3f6af3c384597515bd2"
|
||||
SRC_URI[rdrand-0.4.0.sha256sum] = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
|
||||
SRC_URI[regex-automata-0.1.7.sha256sum] = "3ed09217220c272b29ef237a974ad58515bde75f194e3ffa7e6d0bf0f3b01f86"
|
||||
SRC_URI[ryu-1.0.0.sha256sum] = "c92464b447c0ee8c4fb3824ecc8383b81717b9f1e74ba2e72540aef7b9f82997"
|
||||
SRC_URI[same-file-1.0.4.sha256sum] = "8f20c4be53a8a1ff4c1f1b2bd14570d2f634628709752f0702ecdd2b3f9a5267"
|
||||
SRC_URI[scopeguard-0.3.3.sha256sum] = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27"
|
||||
SRC_URI[serde-1.0.94.sha256sum] = "076a696fdea89c19d3baed462576b8f6d663064414b5c793642da8dfeb99475b"
|
||||
SRC_URI[serde_derive-1.0.94.sha256sum] = "ef45eb79d6463b22f5f9e16d283798b7c0175ba6050bc25c1a946c122727fe7b"
|
||||
SRC_URI[serde_json-1.0.40.sha256sum] = "051c49229f282f7c6f3813f8286cc1e3323e8051823fce42c7ea80fe13521704"
|
||||
SRC_URI[syn-0.15.39.sha256sum] = "b4d960b829a55e56db167e861ddb43602c003c7be0bee1d345021703fac2fb7c"
|
||||
SRC_URI[textwrap-0.11.0.sha256sum] = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
|
||||
SRC_URI[tinytemplate-1.0.2.sha256sum] = "4574b75faccaacddb9b284faecdf0b544b80b6b294f3d062d325c5726a209c20"
|
||||
SRC_URI[unicode-width-0.1.5.sha256sum] = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526"
|
||||
SRC_URI[unicode-xid-0.1.0.sha256sum] = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
|
||||
SRC_URI[walkdir-2.2.8.sha256sum] = "c7904a7e2bb3cdf0cf5e783f44204a85a37a93151738fa349f06680f59a98b45"
|
||||
SRC_URI[wasi-0.7.0.sha256sum] = "b89c3ce4ce14bdc6fb6beaf9ec7928ca331de5df7e5ea278375642a2f478570d"
|
||||
SRC_URI[winapi-0.3.7.sha256sum] = "f10e386af2b13e47c89e7236a7a14a086791a2b88ebad6df9bf42040195cf770"
|
||||
SRC_URI[winapi-i686-pc-windows-gnu-0.4.0.sha256sum] = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
|
||||
SRC_URI[winapi-util-0.1.2.sha256sum] = "7168bab6e1daee33b4557efd0e95d5ca70a03706d39fa5f3fe7a236f584b03c9"
|
||||
SRC_URI[winapi-x86_64-pc-windows-gnu-0.4.0.sha256sum] = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
||||
SRC_URI[aho-corasick-0.7.6.sha256sum] = "58fb5e95d83b38284460a5fda7d6470aa0b8844d283a0b614b8535e880800d2d"
|
||||
SRC_URI[arrayvec-0.4.11.sha256sum] = "b8d73f9beda665eaa98ab9e4f7442bd4e7de6652587de55b2525e52e29c1b0ba"
|
||||
SRC_URI[atty-0.2.13.sha256sum] = "1803c647a3ec87095e7ae7acfca019e98de5ec9a7d01343f611cf3152ed71a90"
|
||||
SRC_URI[autocfg-0.1.6.sha256sum] = "b671c8fb71b457dd4ae18c4ba1e59aa81793daacc361d82fcd410cef0d491875"
|
||||
SRC_URI[bitflags-1.2.1.sha256sum] = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
|
||||
SRC_URI[bstr-0.2.7.sha256sum] = "94cdf78eb7e94c566c1f5dbe2abf8fc70a548fc902942a48c4b3a98b48ca9ade"
|
||||
SRC_URI[byteorder-1.3.2.sha256sum] = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
|
||||
SRC_URI[cast-0.2.2.sha256sum] = "926013f2860c46252efceabb19f4a6b308197505082c609025aa6706c011d427"
|
||||
SRC_URI[cc-1.0.40.sha256sum] = "b548a4ee81fccb95919d4e22cfea83c7693ebfd78f0495493178db20b3139da7"
|
||||
SRC_URI[cfg-if-0.1.9.sha256sum] = "b486ce3ccf7ffd79fdeb678eac06a9e6c09fc88d33836340becb8fffe87c5e33"
|
||||
SRC_URI[clap-2.33.0.sha256sum] = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9"
|
||||
SRC_URI[cloudabi-0.0.3.sha256sum] = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
|
||||
SRC_URI[criterion-0.2.11.sha256sum] = "0363053954f3e679645fc443321ca128b7b950a6fe288cf5f9335cc22ee58394"
|
||||
SRC_URI[criterion-plot-0.3.1.sha256sum] = "76f9212ddf2f4a9eb2d401635190600656a1f88a932ef53d06e7fa4c7e02fb8e"
|
||||
SRC_URI[crossbeam-deque-0.6.3.sha256sum] = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13"
|
||||
SRC_URI[crossbeam-epoch-0.7.2.sha256sum] = "fedcd6772e37f3da2a9af9bf12ebe046c0dfe657992377b4df982a2b54cd37a9"
|
||||
SRC_URI[crossbeam-queue-0.1.2.sha256sum] = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b"
|
||||
SRC_URI[crossbeam-utils-0.6.6.sha256sum] = "04973fa96e96579258a5091af6003abde64af786b860f18622b82e026cca60e6"
|
||||
SRC_URI[csv-1.1.1.sha256sum] = "37519ccdfd73a75821cac9319d4fce15a81b9fcf75f951df5b9988aa3a0af87d"
|
||||
SRC_URI[csv-core-0.1.6.sha256sum] = "9b5cadb6b25c77aeff80ba701712494213f4a8418fcda2ee11b6560c3ad0bf4c"
|
||||
SRC_URI[doc-comment-0.3.1.sha256sum] = "923dea538cea0aa3025e8685b20d6ee21ef99c4f77e954a30febbaac5ec73a97"
|
||||
SRC_URI[either-1.5.2.sha256sum] = "5527cfe0d098f36e3f8839852688e63c8fff1c90b2b405aef730615f9a7bcf7b"
|
||||
SRC_URI[fs_extra-1.1.0.sha256sum] = "5f2a4a2034423744d2cc7ca2068453168dcdb82c438419e639a26bd87839c674"
|
||||
SRC_URI[fuchsia-cprng-0.1.1.sha256sum] = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
|
||||
SRC_URI[itertools-0.8.0.sha256sum] = "5b8467d9c1cebe26feb08c640139247fac215782d35371ade9a2136ed6085358"
|
||||
SRC_URI[itoa-0.4.4.sha256sum] = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f"
|
||||
SRC_URI[jemalloc-sys-0.1.8.sha256sum] = "bfc62c8e50e381768ce8ee0428ee53741929f7ebd73e4d83f669bcf7693e00ae"
|
||||
SRC_URI[jemallocator-0.1.9.sha256sum] = "9f0cd42ac65f758063fea55126b0148b1ce0a6354ff78e07a4d6806bc65c4ab3"
|
||||
SRC_URI[lazy_static-1.3.0.sha256sum] = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14"
|
||||
SRC_URI[lexical-core-0.6.7.sha256sum] = "f86d66d380c9c5a685aaac7a11818bdfa1f733198dfd9ec09c70b762cd12ad6f"
|
||||
SRC_URI[libc-0.2.62.sha256sum] = "34fcd2c08d2f832f376f4173a231990fa5aef4e99fb569867318a227ef4c06ba"
|
||||
SRC_URI[memchr-2.2.1.sha256sum] = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e"
|
||||
SRC_URI[memoffset-0.5.1.sha256sum] = "ce6075db033bbbb7ee5a0bbd3a3186bbae616f57fb001c485c7ff77955f8177f"
|
||||
SRC_URI[nodrop-0.1.13.sha256sum] = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945"
|
||||
SRC_URI[num-traits-0.2.8.sha256sum] = "6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32"
|
||||
SRC_URI[num_cpus-1.10.1.sha256sum] = "bcef43580c035376c0705c42792c294b66974abbfd2789b511784023f71f3273"
|
||||
SRC_URI[proc-macro2-1.0.1.sha256sum] = "4c5c2380ae88876faae57698be9e9775e3544decad214599c3a6266cca6ac802"
|
||||
SRC_URI[quote-1.0.2.sha256sum] = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe"
|
||||
SRC_URI[rand_core-0.3.1.sha256sum] = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
|
||||
SRC_URI[rand_core-0.4.2.sha256sum] = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
|
||||
SRC_URI[rand_os-0.1.3.sha256sum] = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
|
||||
SRC_URI[rand_xoshiro-0.1.0.sha256sum] = "03b418169fb9c46533f326efd6eed2576699c44ca92d3052a066214a8d828929"
|
||||
SRC_URI[rayon-1.1.0.sha256sum] = "a4b0186e22767d5b9738a05eab7c6ac90b15db17e5b5f9bd87976dd7d89a10a4"
|
||||
SRC_URI[rayon-core-1.5.0.sha256sum] = "ebbe0df8435ac0c397d467b6cad6d25543d06e8a019ef3f6af3c384597515bd2"
|
||||
SRC_URI[rdrand-0.4.0.sha256sum] = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
|
||||
SRC_URI[regex-1.2.1.sha256sum] = "88c3d9193984285d544df4a30c23a4e62ead42edf70a4452ceb76dac1ce05c26"
|
||||
SRC_URI[regex-automata-0.1.8.sha256sum] = "92b73c2a1770c255c240eaa4ee600df1704a38dc3feaa6e949e7fcd4f8dc09f9"
|
||||
SRC_URI[regex-syntax-0.6.11.sha256sum] = "b143cceb2ca5e56d5671988ef8b15615733e7ee16cd348e064333b251b89343f"
|
||||
SRC_URI[rustc_version-0.2.3.sha256sum] = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
|
||||
SRC_URI[ryu-1.0.0.sha256sum] = "c92464b447c0ee8c4fb3824ecc8383b81717b9f1e74ba2e72540aef7b9f82997"
|
||||
SRC_URI[same-file-1.0.5.sha256sum] = "585e8ddcedc187886a30fa705c47985c3fa88d06624095856b36ca0b82ff4421"
|
||||
SRC_URI[scopeguard-1.0.0.sha256sum] = "b42e15e59b18a828bbf5c58ea01debb36b9b096346de35d941dcb89009f24a0d"
|
||||
SRC_URI[semver-0.9.0.sha256sum] = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
|
||||
SRC_URI[semver-parser-0.7.0.sha256sum] = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
|
||||
SRC_URI[serde-1.0.99.sha256sum] = "fec2851eb56d010dc9a21b89ca53ee75e6528bab60c11e89d38390904982da9f"
|
||||
SRC_URI[serde_derive-1.0.99.sha256sum] = "cb4dc18c61206b08dc98216c98faa0232f4337e1e1b8574551d5bad29ea1b425"
|
||||
SRC_URI[serde_json-1.0.40.sha256sum] = "051c49229f282f7c6f3813f8286cc1e3323e8051823fce42c7ea80fe13521704"
|
||||
SRC_URI[static_assertions-0.3.4.sha256sum] = "7f3eb36b47e512f8f1c9e3d10c2c1965bc992bd9cdb024fa581e2194501c83d3"
|
||||
SRC_URI[syn-1.0.3.sha256sum] = "158521e6f544e7e3dcfc370ac180794aa38cb34a1b1e07609376d4adcf429b93"
|
||||
SRC_URI[textwrap-0.11.0.sha256sum] = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
|
||||
SRC_URI[thread_local-0.3.6.sha256sum] = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
|
||||
SRC_URI[tinytemplate-1.0.2.sha256sum] = "4574b75faccaacddb9b284faecdf0b544b80b6b294f3d062d325c5726a209c20"
|
||||
SRC_URI[unicode-width-0.1.6.sha256sum] = "7007dbd421b92cc6e28410fe7362e2e0a2503394908f417b68ec8d1c364c4e20"
|
||||
SRC_URI[unicode-xid-0.2.0.sha256sum] = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
|
||||
SRC_URI[version_check-0.9.1.sha256sum] = "078775d0255232fb988e6fccf26ddc9d1ac274299aaedcedce21c6f72cc533ce"
|
||||
SRC_URI[walkdir-2.2.9.sha256sum] = "9658c94fa8b940eab2250bd5a457f9c48b748420d71293b165c8cdbe2f55f71e"
|
||||
SRC_URI[winapi-0.3.7.sha256sum] = "f10e386af2b13e47c89e7236a7a14a086791a2b88ebad6df9bf42040195cf770"
|
||||
SRC_URI[winapi-i686-pc-windows-gnu-0.4.0.sha256sum] = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
|
||||
SRC_URI[winapi-util-0.1.2.sha256sum] = "7168bab6e1daee33b4557efd0e95d5ca70a03706d39fa5f3fe7a236f584b03c9"
|
||||
SRC_URI[winapi-x86_64-pc-windows-gnu-0.4.0.sha256sum] = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
||||
SRC_URI[arrayvec-0.4.12.sha256sum] = "cd9fd44efafa8690358b7408d253adf110036b88f55672a933f01d616ad9b1b9"
|
||||
SRC_URI[atty-0.2.13.sha256sum] = "1803c647a3ec87095e7ae7acfca019e98de5ec9a7d01343f611cf3152ed71a90"
|
||||
SRC_URI[autocfg-0.1.6.sha256sum] = "b671c8fb71b457dd4ae18c4ba1e59aa81793daacc361d82fcd410cef0d491875"
|
||||
SRC_URI[bitflags-1.2.1.sha256sum] = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
|
||||
SRC_URI[bstr-0.2.8.sha256sum] = "8d6c2c5b58ab920a4f5aeaaca34b4488074e8cc7596af94e6f8c6ff247c60245"
|
||||
SRC_URI[byteorder-1.3.2.sha256sum] = "a7c3dd8985a7111efc5c80b44e23ecdd8c007de8ade3b96595387e812b957cf5"
|
||||
SRC_URI[c2-chacha-0.2.2.sha256sum] = "7d64d04786e0f528460fc884753cf8dddcc466be308f6026f8e355c41a0e4101"
|
||||
SRC_URI[cast-0.2.2.sha256sum] = "926013f2860c46252efceabb19f4a6b308197505082c609025aa6706c011d427"
|
||||
SRC_URI[cfg-if-0.1.10.sha256sum] = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
|
||||
SRC_URI[clap-2.33.0.sha256sum] = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9"
|
||||
SRC_URI[criterion-0.3.0.sha256sum] = "938703e165481c8d612ea3479ac8342e5615185db37765162e762ec3523e2fc6"
|
||||
SRC_URI[criterion-plot-0.4.0.sha256sum] = "eccdc6ce8bbe352ca89025bee672aa6d24f4eb8c53e3a8b5d1bc58011da072a2"
|
||||
SRC_URI[crossbeam-deque-0.7.1.sha256sum] = "b18cd2e169ad86297e6bc0ad9aa679aee9daa4f19e8163860faf7c164e4f5a71"
|
||||
SRC_URI[crossbeam-epoch-0.7.2.sha256sum] = "fedcd6772e37f3da2a9af9bf12ebe046c0dfe657992377b4df982a2b54cd37a9"
|
||||
SRC_URI[crossbeam-queue-0.1.2.sha256sum] = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b"
|
||||
SRC_URI[crossbeam-utils-0.6.6.sha256sum] = "04973fa96e96579258a5091af6003abde64af786b860f18622b82e026cca60e6"
|
||||
SRC_URI[csv-1.1.1.sha256sum] = "37519ccdfd73a75821cac9319d4fce15a81b9fcf75f951df5b9988aa3a0af87d"
|
||||
SRC_URI[csv-core-0.1.6.sha256sum] = "9b5cadb6b25c77aeff80ba701712494213f4a8418fcda2ee11b6560c3ad0bf4c"
|
||||
SRC_URI[either-1.5.3.sha256sum] = "bb1f6b1ce1c140482ea30ddd3335fc0024ac7ee112895426e0a629a6c20adfe3"
|
||||
SRC_URI[getrandom-0.1.12.sha256sum] = "473a1265acc8ff1e808cd0a1af8cee3c2ee5200916058a2ca113c29f2d903571"
|
||||
SRC_URI[itertools-0.8.0.sha256sum] = "5b8467d9c1cebe26feb08c640139247fac215782d35371ade9a2136ed6085358"
|
||||
SRC_URI[itoa-0.4.4.sha256sum] = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f"
|
||||
SRC_URI[lazy_static-1.4.0.sha256sum] = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
|
||||
SRC_URI[libc-0.2.64.sha256sum] = "74dfca3d9957906e8d1e6a0b641dc9a59848e793f1da2165889fd4f62d10d79c"
|
||||
SRC_URI[memchr-2.2.1.sha256sum] = "88579771288728879b57485cc7d6b07d648c9f0141eb955f8ab7f9d45394468e"
|
||||
SRC_URI[memoffset-0.5.1.sha256sum] = "ce6075db033bbbb7ee5a0bbd3a3186bbae616f57fb001c485c7ff77955f8177f"
|
||||
SRC_URI[nodrop-0.1.14.sha256sum] = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
|
||||
SRC_URI[num-traits-0.2.8.sha256sum] = "6ba9a427cfca2be13aa6f6403b0b7e7368fe982bfa16fccc450ce74c46cd9b32"
|
||||
SRC_URI[num_cpus-1.10.1.sha256sum] = "bcef43580c035376c0705c42792c294b66974abbfd2789b511784023f71f3273"
|
||||
SRC_URI[phf_shared-0.8.0.sha256sum] = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7"
|
||||
SRC_URI[ppv-lite86-0.2.5.sha256sum] = "e3cbf9f658cdb5000fcf6f362b8ea2ba154b9f146a61c7a20d647034c6b6561b"
|
||||
SRC_URI[proc-macro2-1.0.5.sha256sum] = "90cf5f418035b98e655e9cdb225047638296b862b42411c4e45bb88d700f7fc0"
|
||||
SRC_URI[quote-1.0.2.sha256sum] = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe"
|
||||
SRC_URI[rand-0.7.2.sha256sum] = "3ae1b169243eaf61759b8475a998f0a385e42042370f3a7dbaf35246eacc8412"
|
||||
SRC_URI[rand_chacha-0.2.1.sha256sum] = "03a2a90da8c7523f554344f921aa97283eadf6ac484a6d2a7d0212fa7f8d6853"
|
||||
SRC_URI[rand_core-0.5.1.sha256sum] = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
|
||||
SRC_URI[rand_hc-0.2.0.sha256sum] = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
|
||||
SRC_URI[rand_os-0.2.2.sha256sum] = "a788ae3edb696cfcba1c19bfd388cc4b8c21f8a408432b199c072825084da58a"
|
||||
SRC_URI[rand_pcg-0.2.0.sha256sum] = "3e196346cbbc5c70c77e7b4926147ee8e383a38ee4d15d58a08098b169e492b6"
|
||||
SRC_URI[rand_xoshiro-0.3.1.sha256sum] = "0e18c91676f670f6f0312764c759405f13afb98d5d73819840cf72a518487bff"
|
||||
SRC_URI[rayon-1.2.0.sha256sum] = "83a27732a533a1be0a0035a111fe76db89ad312f6f0347004c220c57f209a123"
|
||||
SRC_URI[rayon-core-1.6.0.sha256sum] = "98dcf634205083b17d0861252431eb2acbfb698ab7478a2d20de07954f47ec7b"
|
||||
SRC_URI[regex-automata-0.1.8.sha256sum] = "92b73c2a1770c255c240eaa4ee600df1704a38dc3feaa6e949e7fcd4f8dc09f9"
|
||||
SRC_URI[rustc_version-0.2.3.sha256sum] = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
|
||||
SRC_URI[ryu-1.0.2.sha256sum] = "bfa8506c1de11c9c4e4c38863ccbe02a305c8188e85a05a784c9e11e1c3910c8"
|
||||
SRC_URI[same-file-1.0.5.sha256sum] = "585e8ddcedc187886a30fa705c47985c3fa88d06624095856b36ca0b82ff4421"
|
||||
SRC_URI[scopeguard-1.0.0.sha256sum] = "b42e15e59b18a828bbf5c58ea01debb36b9b096346de35d941dcb89009f24a0d"
|
||||
SRC_URI[semver-0.9.0.sha256sum] = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
|
||||
SRC_URI[semver-parser-0.7.0.sha256sum] = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
|
||||
SRC_URI[serde-1.0.101.sha256sum] = "9796c9b7ba2ffe7a9ce53c2287dfc48080f4b2b362fcc245a259b3a7201119dd"
|
||||
SRC_URI[serde_derive-1.0.101.sha256sum] = "4b133a43a1ecd55d4086bd5b4dc6c1751c68b1bfbeba7a5040442022c7e7c02e"
|
||||
SRC_URI[serde_json-1.0.41.sha256sum] = "2f72eb2a68a7dc3f9a691bfda9305a1c017a6215e5a4545c258500d2099a37c2"
|
||||
SRC_URI[siphasher-0.3.1.sha256sum] = "83da420ee8d1a89e640d0948c646c1c088758d3a3c538f943bfa97bdac17929d"
|
||||
SRC_URI[syn-1.0.5.sha256sum] = "66850e97125af79138385e9b88339cbcd037e3f28ceab8c5ad98e64f0f1f80bf"
|
||||
SRC_URI[textwrap-0.11.0.sha256sum] = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
|
||||
SRC_URI[tinytemplate-1.0.2.sha256sum] = "4574b75faccaacddb9b284faecdf0b544b80b6b294f3d062d325c5726a209c20"
|
||||
SRC_URI[unicode-width-0.1.6.sha256sum] = "7007dbd421b92cc6e28410fe7362e2e0a2503394908f417b68ec8d1c364c4e20"
|
||||
SRC_URI[unicode-xid-0.2.0.sha256sum] = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
|
||||
SRC_URI[walkdir-2.2.9.sha256sum] = "9658c94fa8b940eab2250bd5a457f9c48b748420d71293b165c8cdbe2f55f71e"
|
||||
SRC_URI[wasi-0.7.0.sha256sum] = "b89c3ce4ce14bdc6fb6beaf9ec7928ca331de5df7e5ea278375642a2f478570d"
|
||||
SRC_URI[winapi-0.3.8.sha256sum] = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
|
||||
SRC_URI[winapi-i686-pc-windows-gnu-0.4.0.sha256sum] = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
|
||||
SRC_URI[winapi-util-0.1.2.sha256sum] = "7168bab6e1daee33b4557efd0e95d5ca70a03706d39fa5f3fe7a236f584b03c9"
|
||||
SRC_URI[winapi-x86_64-pc-windows-gnu-0.4.0.sha256sum] = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
||||
SRC_URI[base-x-0.2.5.sha256sum] = "76f4eae81729e69bb1819a26c6caac956cc429238388091f98cb6cd858f16443"
|
||||
SRC_URI[bumpalo-2.6.0.sha256sum] = "ad807f2fc2bf185eeb98ff3a901bd46dc5ad58163d0fa4577ba0d25674d71708"
|
||||
SRC_URI[c2-chacha-0.2.2.sha256sum] = "7d64d04786e0f528460fc884753cf8dddcc466be308f6026f8e355c41a0e4101"
|
||||
SRC_URI[cfg-if-0.1.9.sha256sum] = "b486ce3ccf7ffd79fdeb678eac06a9e6c09fc88d33836340becb8fffe87c5e33"
|
||||
SRC_URI[discard-1.0.4.sha256sum] = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0"
|
||||
SRC_URI[getrandom-0.1.12.sha256sum] = "473a1265acc8ff1e808cd0a1af8cee3c2ee5200916058a2ca113c29f2d903571"
|
||||
SRC_URI[itoa-0.4.4.sha256sum] = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f"
|
||||
SRC_URI[lazy_static-1.4.0.sha256sum] = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
|
||||
SRC_URI[libc-0.2.62.sha256sum] = "34fcd2c08d2f832f376f4173a231990fa5aef4e99fb569867318a227ef4c06ba"
|
||||
SRC_URI[log-0.4.8.sha256sum] = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
|
||||
SRC_URI[packed_simd-0.3.3.sha256sum] = "a85ea9fc0d4ac0deb6fe7911d38786b32fc11119afd9e9d38b84ff691ce64220"
|
||||
SRC_URI[ppv-lite86-0.2.5.sha256sum] = "e3cbf9f658cdb5000fcf6f362b8ea2ba154b9f146a61c7a20d647034c6b6561b"
|
||||
SRC_URI[proc-macro2-0.4.30.sha256sum] = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
|
||||
SRC_URI[proc-macro2-1.0.3.sha256sum] = "e98a83a9f9b331f54b924e68a66acb1bb35cb01fb0a23645139967abefb697e8"
|
||||
SRC_URI[quote-0.6.13.sha256sum] = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1"
|
||||
SRC_URI[quote-1.0.2.sha256sum] = "053a8c8bcc71fcce321828dc897a98ab9760bef03a4fc36693c231e5b3216cfe"
|
||||
SRC_URI[rand_chacha-0.2.1.sha256sum] = "03a2a90da8c7523f554344f921aa97283eadf6ac484a6d2a7d0212fa7f8d6853"
|
||||
SRC_URI[rand_core-0.5.1.sha256sum] = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
|
||||
SRC_URI[rand_hc-0.2.0.sha256sum] = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
|
||||
SRC_URI[rand_pcg-0.2.1.sha256sum] = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
|
||||
SRC_URI[rustc_version-0.2.3.sha256sum] = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
|
||||
SRC_URI[ryu-1.0.0.sha256sum] = "c92464b447c0ee8c4fb3824ecc8383b81717b9f1e74ba2e72540aef7b9f82997"
|
||||
SRC_URI[semver-0.9.0.sha256sum] = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
|
||||
SRC_URI[semver-parser-0.7.0.sha256sum] = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
|
||||
SRC_URI[serde-1.0.100.sha256sum] = "f4473e8506b213730ff2061073b48fa51dcc66349219e2e7c5608f0296a1d95a"
|
||||
SRC_URI[serde_derive-1.0.100.sha256sum] = "11e410fde43e157d789fc290d26bc940778ad0fdd47836426fbac36573710dbb"
|
||||
SRC_URI[serde_json-1.0.40.sha256sum] = "051c49229f282f7c6f3813f8286cc1e3323e8051823fce42c7ea80fe13521704"
|
||||
SRC_URI[sha1-0.6.0.sha256sum] = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d"
|
||||
SRC_URI[stdweb-0.4.18.sha256sum] = "a68c0ce28cf7400ed022e18da3c4591e14e1df02c70e93573cc59921b3923aeb"
|
||||
SRC_URI[stdweb-derive-0.5.1.sha256sum] = "0e21ebd9179de08f2300a65454268a17ea3de204627458588c84319c4def3930"
|
||||
SRC_URI[stdweb-internal-macros-0.2.7.sha256sum] = "e68f7d08b76979a43e93fe043b66d2626e35d41d68b0b85519202c6dd8ac59fa"
|
||||
SRC_URI[stdweb-internal-runtime-0.1.4.sha256sum] = "d52317523542cc0af5b7e31017ad0f7d1e78da50455e38d5657cd17754f617da"
|
||||
SRC_URI[syn-0.15.44.sha256sum] = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5"
|
||||
SRC_URI[syn-1.0.5.sha256sum] = "66850e97125af79138385e9b88339cbcd037e3f28ceab8c5ad98e64f0f1f80bf"
|
||||
SRC_URI[unicode-xid-0.1.0.sha256sum] = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
|
||||
SRC_URI[unicode-xid-0.2.0.sha256sum] = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
|
||||
SRC_URI[wasi-0.7.0.sha256sum] = "b89c3ce4ce14bdc6fb6beaf9ec7928ca331de5df7e5ea278375642a2f478570d"
|
||||
SRC_URI[wasm-bindgen-0.2.50.sha256sum] = "dcddca308b16cd93c2b67b126c688e5467e4ef2e28200dc7dfe4ae284f2faefc"
|
||||
SRC_URI[wasm-bindgen-backend-0.2.50.sha256sum] = "f805d9328b5fc7e5c6399960fd1889271b9b58ae17bdb2417472156cc9fafdd0"
|
||||
SRC_URI[wasm-bindgen-macro-0.2.50.sha256sum] = "3ff88201a482abfc63921621f6cb18eb1efd74f136b05e5841e7f8ca434539e9"
|
||||
SRC_URI[wasm-bindgen-macro-support-0.2.50.sha256sum] = "6a433d89ecdb9f77d46fcf00c8cf9f3467b7de9954d8710c175f61e2e245bb0e"
|
||||
SRC_URI[wasm-bindgen-shared-0.2.50.sha256sum] = "d41fc1bc3570cdf8d108c15e014045fd45a95bb5eb36605f96a90461fc34027d"
|
||||
SRC_URI[autocfg-1.0.1.sha256sum] = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
|
||||
SRC_URI[brotli-3.0.3.sha256sum] = "7f29919120f08613aadcd4383764e00526fc9f18b6c0895814faeed0dd78613e"
|
||||
SRC_URI[crc-1.8.1.sha256sum] = "d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb"
|
||||
SRC_URI[der-parser-0.5.0.sha256sum] = "0a235b98e742e0687137c26dc4e63fe2a3953a8362dc38527e89e54d1513d548"
|
||||
SRC_URI[der-parser-4.1.0.sha256sum] = "caca07c50eaae94d43e21f4d14eca5543b6f5f5ce64715e9b7665ac5f5185b4e"
|
||||
SRC_URI[flate2-1.0.20.sha256sum] = "cd3aec53de10fe96d7d8c565eb17f2c687bb5518a2ec453b5b1252964526abe0"
|
||||
SRC_URI[ipsec-parser-0.5.0.sha256sum] = "4fa09785b1d327afc9178772b0c8f43b428cbf30d532366fd8e150b98e4fe90a"
|
||||
SRC_URI[kerberos-parser-0.5.0.sha256sum] = "58904d6ec6bf7a602f335a9825e96abac9963e27316a6e4681fd10ce15bfcd40"
|
||||
SRC_URI[md5-0.7.0.sha256sum] = "490cc448043f947bae3cbee9c203358d62dbee0db12107a74be5c30ccfd09771"
|
||||
SRC_URI[memchr-2.3.4.sha256sum] = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525"
|
||||
SRC_URI[nom-5.1.1.sha256sum] = "0b471253da97532da4b61552249c521e01e736071f71c1a4f7ebbfbf0a06aad6"
|
||||
SRC_URI[ntp-parser-0.5.0.sha256sum] = "b4dcbdbccb49a50f69ea3c98155e6e7678b600a3c097f6aac1e7b32d0ba8ffd6"
|
||||
SRC_URI[num-0.2.1.sha256sum] = "b8536030f9fea7127f841b45bb6243b27255787fb4eb83958aa1ef9d2fdc0c36"
|
||||
SRC_URI[num-derive-0.2.5.sha256sum] = "eafd0b45c5537c3ba526f79d3e75120036502bebacbb3f3220914067ce39dbf2"
|
||||
SRC_URI[snmp-parser-0.6.0.sha256sum] = "ce1062255da4ec2ea2f0d985aecf85864a989d6de97883ec4ccca915d8c86a05"
|
||||
SRC_URI[tls-parser-0.9.4.sha256sum] = "579c8a8cdde06a13c7209eb7d5c752d1913489ecdb162264503a39ad9053587f"
|
||||
SRC_URI[uuid-0.8.2.sha256sum] = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7"
|
||||
SRC_URI[widestring-0.4.3.sha256sum] = "c168940144dd21fd8046987c16a46a33d5fc84eec29ef9dcddc2ac9e31526b7c"
|
||||
SRC_URI[x509-parser-0.6.5.sha256sum] = "99bbe736dd2b422d66e4830f4a06f34387c9814c027efcbda5c2f86463e8e5b0"
|
||||
SRC_URI[test-case-1.0.1.sha256sum] = "e8b114c45b5a342ec701e8775ec130bfee537c9d0fedc747594f51d85e7b6988"
|
||||
SRC_URI[build_const-0.2.1.sha256sum] = "39092a32794787acd8525ee150305ff051b0aa6cc2abaf193924f5ab05425f39"
|
||||
SRC_URI[der-oid-macro-0.2.0.sha256sum] = "e66558629d772c3be040566b7be07be8c8f5aecee95e4a092dfe2efc313277ad"
|
||||
SRC_URI[proc-macro-hack-0.5.19.sha256sum] = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5"
|
||||
SRC_URI[rusticata-macros-2.1.0.sha256sum] = "f8a9050636e8a1b487ba1fbe99114021cd7594dde3ce6ed95bfc1691e5b5367b"
|
||||
SRC_URI[miniz_oxide-0.4.4.sha256sum] = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b"
|
||||
SRC_URI[num-bigint-0.2.6.sha256sum] = "090c7f9998ee0ff65aa5b723e4009f7b217707f1fb5ea551329cc4d6231fb304"
|
||||
SRC_URI[num-complex-0.2.4.sha256sum] = "b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95"
|
||||
SRC_URI[num-integer-0.1.44.sha256sum] = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db"
|
||||
SRC_URI[num-iter-0.1.42.sha256sum] = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59"
|
||||
SRC_URI[num-rational-0.2.4.sha256sum] = "5c000134b5dbf44adc5cb772486d335293351644b801551abe8f75c84cfa4aef"
|
||||
SRC_URI[num-traits-0.2.14.sha256sum] = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290"
|
||||
SRC_URI[enum_primitive-0.1.1.sha256sum] = "be4551092f4d519593039259a9ed8daedf0da12e5109c5280338073eaeb81180"
|
||||
SRC_URI[phf-0.8.0.sha256sum] = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
|
||||
SRC_URI[phf_codegen-0.8.0.sha256sum] = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815"
|
||||
SRC_URI[phf_generator-0.8.0.sha256sum] = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526"
|
||||
SRC_URI[base64-0.11.0.sha256sum] = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7"
|
||||
SRC_URI[der-parser-3.0.4.sha256sum] = "f51f64dcdf1cdc550d21d73dc959726c7dbeeab4a01481d08084a7736956464e"
|
||||
SRC_URI[time-0.1.44.sha256sum] = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255"
|
||||
SRC_URI[num-traits-0.1.43.sha256sum] = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
|
||||
SRC_URI[wasi-0.10.0+wasi-snapshot-preview1.sha256sum] = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f"
|
||||
SRC_URI[lexical-core-0.6.8.sha256sum] = "233853dfa6b87c7c00eb46a205802069263ab27e16b6bdd1b08ddf91a855e30c"
|
||||
SRC_URI[num-bigint-0.3.1.sha256sum] = "5e9a41747ae4633fce5adffb4d2e81ffc5e89593cb19917f8fb2cc5ff76507bf"
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
HOMEPAGE = "http://suricata-ids.org/"
|
||||
SECTION = "security Monitor/Admin"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
|
||||
COMPATIBLE_HOST:powerpc = 'null'
|
||||
@@ -0,0 +1,123 @@
|
||||
SUMMARY = "The Suricata Engine is an Open Source Next Generation Intrusion Detection and Prevention Engine"
|
||||
|
||||
require suricata.inc
|
||||
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;beginline=1;endline=2;md5=c70d8d3310941dcdfcd1e02800a1f548"
|
||||
|
||||
SRC_URI = "http://www.openinfosecfoundation.org/download/suricata-${PV}.tar.gz"
|
||||
SRC_URI[sha256sum] = "4da5e4e91e49992633a6024ce10afe6441255b2775a8f20f1ef188bd1129ac66"
|
||||
|
||||
DEPENDS = "lz4 libhtp"
|
||||
|
||||
SRC_URI += " \
|
||||
file://volatiles.03_suricata \
|
||||
file://tmpfiles.suricata \
|
||||
file://suricata.yaml \
|
||||
file://suricata.service \
|
||||
file://run-ptest \
|
||||
file://fixup.patch \
|
||||
"
|
||||
|
||||
inherit autotools pkgconfig python3native systemd ptest cargo cargo-update-recipe-crates
|
||||
|
||||
require ${BPN}-crates.inc
|
||||
|
||||
EXTRA_OECONF += " --disable-debug \
|
||||
--disable-gccmarch-native \
|
||||
--enable-non-bundled-htp \
|
||||
--disable-suricata-update \
|
||||
--with-libhtp-includes=${STAGING_INCDIR} --with-libhtp-libraries=${STAGING_LIBDIR} \
|
||||
"
|
||||
|
||||
CARGO_SRC_DIR = "rust"
|
||||
#CARGO_LOCK_SRC_DIR = "${S}/rust"
|
||||
|
||||
B = "${S}"
|
||||
|
||||
# nfnetlink has a dependancy to meta-networking
|
||||
PACKAGECONFIG ??= "jansson file pcre yaml python pcap cap-ng net nss nspr "
|
||||
PACKAGECONFIG:append = " ${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'unittests', '', d)}"
|
||||
|
||||
PACKAGECONFIG[pcre] = "--with-libpcre-includes=${STAGING_INCDIR} --with-libpcre-libraries=${STAGING_LIBDIR}, ,libpcre ,"
|
||||
PACKAGECONFIG[yaml] = "--with-libyaml-includes=${STAGING_INCDIR} --with-libyaml-libraries=${STAGING_LIBDIR}, ,libyaml ,"
|
||||
PACKAGECONFIG[pcap] = "--with-libpcap-includes=${STAGING_INCDIR} --with-libpcap-libraries=${STAGING_LIBDIR}, ,libpcap"
|
||||
PACKAGECONFIG[cap-ng] = "--with-libcap_ng-includes=${STAGING_INCDIR} --with-libcap_ng-libraries=${STAGING_LIBDIR}, ,libcap-ng , "
|
||||
PACKAGECONFIG[net] = "--with-libnet-includes=${STAGING_INCDIR} --with-libnet-libraries=${STAGING_LIBDIR}, , libnet,"
|
||||
PACKAGECONFIG[nfnetlink] = "--with-libnfnetlink-includes=${STAGING_INCDIR} --with-libnfnetlink-libraries=${STAGING_LIBDIR}, ,libnfnetlink ,"
|
||||
PACKAGECONFIG[nfq] = "--enable-nfqueue, --disable-nfqueue,libnetfilter-queue,"
|
||||
|
||||
PACKAGECONFIG[jansson] = "--with-libjansson-includes=${STAGING_INCDIR} --with-libjansson-libraries=${STAGING_LIBDIR},,jansson, jansson"
|
||||
PACKAGECONFIG[file] = ",,file, file"
|
||||
PACKAGECONFIG[nss] = "--with-libnss-includes=${STAGING_INCDIR} --with-libnss-libraries=${STAGING_LIBDIR}, nss, nss,"
|
||||
PACKAGECONFIG[nspr] = "--with-libnspr-includes=${STAGING_INCDIR} --with-libnspr-libraries=${STAGING_LIBDIR}, nspr, nspr,"
|
||||
PACKAGECONFIG[python] = "--enable-python, --disable-python, python3, python3-core"
|
||||
PACKAGECONFIG[unittests] = "--enable-unittests, --disable-unittests,"
|
||||
|
||||
export logdir = "${localstatedir}/log"
|
||||
|
||||
CACHED_CONFIGUREVARS = "ac_cv_func_malloc_0_nonnull=yes ac_cv_func_realloc_0_nonnull=yes"
|
||||
|
||||
do_configure:prepend () {
|
||||
# use host for RUST_SURICATA_LIB_XC_DIR
|
||||
sed -i -e 's,\${host_alias},${RUST_HOST_SYS},' ${S}/configure.ac
|
||||
oe_runconf
|
||||
}
|
||||
|
||||
do_compile () {
|
||||
# we do this to bypass the make provided by this pkg
|
||||
# patches Makefile to skip the subdir
|
||||
cargo_do_compile
|
||||
|
||||
# Finish building
|
||||
cd ${S}
|
||||
make
|
||||
}
|
||||
|
||||
do_install () {
|
||||
install -d ${D}${sysconfdir}/suricata
|
||||
|
||||
oe_runmake install DESTDIR=${D}
|
||||
|
||||
install -d ${D}${sysconfdir}/suricata ${D}${sysconfdir}/default/volatiles
|
||||
install -m 0644 ${WORKDIR}/volatiles.03_suricata ${D}${sysconfdir}/default/volatiles/03_suricata
|
||||
|
||||
install -m 0644 ${S}/threshold.config ${D}${sysconfdir}/suricata
|
||||
install -m 0644 ${S}/suricata.yaml ${D}${sysconfdir}/suricata
|
||||
|
||||
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
|
||||
install -d ${D}${sysconfdir}/tmpfiles.d
|
||||
install -m 0644 ${WORKDIR}/tmpfiles.suricata ${D}${sysconfdir}/tmpfiles.d/suricata.conf
|
||||
|
||||
install -d ${D}${systemd_unitdir}/system
|
||||
sed -e s:/etc:${sysconfdir}:g \
|
||||
-e s:/var/run:/run:g \
|
||||
-e s:/var:${localstatedir}:g \
|
||||
-e s:/usr/bin:${bindir}:g \
|
||||
-e s:/bin/kill:${base_bindir}/kill:g \
|
||||
-e s:/usr/lib:${libdir}:g \
|
||||
${WORKDIR}/suricata.service > ${D}${systemd_unitdir}/system/suricata.service
|
||||
fi
|
||||
|
||||
# Remove /var/run as it is created on startup
|
||||
rm -rf ${D}${localstatedir}/run
|
||||
|
||||
sed -i -e "s:#!.*$:#!${USRBINPATH}/env ${PYTHON_PN}:g" ${D}${bindir}/suricatasc
|
||||
sed -i -e "s:#!.*$:#!${USRBINPATH}/env ${PYTHON_PN}:g" ${D}${bindir}/suricatactl
|
||||
sed -i -e "s:#!.*$:#!${USRBINPATH}/env ${PYTHON_PN}:g" ${D}${libdir}/suricata/python/suricata/sc/suricatasc.py
|
||||
}
|
||||
|
||||
pkg_postinst_ontarget:${PN} () {
|
||||
if command -v systemd-tmpfiles >/dev/null; then
|
||||
systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/suricata.conf
|
||||
elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then
|
||||
${sysconfdir}/init.d/populate-volatile.sh update
|
||||
fi
|
||||
}
|
||||
|
||||
SYSTEMD_PACKAGES = "${PN}"
|
||||
|
||||
PACKAGES =+ "${PN}-python"
|
||||
FILES:${PN} += "${systemd_unitdir} ${sysconfdir}/tmpfiles.d"
|
||||
FILES:${PN}-python = "${bindir}/suricatasc ${PYTHON_SITEPACKAGES_DIR}"
|
||||
|
||||
CONFFILES:${PN} = "${sysconfdir}/suricata/suricata.yaml"
|
||||
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
./twtest.pl
|
||||
@@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
HOST_NAME=`uname -n`
|
||||
if [ ! -e /var/lib/tripwire/${HOST_NAME}.twd ] ; then
|
||||
echo "**** Error: Tripwire database for ${HOST_NAME} not found. ****"
|
||||
echo "**** Run "/etc/tripwire/twinstall.sh" and/or "tripwire --init". ****"
|
||||
else
|
||||
test -f /etc/tripwire/tw.cfg && /usr/sbin/tripwire --check
|
||||
fi
|
||||
@@ -0,0 +1,9 @@
|
||||
#!/bin/sh
|
||||
HOST_NAME=`uname -n`
|
||||
if [ ! -e /var/lib/tripwire/${HOST_NAME}.twd ] ; then
|
||||
echo "**** WARNING: Tripwire database for ${HOST_NAME} not found. ****"
|
||||
echo "**** Run "/etc/tripwire/twinstall.sh" and/or "tripwire --init". ****"
|
||||
# Note: /etc/tripwire/twinstall.sh creates and initializes tripwire
|
||||
# database (i.e tripwire --init).
|
||||
# Example: . /etc/tripwire/twinstall.sh 2> /dev/null
|
||||
fi
|
||||
@@ -0,0 +1,69 @@
|
||||
Post-Installation Instructions
|
||||
1. Run the configuration script: /etc/tripwire/twinstall.sh to sign these files. This script walks you through the processes of setting passphrases and signing the Tripwire policy and configuration files.
|
||||
Note: Once encoded and signed, the configuration file should not be renamed or moved.
|
||||
2. Initialize the Tripwire database file. (/usr/sbin/tripwire--init)
|
||||
3. Run the first integrity check. (/usr/sbin/tripwire--check)
|
||||
4. Edit the configuration file (twcfg.txt) with a text editor, if desired.
|
||||
5. Edit the policy file (twpol.txt) with a text editor, if desired.
|
||||
|
||||
Note: If you plan to modify the policy file, we recommend you do so before running the configuration script. If you modify the policy file after running the configuration script, you must re-run the configuration file before initializing the database file.
|
||||
|
||||
Modifying the Policy File
|
||||
You can specify how Tripwire software checks your system in the Tripwire policy file (twpol.txt). A default policy file is included in the Tripwire software installation. We recommend you tailor this policy file to fit your particular system. Tailoring the policy file greatly increases Tripwire software's ability to ensure the integrity of your system.
|
||||
|
||||
Locate the default policy file at /etc/tripwire/twpol.txt. An example policy file (located at /usr/doc/tripwire-VER#-REL#/policyguide.txt) is included to help you learn the policy language. Read the sample policy file and the comments in the sample policy file to learn the policy language.
|
||||
|
||||
After you modify the policy file, follow the Post-Installation Instructions (run the configuration script). This script signs the modified policy file and renames it to tw.pol. This is the active policy file that runs as part of the Tripwire software.
|
||||
|
||||
Selecting Passphrases
|
||||
Tripwire files are signed or encrypted using site or local keys. These keys are protected by passphrases. When selecting passphrases, the following recommendations apply:
|
||||
Use at least eight alphanumeric and symbolic characters for each passphrase. The maximum length of a passphrase is 1023 characters. Quotes should not be used as passphrase characters.
|
||||
|
||||
Assign a unique passphrase for the site key. The site key passphrase protects the site key, which is used to sign Tripwire software configuration and policy files. Assign a unique passphrase for the local key. The local key signs Tripwire database files. The local key may sign the Tripwire report files also.
|
||||
|
||||
Store the passphrases in a secure location. There is no way to remove encryption from a signed file if you forget your passphrase. If you forget the passphrases, the files are unusable. In that case you must reinitialize the baseline database.
|
||||
|
||||
Initializing the Database
|
||||
In Database Initialization mode, Tripwire software builds a database of filesystem objects based on the rules in the policy file. This database serves as the baseline for integrity checks. The syntax for Database Initialization mode is:
|
||||
tripwire --init
|
||||
|
||||
Running an Integrity Check
|
||||
The Integrity Check mode compares the current file system objects with their properties recorded in the Tripwire database. Violations are printed to stdout. The report file is saved and can later be accessed by twprint. An email option enables you to send email. The syntax for Integrity Check mode is:
|
||||
tripwire --check
|
||||
|
||||
Printing Reports - twprint Print Report Mode
|
||||
The twprint --print-report mode prints the contents of a Tripwire report. If you do not specify a report with the --twrfile or -r command-line argument, the default report file specified by the configuration file REPORTFILE variable is used.
|
||||
Example: On a machine named LIGHTHOUSE, the command would be:
|
||||
./twprint -m r --twrfile LIGHTHOUSE-19990622-021212.twr
|
||||
|
||||
Updating the Database after an Integrity Check
|
||||
Database Update mode enables you to update the Tripwire database after an integrity check if you determine that the violations discovered are valid. This update process saves time by enabling you to update the database without having to re-initialize it. It also enables selective updating, which cannot be done through re-initialization. The syntax for Database Update mode is:
|
||||
tripwire --update
|
||||
|
||||
Updating the Policy File
|
||||
Change the way that Tripwire software scans the system by changing the rules in the policy file. You can then update the database without a complete re-initialization. This saves a significant amount of time and preserves security by keeping the policy file synchronized with the database it uses. The syntax for Policy Update mode is:
|
||||
tripwire --update-policy
|
||||
|
||||
Testing email functions
|
||||
Test mode tests the software's email notification system, using the settings currently specified in the configuration file. The syntax for Email Test Reporting mode is:
|
||||
tripwire --test
|
||||
|
||||
Tripwire Components
|
||||
The policy file begins as a text file containing comments, rules, directives, and variables. These dictate the way Tripwire software checks your system. Each rule in the policy file specifies a system object to be monitored. Rules also describe which changes to the object to report, and which to ignore.
|
||||
|
||||
System objects are the files and directories you wish to monitor. Each object is identified by an object name. A property refers to a single characteristic of an object that Tripwire software can monitor. Directives control conditional processing of sets of rules in a policy file. During installation, the text policy file is encrypted and renamed, and becomes the active policy file.
|
||||
|
||||
The database file is an important component of Tripwire software. When first installed, Tripwire software uses the policy file rules to create the database file. The database file is a baseline "snapshot" of the system in a known secure state. Tripwire software compares this baseline against the current system to determine what changes have occurred. This is an integrity check.
|
||||
|
||||
When you perform an integrity check, Tripwire software produces report files. Report files summarize any changes that violated the policy file rules during the integrity check. You can view the report file in a variety of formats, at varying levels of detail.
|
||||
|
||||
The Tripwire configuration file stores system-specific information, such as the location of Tripwire data files. Tripwire software generates some of the configuration file information during installation. The system administrator can change parameters in the configuration file at any time. The configuration file variables POLFILE, DBFILE, REPORTFILE, SITEKEYFILE, and LOCALKEYFILE specify where the policy file, database file, report files, and site and local key files reside. These variables must be defined or the configuration file is invalid. If any of these variables are undefined, an error occurs on execution of Tripwire software and the program exits.
|
||||
|
||||
Tripwire Help
|
||||
All Tripwire commands support the help arguments. Example: To get help with Create Configuration File mode, type: ./twadmin --help --create-cfgfile
|
||||
|
||||
-? Display usage and version information
|
||||
--help Display all command modes
|
||||
--help all Display help for all command modes
|
||||
--help [mode] Display help for current command mode
|
||||
--version Display version information
|
||||
@@ -0,0 +1,15 @@
|
||||
ROOT =/usr/sbin
|
||||
POLFILE =/etc/tripwire/tw.pol
|
||||
DBFILE =/var/lib/tripwire/$(HOSTNAME).twd
|
||||
REPORTFILE =/var/lib/tripwire/report/$(HOSTNAME)-$(DATE).twr
|
||||
SITEKEYFILE =/etc/tripwire/site.key
|
||||
LOCALKEYFILE =/etc/tripwire/$(HOSTNAME)-local.key
|
||||
EDITOR =/usr/bin/nano
|
||||
LATEPROMPTING =false
|
||||
LOOSEDIRECTORYCHECKING =false
|
||||
MAILNOVIOLATIONS =true
|
||||
EMAILREPORTLEVEL =3
|
||||
REPORTLEVEL =3
|
||||
MAILMETHOD =SENDMAIL
|
||||
SYSLOGREPORTING =false
|
||||
MAILPROGRAM =/usr/lib/sendmail -t
|
||||
@@ -0,0 +1,320 @@
|
||||
#!/bin/sh
|
||||
|
||||
########################################################################
|
||||
########################################################################
|
||||
##
|
||||
## Tripwire(R) 2.3 for LINUX(R) Post-RPM installation script
|
||||
##
|
||||
## Copyleft information contained in footer
|
||||
##
|
||||
########################################################################
|
||||
########################################################################
|
||||
|
||||
##=======================================================
|
||||
## Setup
|
||||
##=======================================================
|
||||
|
||||
# We can assume all the correct tools are in place because the
|
||||
# RPM installed, didn't it?
|
||||
|
||||
##-------------------------------------------------------
|
||||
## Set HOST_NAME variable
|
||||
##-------------------------------------------------------
|
||||
HOST_NAME='localhost'
|
||||
if uname -n > /dev/null 2> /dev/null ; then
|
||||
HOST_NAME=`uname -n`
|
||||
fi
|
||||
|
||||
##-------------------------------------------------------
|
||||
## Program variables - edited by RPM during initial install
|
||||
##-------------------------------------------------------
|
||||
|
||||
# Site Passphrase variable
|
||||
TW_SITE_PASS="tripwire"
|
||||
|
||||
# Complete path to site key
|
||||
SITE_KEY="/etc/tripwire/site.key"
|
||||
|
||||
# Local Passphrase variable
|
||||
TW_LOCAL_PASS="tripwire"
|
||||
|
||||
# Complete path to local key
|
||||
LOCAL_KEY="/etc/tripwire/${HOST_NAME}-local.key"
|
||||
|
||||
# If clobber==true, overwrite files; if false, do not overwrite files.
|
||||
CLOBBER="false"
|
||||
|
||||
# If prompt==true, ask for confirmation before continuing with install.
|
||||
PROMPT="true"
|
||||
|
||||
# Name of twadmin executeable
|
||||
TWADMIN="twadmin"
|
||||
|
||||
# Path to twadmin executeable
|
||||
TWADMPATH=/usr/sbin
|
||||
|
||||
# Path to configuration directory
|
||||
CONF_PATH="/etc/tripwire"
|
||||
|
||||
# Name of clear text policy file
|
||||
TXT_POL=$CONF_PATH/twpol.txt
|
||||
|
||||
# Name of clear text configuration file
|
||||
TXT_CFG=$CONF_PATH/twcfg.txt
|
||||
|
||||
# Name of encrypted configuration file
|
||||
CONFIG_FILE=$CONF_PATH/tw.cfg
|
||||
|
||||
# Path of the final Tripwire policy file (signed)
|
||||
SIGNED_POL=`grep POLFILE $TXT_CFG | sed -e 's/^.*=\(.*\)/\1/'`
|
||||
|
||||
|
||||
##=======================================================
|
||||
## Create Key Files
|
||||
##=======================================================
|
||||
|
||||
##-------------------------------------------------------
|
||||
## If user has to enter a passphrase, give some
|
||||
## advice about what is appropriate.
|
||||
##-------------------------------------------------------
|
||||
|
||||
if [ -z "$TW_SITE_PASS" ] || [ -z "$TW_LOCAL_PASS" ]; then
|
||||
cat << END_OF_TEXT
|
||||
|
||||
----------------------------------------------
|
||||
The Tripwire site and local passphrases are used to
|
||||
sign a variety of files, such as the configuration,
|
||||
policy, and database files.
|
||||
|
||||
Passphrases should be at least 8 characters in length
|
||||
and contain both letters and numbers.
|
||||
|
||||
See the Tripwire manual for more information.
|
||||
END_OF_TEXT
|
||||
fi
|
||||
|
||||
##=======================================================
|
||||
## Generate keys.
|
||||
##=======================================================
|
||||
|
||||
echo
|
||||
echo "----------------------------------------------"
|
||||
echo "Creating key files..."
|
||||
|
||||
##-------------------------------------------------------
|
||||
## Site key file.
|
||||
##-------------------------------------------------------
|
||||
|
||||
# If clobber is true, and prompting is off (unattended operation)
|
||||
# and the key file already exists, remove it. Otherwise twadmin
|
||||
# will prompt with an "are you sure?" message.
|
||||
|
||||
if [ "$CLOBBER" = "true" ] && [ "$PROMPT" = "false" ] && [ -f "$SITE_KEY" ] ; then
|
||||
rm -f "$SITE_KEY"
|
||||
fi
|
||||
|
||||
if [ -f "$SITE_KEY" ] && [ "$CLOBBER" = "false" ] ; then
|
||||
echo "The site key file \"$SITE_KEY\""
|
||||
echo 'exists and will not be overwritten.'
|
||||
else
|
||||
cmdargs="--generate-keys --site-keyfile \"$SITE_KEY\""
|
||||
if [ -n "$TW_SITE_PASS" ] ; then
|
||||
cmdargs="$cmdargs --site-passphrase \"$TW_SITE_PASS\""
|
||||
fi
|
||||
eval "\"$TWADMPATH/$TWADMIN\" $cmdargs"
|
||||
if [ $? -ne 0 ] ; then
|
||||
echo "Error: site key generation failed"
|
||||
exit 1
|
||||
else chmod 640 "$SITE_KEY"
|
||||
fi
|
||||
fi
|
||||
|
||||
##-------------------------------------------------------
|
||||
## Local key file.
|
||||
##-------------------------------------------------------
|
||||
|
||||
# If clobber is true, and prompting is off (unattended operation)
|
||||
# and the key file already exists, remove it. Otherwise twadmin
|
||||
# will prompt with an "are you sure?" message.
|
||||
|
||||
if [ "$CLOBBER" = "true" ] && [ "$PROMPT" = "false" ] && [ -f "$LOCAL_KEY" ] ; then
|
||||
rm -f "$LOCAL_KEY"
|
||||
fi
|
||||
|
||||
if [ -f "$LOCAL_KEY" ] && [ "$CLOBBER" = "false" ] ; then
|
||||
echo "The site key file \"$LOCAL_KEY\""
|
||||
echo 'exists and will not be overwritten.'
|
||||
else
|
||||
cmdargs="--generate-keys --local-keyfile \"$LOCAL_KEY\""
|
||||
if [ -n "$TW_LOCAL_PASS" ] ; then
|
||||
cmdargs="$cmdargs --local-passphrase \"$TW_LOCAL_PASS\""
|
||||
fi
|
||||
eval "\"$TWADMPATH/$TWADMIN\" $cmdargs"
|
||||
if [ $? -ne 0 ] ; then
|
||||
echo "Error: local key generation failed"
|
||||
exit 1
|
||||
else chmod 640 "$LOCAL_KEY"
|
||||
fi
|
||||
fi
|
||||
|
||||
##=======================================================
|
||||
## Sign the Configuration File
|
||||
##=======================================================
|
||||
|
||||
echo
|
||||
echo "----------------------------------------------"
|
||||
echo "Signing configuration file..."
|
||||
|
||||
##-------------------------------------------------------
|
||||
## If noclobber, then backup any existing config file.
|
||||
##-------------------------------------------------------
|
||||
|
||||
if [ "$CLOBBER" = "false" ] && [ -s "$CONFIG_FILE" ] ; then
|
||||
backup="${CONFIG_FILE}.$$.bak"
|
||||
echo "Backing up $CONFIG_FILE"
|
||||
echo " to $backup"
|
||||
`mv "$CONFIG_FILE" "$backup"`
|
||||
if [ $? -ne 0 ] ; then
|
||||
echo "Error: backup of configuration file failed."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
##-------------------------------------------------------
|
||||
## Build command line.
|
||||
##-------------------------------------------------------
|
||||
|
||||
cmdargs="--create-cfgfile"
|
||||
cmdargs="$cmdargs --cfgfile \"$CONFIG_FILE\""
|
||||
cmdargs="$cmdargs --site-keyfile \"$SITE_KEY\""
|
||||
if [ -n "$TW_SITE_PASS" ] ; then
|
||||
cmdargs="$cmdargs --site-passphrase \"$TW_SITE_PASS\""
|
||||
fi
|
||||
|
||||
##-------------------------------------------------------
|
||||
## Sign the file.
|
||||
##-------------------------------------------------------
|
||||
|
||||
eval "\"$TWADMPATH/$TWADMIN\" $cmdargs \"$TXT_CFG\""
|
||||
if [ $? -ne 0 ] ; then
|
||||
echo "Error: signing of configuration file failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Set the rights properly
|
||||
chmod 640 "$CONFIG_FILE"
|
||||
|
||||
##-------------------------------------------------------
|
||||
## We keep the cleartext version around.
|
||||
##-------------------------------------------------------
|
||||
|
||||
cat << END_OF_TEXT
|
||||
|
||||
A clear-text version of the Tripwire configuration file
|
||||
$TXT_CFG
|
||||
has been preserved for your inspection. It is recommended
|
||||
that you delete this file manually after you have examined it.
|
||||
|
||||
END_OF_TEXT
|
||||
|
||||
##=======================================================
|
||||
## Sign tripwire policy file.
|
||||
##=======================================================
|
||||
|
||||
echo
|
||||
echo "----------------------------------------------"
|
||||
echo "Signing policy file..."
|
||||
|
||||
##-------------------------------------------------------
|
||||
## If noclobber, then backup any existing policy file.
|
||||
##-------------------------------------------------------
|
||||
|
||||
if [ "$CLOBBER" = "false" ] && [ -s "$POLICY_FILE" ] ; then
|
||||
backup="${POLICY_FILE}.$$.bak"
|
||||
echo "Backing up $POLICY_FILE"
|
||||
echo " to $backup"
|
||||
mv "$POLICY_FILE" "$backup"
|
||||
if [ $? -ne 0 ] ; then
|
||||
echo "Error: backup of policy file failed."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
##-------------------------------------------------------
|
||||
## Build command line.
|
||||
##-------------------------------------------------------
|
||||
|
||||
cmdargs="--create-polfile"
|
||||
cmdargs="$cmdargs --cfgfile \"$CONFIG_FILE\""
|
||||
cmdargs="$cmdargs --site-keyfile \"$SITE_KEY\""
|
||||
if [ -n "$TW_SITE_PASS" ] ; then
|
||||
cmdargs="$cmdargs --site-passphrase \"$TW_SITE_PASS\""
|
||||
fi
|
||||
|
||||
##-------------------------------------------------------
|
||||
## Sign the file.
|
||||
##-------------------------------------------------------
|
||||
|
||||
eval "\"$TWADMPATH/$TWADMIN\" $cmdargs \"$TXT_POL\""
|
||||
if [ $? -ne 0 ] ; then
|
||||
echo "Error: signing of policy file failed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Set the proper rights on the newly signed policy file.
|
||||
chmod 0640 "$SIGNED_POL"
|
||||
|
||||
##-------------------------------------------------------
|
||||
## We keep the cleartext version around.
|
||||
##-------------------------------------------------------
|
||||
|
||||
cat << END_OF_TEXT
|
||||
|
||||
A clear-text version of the Tripwire policy file
|
||||
$TXT_POL
|
||||
has been preserved for your inspection. This implements
|
||||
a minimal policy, intended only to test essential
|
||||
Tripwire functionality. You should edit the policy file
|
||||
to describe your system, and then use twadmin to generate
|
||||
a new signed copy of the Tripwire policy.
|
||||
|
||||
END_OF_TEXT
|
||||
|
||||
# Initialize tripwire database
|
||||
/usr/sbin/tripwire --init --cfgfile $CONFIG_FILE --site-keyfile $SITE_KEY \
|
||||
--local-passphrase $TW_LOCAL_PASS 2> /dev/null
|
||||
|
||||
########################################################################
|
||||
########################################################################
|
||||
#
|
||||
# TRIPWIRE GPL NOTICES
|
||||
#
|
||||
# The developer of the original code and/or files is Tripwire, Inc.
|
||||
# Portions created by Tripwire, Inc. are copyright 2000 Tripwire, Inc.
|
||||
# Tripwire is a registered trademark of Tripwire, Inc. All rights reserved.
|
||||
#
|
||||
# This program is free software. The contents of this file are subject to
|
||||
# the terms of the GNU General Public License as published by the Free
|
||||
# Software Foundation; either version 2 of the License, or (at your option)
|
||||
# any later version. You may redistribute it and/or modify it only in
|
||||
# compliance with the GNU General Public License.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful. However,
|
||||
# this program is distributed "AS-IS" WITHOUT ANY WARRANTY; INCLUDING THE
|
||||
# IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
|
||||
# Please see the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License along
|
||||
# with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# Nothing in the GNU General Public License or any other license to use the
|
||||
# code or files shall permit you to use Tripwire's trademarks,
|
||||
# service marks, or other intellectual property without Tripwire's
|
||||
# prior written consent.
|
||||
#
|
||||
# If you have any questions, please contact Tripwire, Inc. at either
|
||||
# info@tripwire.org or www.tripwire.org.
|
||||
#
|
||||
########################################################################
|
||||
########################################################################
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,77 @@
|
||||
SUMMARY = "Tripwire: A system integrity assessment tool (IDS)"
|
||||
DESCRIPTION = "Open Source Tripwire® software is a security and data \
|
||||
integrity tool useful for monitoring and alerting on specific file change(s) on a range of systems"
|
||||
HOMEPAGE="http://sourceforge.net/projects/tripwire"
|
||||
SECTION = "security Monitor/Admin"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=1c069be8dbbe48e89b580ab4ed86c127"
|
||||
|
||||
SRCREV = "6e64a9e5b70a909ec439bc5a099e3fcf38c614b0"
|
||||
|
||||
SRC_URI = "\
|
||||
git://github.com/Tripwire/tripwire-open-source.git;branch=master;protocol=https \
|
||||
file://tripwire.cron \
|
||||
file://tripwire.sh \
|
||||
file://tripwire.txt \
|
||||
file://twcfg.txt \
|
||||
file://twinstall.sh \
|
||||
file://twpol-yocto.txt \
|
||||
file://run-ptest \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit autotools-brokensep update-rc.d ptest
|
||||
|
||||
INITSCRIPT_NAME = "tripwire"
|
||||
INITSCRIPT_PARAMS = "start 40 S ."
|
||||
TRIPWIRE_HOST = "${HOST_SYS}"
|
||||
TRIPWIRE_TARGET = "${TARGET_SYS}"
|
||||
|
||||
CXXFLAGS += "-fno-strict-aliasing"
|
||||
EXTRA_OECONF = "--disable-openssl --enable-static --sysconfdir=/etc/tripwire"
|
||||
|
||||
do_install () {
|
||||
install -d ${D}${libdir} ${D}${datadir} ${D}${base_libdir}
|
||||
install -d ${D}${sysconfdir} ${D}${mandir} ${D}${sbindir}
|
||||
install -d ${D}${sysconfdir}/${PN}
|
||||
install -d ${D}${localstatedir}/lib/${PN} ${D}${localstatedir}/lib/${BPN}/report
|
||||
install -d ${D}${mandir}/man4 ${D}${mandir}/man5 ${D}${mandir}/man8
|
||||
install -d ${D}${docdir}/${BPN} ${D}${docdir}/${BPN}/templates
|
||||
install -d ${D}${sysconfdir}/init.d
|
||||
|
||||
install -m 0755 ${S}/bin/* ${D}${sbindir}
|
||||
install -m 0644 ${S}/lib/* ${D}${base_libdir}
|
||||
install -m 0644 ${S}/lib/* ${D}${localstatedir}/lib/${PN}
|
||||
install -m 0755 ${WORKDIR}/tripwire.cron ${D}${sysconfdir}
|
||||
install -m 0755 ${WORKDIR}/tripwire.sh ${D}${sysconfdir}/init.d/tripwire
|
||||
install -m 0755 ${WORKDIR}/twinstall.sh ${D}${sysconfdir}/${PN}
|
||||
install -m 0644 ${WORKDIR}/twpol-yocto.txt ${D}${sysconfdir}/${PN}/twpol.txt
|
||||
install -m 0644 ${WORKDIR}/twcfg.txt ${D}${sysconfdir}/${PN}
|
||||
|
||||
install -m 0644 ${S}/man/man4/* ${D}${mandir}/man4
|
||||
install -m 0644 ${S}/man/man5/* ${D}${mandir}/man5
|
||||
install -m 0644 ${S}/man/man8/* ${D}${mandir}/man8
|
||||
rm ${D}${mandir}/man*/Makefile*
|
||||
install -m 0644 ${S}/policy/templates/* ${D}${docdir}/${BPN}/templates
|
||||
install -m 0644 ${S}/policy/*txt ${D}${docdir}/${BPN}
|
||||
install -m 0644 ${S}/COPYING ${D}${docdir}/${BPN}
|
||||
install -m 0644 ${S}/TRADEMARK ${D}${docdir}/${BPN}
|
||||
install -m 0644 ${WORKDIR}/tripwire.txt ${D}${docdir}/${BPN}
|
||||
}
|
||||
|
||||
do_install_ptest:append () {
|
||||
install -d ${D}${PTEST_PATH}/tests
|
||||
cp -a ${S}/src/test-harness/* ${D}${PTEST_PATH}
|
||||
sed -i -e 's@../../../../bin@${sbindir}@' ${D}${PTEST_PATH}/twtools.pm
|
||||
}
|
||||
|
||||
FILES:${PN} += "${libdir} ${docdir}/${PN}/*"
|
||||
FILES:${PN}-dbg += "${sysconfdir}/${PN}/.debug"
|
||||
FILES:${PN}-staticdev += "${localstatedir}/lib/${PN}/lib*.a"
|
||||
FILES:${PN}-ptest += "${PTEST_PATH}/tests "
|
||||
|
||||
RDEPENDS:${PN} += " perl nano msmtp cronie"
|
||||
RDEPENDS:${PN}-ptest = " perl lib-perl perl-modules "
|
||||
|
||||
SKIP_RECIPE[tripwire] ?= "Upsteram project appears to be abondoned, fails to build with gcc11"
|
||||
Reference in New Issue
Block a user