From deba8115d2c2af26df42966b91ef04ff4dd79cde Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Thu, 14 May 2020 11:09:11 +0100 Subject: gentoo resync : 14.05.2020 --- app-forensics/Manifest.gz | Bin 5035 -> 5028 bytes app-forensics/afflib/Manifest | 2 +- app-forensics/afflib/afflib-3.7.18.ebuild | 2 +- app-forensics/foremost/Manifest | 3 +- .../files/foremost-1.5.7-set-but-unused.patch | 230 ++++++++++++++++ app-forensics/foremost/foremost-1.5.7-r3.ebuild | 11 +- app-forensics/honggfuzz/Manifest | 2 - app-forensics/honggfuzz/honggfuzz-2.1.ebuild | 43 --- app-forensics/sleuthkit/Manifest | 3 + app-forensics/sleuthkit/sleuthkit-4.9.0.ebuild | 303 +++++++++++++++++++++ 10 files changed, 544 insertions(+), 55 deletions(-) create mode 100644 app-forensics/foremost/files/foremost-1.5.7-set-but-unused.patch delete mode 100644 app-forensics/honggfuzz/honggfuzz-2.1.ebuild create mode 100644 app-forensics/sleuthkit/sleuthkit-4.9.0.ebuild (limited to 'app-forensics') diff --git a/app-forensics/Manifest.gz b/app-forensics/Manifest.gz index 1c2aeefa36b9..a64de3cd5e3b 100644 Binary files a/app-forensics/Manifest.gz and b/app-forensics/Manifest.gz differ diff --git a/app-forensics/afflib/Manifest b/app-forensics/afflib/Manifest index 5dd3ea75b3c1..5f6094adfe3f 100644 --- a/app-forensics/afflib/Manifest +++ b/app-forensics/afflib/Manifest @@ -1,3 +1,3 @@ DIST afflib-3.7.18.tar.gz 540371 BLAKE2B 6c1837ebcb5cca97622736f38e61c35f149c045bc1a60acea455dd9059e8c60447cd8f45304fd55aa7f2e5f783d40e266a23d09b33209f9dc5441f971b8a188d SHA512 47ab74c86bbaedc2494558962f99463066e267f7a3f583902a53e1f488085a309b0d871093c67439033272c3ebf03d213649886930b9812013e66782ea84df85 -EBUILD afflib-3.7.18.ebuild 1501 BLAKE2B a771e10a5cb34ab8bf45a31c9d6bc2ef2dc35b416df8da0a77f647373c9119cf8d373c8260ef0b1167c59df1dc86d79d437aba6b7383f1c0f6bef0cf3087b016 SHA512 5229eea6fe5c0ee4e8ee0ddeebabe2c435d27e3e2ec1ee33780f038fcf9a41c174c249c4bf334922cc9554d0b66af49a79e7a42bf9d855082585542fc87cd337 +EBUILD afflib-3.7.18.ebuild 1495 BLAKE2B 7f4a6993481106cde8c4f71933fc5862d4d78f6991ccb9dce4b2f33b0987ff54bcace3915dfb4e7c2bc2f87ed60da9b7564856860c27989b7bb0aab4d1eb5d59 SHA512 4368ba36a716ba954c5077bc3c8fc3814f75aa8a4cfceca30a41cbc2aa90e7e409fcaecf29c80756bd5feb7e7aac347795f263d1d1bc5a100c8864772762d4d9 MISC metadata.xml 429 BLAKE2B 64f4ca1a2220e6b7dedc1b9886c271e2cdc96013d63f2262ae7510f5189ec69fefc0b616dbe94d4cd21cf9cef13809ebec12c99e18415fb97691dec08a8da04f SHA512 172d0b4a9759b0bd5153e1cecf1a2c1b3f0927528fbc76941fe19c77f6960455628af22823c81b156b8575cacfe58d525950bafcdb31aca752752274ec989191 diff --git a/app-forensics/afflib/afflib-3.7.18.ebuild b/app-forensics/afflib/afflib-3.7.18.ebuild index c604c4223373..fefac350f3bc 100644 --- a/app-forensics/afflib/afflib-3.7.18.ebuild +++ b/app-forensics/afflib/afflib-3.7.18.ebuild @@ -2,7 +2,7 @@ # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python{2_7,3_{6,7}} ) +PYTHON_COMPAT=( python3_{6,7} ) inherit autotools python-single-r1 diff --git a/app-forensics/foremost/Manifest b/app-forensics/foremost/Manifest index ea5b05a4e1f4..b4f23fef7fa6 100644 --- a/app-forensics/foremost/Manifest +++ b/app-forensics/foremost/Manifest @@ -1,5 +1,6 @@ AUX foremost-1.4-config-location.patch 462 BLAKE2B 7dadc7fd049b09992e9e3019aaaa27d53268a6b6cea03146d965bdd3f0ec3165fbde33c2ecd41a949758ff4b8d36259d048869d17b828e2f600ea9418e3d0bce SHA512 7b6dcc18cba4676ef4d54b87c9c31747754ecbebd9424340b2dd059495c9c6cec11513307fff802a336a99bc07c4bcd2ffcfad1c77ccdc49277ef7e40e30029e AUX foremost-1.5.7-format-security.patch 680 BLAKE2B 5565dc9d255ccbb4b721cdb0b41fef4f86369c4965000e35678e6ece00acec5ead0b15d90bd71a2456b812ab74fa9283bdf70c2fc36003a3d659105bb04a139d SHA512 1c28ed1fceedec728a5060b195214fd3ec3b0fa529e87f7421ee72d73f71ecc0d48a69a5b5ff4c6179dd65781552fbd272437134498ec865bd5c620375b6f85b +AUX foremost-1.5.7-set-but-unused.patch 7720 BLAKE2B 047c4a31d26750706a9dad36078e848e68e89f0013a6572369dc42fa014234d37120bdb3c51ec7e83b7c99d4c497c541039e334af1d3bd144cf8250a1212f920 SHA512 1be57b3a63e38556b3a6758c1f24e5424076f11608dba148703c9cef16bac9954366a2540720912e8720d0e291f6d5933f2830b0f1b497a5f6feabc570231a52 DIST foremost-1.5.7.tar.gz 52352 BLAKE2B 5642c1afd86aab0a2f90986c3b030d37b37700c5d0e4b04e4f4a2004d69745280fabd4086a72c33b9eab05b57d125d6b11105c9e11b0112e30077f101eeab7ac SHA512 8827c29d52496783be26374f3943eb26a154d842f34e50fb489f87b3a5045bf85f1e44d7d8d8b12b2355ba3fe4b06a0db979cc22c0f431593c5976001eb931ab -EBUILD foremost-1.5.7-r3.ebuild 884 BLAKE2B ce1257966c1b49fdfa9272c165d34d18915300a2a2e24a5eb52111d990d7aad3e7a7eab726ef6e7a45b29a6bf5a8dfa88ae128f155c7227d837d3108467cb6ce SHA512 f900a27bcb24e414f194955c047b6c634a4e9463121ce3dea336e642d36aed94be30a0633e6a71aac8b221e8f0ae9af893dd6d76206cff7d6a847773fef96dcc +EBUILD foremost-1.5.7-r3.ebuild 889 BLAKE2B 4c6efebcd368b06250afef4a665ce84e7538eeb82a83988b148f1e2ef3fa94e769d7172b05d78156488e1e066aa2fa927a5fd0b8f3073cc7a754f0793d2e08fd SHA512 b1156aeeeef8718e631fc9e24a030a2191951238a76da2754e52ed62f35084294517f40c2809d2466953cfd5a723d71bf5497ed44726a0723df8b30d4b6d17ef MISC metadata.xml 303 BLAKE2B 14bc09979926d326ccb75438d8e32f9a60b1df8078e6344f4dc2e32a33c0994bf2740a4b29d7c1a479bb514815f037d2d9a9ac9c8387fbc01b7795e2a37fea86 SHA512 165c108232c3a65d3fbeb0fb2f612c7c4c4c16a57e4b3e280c4ef40d6a586b56df437454283ff5b52fa3a0880d9643682493b3d75cac01170edab53bb5f1ce52 diff --git a/app-forensics/foremost/files/foremost-1.5.7-set-but-unused.patch b/app-forensics/foremost/files/foremost-1.5.7-set-but-unused.patch new file mode 100644 index 000000000000..59b52c68615d --- /dev/null +++ b/app-forensics/foremost/files/foremost-1.5.7-set-but-unused.patch @@ -0,0 +1,230 @@ +diff --git a/api.c b/api.c +index e3ee339..67463a6 100755 +--- a/api.c ++++ b/api.c +@@ -478,7 +478,7 @@ int dump_dirent(int which_one) + { + int i; + char *p; +- short unknown; ++ // short unknown; + struct OLE_DIR *dir; + + dir = (struct OLE_DIR *) &buffer[which_one * sizeof(struct OLE_DIR)]; +@@ -493,7 +493,7 @@ int dump_dirent(int which_one) + p = dir->name; + if (*p < ' ') + { +- unknown = *((short *)p); ++ //unknown = *((short *)p); + + //fprintf (stderr, "%04x\t", unknown); + p += 2; /* step over unknown short */ +diff --git a/engine.c b/engine.c +index 85add5f..4a1ef13 100755 +--- a/engine.c ++++ b/engine.c +@@ -316,7 +316,6 @@ int search_chunk(f_state *s, unsigned char *buf, f_info *i, u_int64_t chunk_size + //u_int64_t buf_off = 0; + + unsigned char *foundat = buf; +- unsigned char *current_pos = NULL; + unsigned char *header_pos = NULL; + unsigned char *newbuf = NULL; + unsigned char *ind_ptr = NULL; +@@ -461,7 +460,6 @@ int search_chunk(f_state *s, unsigned char *buf, f_info *i, u_int64_t chunk_size + } + + c_offset = (foundat - buf); +- current_pos = foundat; + + /*Now lets analyze the file and see if we can determine its size*/ + +@@ -511,12 +509,12 @@ int search_chunk(f_state *s, unsigned char *buf, f_info *i, u_int64_t chunk_size + newbuf = read_from_disk(c_offset + f_offset, i, needle->max_len); + if (newbuf == NULL) + break; +- current_pos = extract_file(s, +- c_offset, +- newbuf, +- needle->max_len, +- needle, +- f_offset); ++ extract_file(s, ++ c_offset, ++ newbuf, ++ needle->max_len, ++ needle, ++ f_offset); + + /*Lets put the fp back*/ + fseeko(i->handle, saveme, SEEK_SET); +diff --git a/extract.c b/extract.c +index 9639117..4fecde5 100755 +--- a/extract.c ++++ b/extract.c +@@ -553,7 +553,6 @@ unsigned char *extract_htm(f_state *s, u_int64_t c_offset, unsigned char *founda + { + unsigned char *buf = foundat; + unsigned char *extractbuf = NULL; +- unsigned char *currentpos = NULL; + + int bytes_to_search = 0; + int i = 0; +@@ -582,7 +581,6 @@ unsigned char *extract_htm(f_state *s, u_int64_t c_offset, unsigned char *founda + } + + /*Store the current position and search for the HTML> tag*/ +- currentpos = foundat; + foundat = bm_search(needle->footer, + needle->footer_len, + foundat, +@@ -1146,15 +1144,15 @@ unsigned char *extract_mov(f_state *s, u_int64_t c_offset, unsigned char *founda + unsigned char *extract_wmv(f_state *s, u_int64_t c_offset, unsigned char *foundat, u_int64_t buflen, + s_spec *needle, u_int64_t f_offset) + { +- +- unsigned char *currentpos = NULL; ++#ifdef DEBUG ++ u_int64_t fileObjHeaderSize = 0; ++#endif + unsigned char *header = foundat; + unsigned char *extractbuf = NULL; + unsigned char *buf = foundat; + unsigned int size = 0; + u_int64_t file_size = 0; + u_int64_t headerSize = 0; +- u_int64_t fileObjHeaderSize = 0; + int numberofHeaderObjects = 0; + int reserved[2]; + int bytes_to_search = 0; +@@ -1184,7 +1182,6 @@ unsigned char *extract_wmv(f_state *s, u_int64_t c_offset, unsigned char *founda + return foundat; + } + +- currentpos = foundat; + if (buflen - (foundat - buf) >= needle->max_len) + bytes_to_search = needle->max_len; + else +@@ -1201,7 +1198,9 @@ unsigned char *extract_wmv(f_state *s, u_int64_t c_offset, unsigned char *founda + if (foundat) + { + foundat += 16; /*jump to the headersize*/ ++#ifdef DEBUG + fileObjHeaderSize = htoll(foundat, FOREMOST_LITTLE_ENDIAN); ++#endif + //printx(foundat,0,8); + foundat += 24; //Jump to the file size obj + size = htoi(foundat, FOREMOST_LITTLE_ENDIAN); +@@ -1401,7 +1400,6 @@ unsigned char *extract_gif(f_state *s, u_int64_t c_offset, unsigned char *founda + s_spec *needle, u_int64_t f_offset) + { + unsigned char *buf = foundat; +- unsigned char *currentpos = foundat; + unsigned char *extractbuf = NULL; + int bytes_to_search = 0; + unsigned short width = 0; +@@ -1420,7 +1418,6 @@ unsigned char *extract_gif(f_state *s, u_int64_t c_offset, unsigned char *founda + sprintf(comment, " (%d x %d)", width, height); + strcat(needle->comment, comment); + +- currentpos = foundat; + if (buflen - (foundat - buf) >= needle->max_len) + bytes_to_search = needle->max_len; + else +@@ -1821,7 +1818,6 @@ unsigned char *extract_jpeg(f_state *s, u_int64_t c_offset, unsigned char *found + s_spec *needle, u_int64_t f_offset) + { + unsigned char *buf = foundat; +- unsigned char *currentpos = NULL; + + unsigned char *extractbuf = NULL; + unsigned short headersize; +@@ -1899,8 +1895,6 @@ unsigned char *extract_jpeg(f_state *s, u_int64_t c_offset, unsigned char *found + return buf + needle->header_len; + } + +- currentpos = foundat; +- + //sprintf("Searching for footer\n"); + if (buflen < (foundat - buf)) { + #ifdef DEBUG +@@ -2094,19 +2088,21 @@ unsigned char *extract_exe(f_state *s, u_int64_t c_offset, unsigned char *founda + unsigned char *extractbuf = NULL; + u_int64_t file_size = 0; + unsigned short pe_offset = 0; +- unsigned int SizeOfCode = 0; +- unsigned int SizeOfInitializedData = 0; +- unsigned int SizeOfUninitializedData = 0; +- unsigned int rva = 0; + unsigned int offset = 0; + unsigned short sections = 0; +- unsigned int sizeofimage = 0; + unsigned int raw_section_size = 0; +- unsigned int size_of_headers = 0; + unsigned short dll = 0; + unsigned int sum = 0; + unsigned short exe_char = 0; ++#ifdef DEBUG ++ unsigned int SizeOfInitializedData = 0; ++ unsigned int SizeOfUninitializedData = 0; ++ unsigned int SizeOfCode = 0; ++ unsigned int rva = 0; ++ unsigned int sizeofimage = 0; ++ unsigned int size_of_headers = 0; + unsigned int align = 0; ++#endif + int i = 0; + time_t compile_time = 0; + struct tm *ret_time; +@@ -2167,14 +2163,16 @@ unsigned char *extract_exe(f_state *s, u_int64_t c_offset, unsigned char *founda + + foundat += 0x18; /*Jump to opt header should be 0x0b 0x01*/ + ++#ifdef DEBUG + SizeOfCode = htoi(&foundat[4], FOREMOST_LITTLE_ENDIAN); + SizeOfInitializedData = htoi(&foundat[8], FOREMOST_LITTLE_ENDIAN); + SizeOfUninitializedData = htoi(&foundat[12], FOREMOST_LITTLE_ENDIAN); + rva = htoi(&foundat[16], FOREMOST_LITTLE_ENDIAN); + align = htoi(&foundat[36], FOREMOST_LITTLE_ENDIAN); +- + sizeofimage = htoi(&foundat[56], FOREMOST_LITTLE_ENDIAN); + size_of_headers = htoi(&foundat[60], FOREMOST_LITTLE_ENDIAN); ++#endif ++ + foundat += 224; + + /*Start of sections*/ +@@ -2193,13 +2191,13 @@ unsigned char *extract_exe(f_state *s, u_int64_t c_offset, unsigned char *founda + sum = offset + raw_section_size; + } + +- /* ++#ifdef DEBUG + printf("rva is %d sum= %d\n",rva,sum); + printf("soi is %d,soh is %d \n",sizeofimage,size_of_headers); + printf("we are off by %d\n",sum-buflen); + printf("soc=%d ,soidr=%d, souid=%d\n",SizeOfCode,SizeOfInitializedData,SizeOfUninitializedData); + printf("fs=%d ,extr=%d\n",SizeOfCode+SizeOfInitializedData,SizeOfUninitializedData); +- */ ++#endif + file_size = sum; + if (file_size < 512 || file_size > 4 * MEGABYTE) + { +@@ -2267,7 +2265,6 @@ unsigned char *extract_rar(f_state *s, u_int64_t c_offset, unsigned char *founda + { + unsigned char *buf = foundat; + unsigned char *extractbuf = NULL; +- u_int64_t file_size = 0; + unsigned short headersize = 0; + unsigned short flags = 0; + unsigned int filesize = 0; +@@ -2424,8 +2421,6 @@ unsigned char *extract_rar(f_state *s, u_int64_t c_offset, unsigned char *founda + + /*We found the EOF, write the file to disk and return*/ + tot_file_size = (foundat - buf); +- if (tot_file_size > buflen) +- file_size = buflen; + + extractbuf = buf; + write_to_disk(s, needle, tot_file_size, extractbuf, c_offset + f_offset); diff --git a/app-forensics/foremost/foremost-1.5.7-r3.ebuild b/app-forensics/foremost/foremost-1.5.7-r3.ebuild index 531cf1318f8e..56cdeee6ed5d 100644 --- a/app-forensics/foremost/foremost-1.5.7-r3.ebuild +++ b/app-forensics/foremost/foremost-1.5.7-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2018 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -15,12 +15,9 @@ KEYWORDS="amd64 ppc x86" IUSE="" LICENSE="public-domain" SLOT="0" - -src_prepare() { - epatch "${FILESDIR}/${PN}-1.4-config-location.patch" - epatch "${FILESDIR}/${PN}-1.5.7-format-security.patch" - default_src_prepare -} +PATCHES=("${FILESDIR}/${PN}-1.4-config-location.patch" + "${FILESDIR}/${PN}-1.5.7-format-security.patch" + "${FILESDIR}/${PN}-1.5.7-set-but-unused.patch") src_compile() { emake RAW_FLAGS="${CFLAGS} -Wall ${LDFLAGS}" RAW_CC="$(tc-getCC) -DVERSION=\\\"${PV}\\\"" \ diff --git a/app-forensics/honggfuzz/Manifest b/app-forensics/honggfuzz/Manifest index 93d1eb0e1cfc..f4d4bd02e01d 100644 --- a/app-forensics/honggfuzz/Manifest +++ b/app-forensics/honggfuzz/Manifest @@ -1,6 +1,4 @@ AUX honggfuzz-2.0-no-werror.patch 518 BLAKE2B aaf123687ea5f7fd584d1fd5e57f2f6ac50a8d80c3a1555d8b01d42df91a106848ec1d73007e6b67127e767770d91effa5e95dd9016f47fecac0e465e74cfe61 SHA512 7775f683cd5b22d91d3cf16cb0f8e7df50f5159a3f16ef42dc6125c961a856ddfc59c944319575e403747a2af768cd3f93437fc0bbc32bfc12f833f4cd7db0eb -DIST honggfuzz-2.1.tar.gz 65209308 BLAKE2B 83882aaba55e1a809c7477c528f92e3617ea912794680c21de680da38a17e5b6ccf6dbfa9e3c6da263fd8730a0007cf44b5038b8f1c80ecd9cc8dffec7548a99 SHA512 04505085779ba824a494f414b9eb7d9f5f5e6962ca4736cd4fa4bc00438c9cb63c5a367db9510f8e1b0383469207d70fad1e978e696912c721a14a5340e9ad2b DIST honggfuzz-2.2.tar.gz 65219878 BLAKE2B f842c6d3dea22525d1335fbdbdffa349ace743762386e81e40f1eab99dafa8f34b935c1cb4871b25ade76e3ac8f846d0329ef01bc0097a888e60b400819ada2d SHA512 8e6a0cf027d521967a69828afa6e0ae5306ad7387c595405f9d3151344e2aa91f9537355fafdf03f06e6702014e2faa0609c3d249f22af5793663f3c9d09180d -EBUILD honggfuzz-2.1.ebuild 713 BLAKE2B f0ffd49f38bc7ed25a962c3cc82b25d8c6b2fff45083836adb59f36f5f0f392119f608dfd62eb3e63249308e6c9559bd746a56af06f33e482bbb454dd48bc46f SHA512 0dec4491e85044a226e5063f6cebf55a4600266aaae9220baca994d50b204e913eed9463e5717579f1693eed8e7f14d09e042204de61d456083e8e170b2c8af4 EBUILD honggfuzz-2.2.ebuild 732 BLAKE2B 80c1cc582f4a4b55ecd4b4ef2e14b113d05ec14e0c5d59f2412426855e18f53032649a76ac2b5516cf5e5c7e5cd2a4d133d31d948d5f708d806d10459ef0038d SHA512 8bbbeae38009b3aab10f1383ee008570bc3cd8a24c55a76782badd12889f82d027ac741d88977eb00bfa6a07acb9eaffdb095f735ca840342a8cb9908633065f MISC metadata.xml 332 BLAKE2B 72702618670b8f8ef24ef68d5f9b1b29c8d25c3630cc5fb22ef859ea7879af84d0c7fc758a02a0b4175e10707f2c161930151b65e2e3d07f154a1b2c48fee152 SHA512 1f75a39cce6995d550344225849dafb3a980df19cc6afd10025e58e6c08086a27a67173ff435c084660970cb4ed18183914afeba712dc461d7fd55f83f9e679d diff --git a/app-forensics/honggfuzz/honggfuzz-2.1.ebuild b/app-forensics/honggfuzz/honggfuzz-2.1.ebuild deleted file mode 100644 index 4d8108afc11d..000000000000 --- a/app-forensics/honggfuzz/honggfuzz-2.1.ebuild +++ /dev/null @@ -1,43 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit toolchain-funcs - -DESCRIPTION="A general purpose fuzzer with feedback support" -HOMEPAGE="https://google.github.io/honggfuzz/" -SRC_URI="https://github.com/google/honggfuzz/archive/${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~amd64" -IUSE="" - -RDEPEND=" - >=sys-libs/binutils-libs-2.29:= - sys-libs/libunwind:= -" - -DEPEND="${RDEPEND}" - -DOCS=( - CHANGELOG - COPYING - CONTRIBUTING - README.md -) - -PATCHES=( - "${FILESDIR}"/${PN}-2.0-no-werror.patch -) - -src_compile() { - CC="$(tc-getCC)" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" emake -} - -src_install() { - dobin ${PN} - - einstalldocs -} diff --git a/app-forensics/sleuthkit/Manifest b/app-forensics/sleuthkit/Manifest index c2e114ddd8d1..caacb6c005bb 100644 --- a/app-forensics/sleuthkit/Manifest +++ b/app-forensics/sleuthkit/Manifest @@ -1,6 +1,7 @@ AUX sleuthkit-4.1.0-tools-shared-libs.patch 1678 BLAKE2B f60496480425fd78bc211a663be80db2472a9683f1ff76c747f8190d5544df532857f6e1fb4343d0405f8bf51aa7b7bf86ed55fffbeea0153341ce9f2dca077b SHA512 b559f669837194bed447ac269884ab50e6ea746aba2df799688964245c22814567871f12f96d43ba74016d5c448247b02bef5d7bdfd32fd782ef5e668686238e AUX sleuthkit-4.6.4-default-jar-location-fix.patch 1768 BLAKE2B d9a0675223506649a5db7aa4e0ef883ecea84c8484836d2020528696f13e14bbe9334c2967c7b698126fb1cedd6a6719fbbe3fb945b4ea9b89d643a61232d5e8 SHA512 acc076ca74d3e5d7c75425292730783801a7afe858ea119186229a319ba4fd2e076c1214daca3e4aa3d5a7717c5ed08a9ca0bf11bb4dc2a04d3aad190dbf57c6 DIST SparseBitSet-1.1.jar 23706 BLAKE2B 8623a723f11f97386a108c775fefddd324997b68bea7f7ade0581ec5800bfa8d32f699ab903ad66c631b7b5c69ba1ef377243653f5044f39234dac07543eb129 SHA512 cf75431c5f705961800ce5cbca2acb9b2459eaf98ec37b5ee21c5a90d204ffb466fa25457b0560fbb024489777efbea0276201024c7b1b2853124930ac490983 +DIST commons-validator-1.6.jar 186077 BLAKE2B 39080bebfde71d87847b65f212d47a51bab9567cb0aaf7122359a67a8eb817877a6cc80495a15aefb12936d0e36532ed771dc0a2dff8401fc301f658ed38ef88 SHA512 aded530d3b79ead6ba5c44668c6d6964d7721f9617249f6aaa1c8f558ad4b3d3c1b6d78b639a4cb8dd27a671879b662fdbba0502fd04e131f3286169507df30c DIST gson-2.8.5.jar 241622 BLAKE2B b13887177b5d5f2a11b2dde1fdbaa3a95b55bb7b5500624c7eb0745e861c897ed1e27868bad19d30a1670c90f3068a8fd40e1b81e5e25e96819fa5c371a5e1af SHA512 5dd7214c542a7b93aab3eab0ba13e4ac3d6ddb05c795fb6d3992e21925a98dce87cb186ac67b4d3ad146f96e14d38b3892837eca57a27b4e845aca6d4e4f708a DIST libewf-20130128.tar.gz 1978794 BLAKE2B e5d2bd8f4a8b878e13536b89b032d8cee6982272065b2bf325f8a811dff258264118a79496912377337ceb9ad630138b6bedb89e3c3be89a5f6a6fea85ab586b SHA512 94cdd0c3f0d8f535f3462c5adba266302f9b129abacda077ed429fa38af6862fca5a90ba2e606b78607b509769305cc6134c483c7033c20e226596cca2d42b90 DIST sleuthkit-4.5.0.tar.gz 8611141 BLAKE2B a1ae66bfcb74ce1fec24f80dfe60cd68f1de53119331c38848f7f82de8052eda49d78fdea49e42ada5843094939ef212dece42a5ceb85931a79e02adccda30e6 SHA512 911890cacca739f121681514197104cb2dc3bd219f3e068c4ce61264498c56989359976fc75172e1f456c94e4e25c6206413b0234c36e55736a577b8e664e4b3 @@ -9,6 +10,7 @@ DIST sleuthkit-4.6.6.tar.gz 8668433 BLAKE2B 49594dd329e7c67c473130659bbdab02d448 DIST sleuthkit-4.6.7.tar.gz 8672554 BLAKE2B def0bc3cd4c1ae1485efe683f581209b2c57bdcb1009bdd0b81cff284b6d3cb221a85ef12012a360bf2c07f84f12a6741ab2281cd0f51ecaff4685b84bf0ea1f SHA512 5b2000960a054fd947acb214532076a369d788914a8ff141c9a2d1b8a69e001c891b1e4b8dd40f94d96810a436e240e5a76e9f90ccab462888fad789c1181cc6 DIST sleuthkit-4.7.0.tar.gz 8715010 BLAKE2B cdbe4ff4d3a4f6606dec9fc7dc867c9186fc628cba02ea21240875b5da0b1c61c65f9d68b8059651026f06bfd2976bc10d3077cf765083ef97c631af85e27c62 SHA512 bd39101f89615485c17d72836689ee14cf1199c26f2a84a56c4a127d6ced1acf091ff8a4bd373acd970c8a88e3625edc3f6e7d028f292f74439590b11c15be80 DIST sleuthkit-4.8.0.tar.gz 10176958 BLAKE2B 65922a680e32effaedf669d076a242facbea98c6f53df841936bcd8b65a903309265c8a3e74bccd8e4d2694c8d10cb700079fc4499fcd82f02a27fedd38a446e SHA512 6dd225225c59013c128015f9b71b73bb82ba21887a695f8bc7325e1d11e2471d6e364077631b8d543c8c25ce9781470893f37998c38151347bb96d258f13ccc7 +DIST sleuthkit-4.9.0.tar.gz 3473764 BLAKE2B 3950e586595f53a81c845b3b1fbaf4939a84ee3d81e8141cabf41c9fbee1b1f5cf1b8bd6cab95b157d60364541736f750c8ada61c76da89e663721b9a67330ef SHA512 1db8b9f825aa551fe5bdf01285832b903fb4f2d6a8fd9a57a5cd5c9005dfdbec22d3dd49d394616d838e2a2111110018e787f2ed467a1c27a500fc75bed0dd0b DIST sleuthkit-libewf_64bit-20130416.tar.gz 23818247 BLAKE2B 23be933ed8a74e4834ee6571a28d81ba16e98e4e4e27b5b1b3b655d1d92a6eadcba35aadf96aa404e6e0a225b27f3f5daff2836879b87fe58440a3ad5645de44 SHA512 611cbb57de17600caee0330bbe9917c4481d7711a35dba8c072fd49cd3e1714e0a3ce30fd8fcac9981db848e80870bf5d215326c56808bb6f5b4c8dcc1e5a3c9 DIST sqlite-jdbc-3.25.2.jar 7064881 BLAKE2B 3917da6127137bab710a9e61f326f59320ce94654ebb8ae5e694b05aed6b9b1bd367ade2f08ce5bb52c3ac296992240ad949969f5eff712615d07a18588c6a17 SHA512 efd1ea26d7f4f9bc66bf0d5f80234a0c535829bd498e4c5a0cab42873b58ac69133497d8c45689a1d3a39e657a2d0474d6b930c7bc415dd623801ee4a7354ffb DIST sqlite-jdbc-3.8.11.jar 5131732 BLAKE2B 1a04fa9e9cb97fdddc19af2de9efa7b54c0b527642e6e325e31054e4e294e3bc6af00ea291087ed9dd26668d48dae356035fc85212c0eb81656550d552103ed0 SHA512 5f4705101992e8916e29742c560aef0d01eba9dc0d2d984b75a77e56be3c9fd20b284390fe8f9bb54bf9d1f8528c3413922684c446212ca8961ac731543fb179 @@ -18,4 +20,5 @@ EBUILD sleuthkit-4.6.6.ebuild 6879 BLAKE2B b39fd3fe82839ae23bb6ef43c13c3bc146b43 EBUILD sleuthkit-4.6.7.ebuild 6809 BLAKE2B ad038763c9c1c8b9eb5b96b2eac68a8ed0b6cc92179a7b980e091b2e91f8f83490279b5c314c9e03d60eb8e4465fd94b415f1df7d909349b8c63c463c07b071f SHA512 c9207604973caf8f8fd4ee99313bf38b6b7c67c707e266cad06888c66dd3657598f23f34c39142648d1d40fe83e7a87b7d23201e5d3f5e7bd7dcb51b14bca73b EBUILD sleuthkit-4.7.0.ebuild 7483 BLAKE2B 57b1094cf98aaac26a8f5ed1f455e9957b022cd782e9eecb440bef39205b5488f091367f2c4965be941b33741775c1e1376c9c44542ffc06240bfa66d8324a58 SHA512 781bef3bbdb7ec31e56170097836d9d0146c347f8c75de953f29a3a33f24c209dae38c09d5e76927113d5abfc2ef046cfed3b903e8218ec3d78d416a843ac5ee EBUILD sleuthkit-4.8.0.ebuild 7691 BLAKE2B c22eed13d47a957ad1f203da415f2a733c35127d8c90dd4ffafddce90ad70b8f208a7023816ee907129f7220df3f8a2e1fee3d21ab916129101b3f640ac8c866 SHA512 20b3482a5a5206671063db42fc2d2560e4aee91c02086128a22997cd1f15babbc43710ec1637bc8800b5e81f02452c97f1e67398df39d7a2632c14890dbc8983 +EBUILD sleuthkit-4.9.0.ebuild 8267 BLAKE2B eea48cda7dd8453bec8c0c9fb77ab00188aa66c0804a084a03d0f1db12d7eae13c05447cf0f18bb94b3e4586b3a4f3e8680d82025fdc8f22c90d40789981628f SHA512 a9d4148c744203cd5448e1f60d727c206b5cc388ecc330209b034eb78f9cd5cc6d1a7acabc96a3eb07fcd69128546fafe7aea86802852cb3b198b0c70f572280 MISC metadata.xml 607 BLAKE2B 2c651da1253ec986eb766b6949ea9a9059d76351081e805aba5f795971bb3b9368987cc9d39fc335c1e65c12de9347471686984e2753487cafab431488762064 SHA512 2dbce141f133a9172c6ba61924a9fac2674394096063b899be5a90111a9741789e2a09aa06cc49e17a253d088d20c1ddad1c748b6e09f650131ec0f91116ae08 diff --git a/app-forensics/sleuthkit/sleuthkit-4.9.0.ebuild b/app-forensics/sleuthkit/sleuthkit-4.9.0.ebuild new file mode 100644 index 000000000000..12d63a2f552c --- /dev/null +++ b/app-forensics/sleuthkit/sleuthkit-4.9.0.ebuild @@ -0,0 +1,303 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +JAVA_PKG_BSFIX_NAME="build.xml build-unix.xml" +inherit autotools java-pkg-opt-2 java-ant-2 + +DESCRIPTION="A collection of file system and media management forensic analysis tools" +HOMEPAGE="https://www.sleuthkit.org/sleuthkit/" +# TODO: sqlite-jdbc does not exist in the tree, we bundle it for now +# See: https://bugs.gentoo.org/690010 +# TODO: SparseBitSet does not exist in the tree, we bundle it for now +# See: https://bugs.gentoo.org/690012 +# TODO: Upstream uses a very specific version of libewf which is not in +# the tree anymore. So we statically compile and link to sleuthkit. +# Hopefully upstream will figure something out in the future. +# See: https://bugs.gentoo.org/689752 +# TODO: gson-2.8.5 does not exist in the tree. Building it seems to +# require Java 9. We have Java 11 in the tree but I don't see a +# way to use it as a gentoo-vm in order to build gson. Sleuthkit +# upstream still uses Java 8. +# See: https://bugs.gentoo.org/706274 +# TODO: commons-validator-1.6 does not exist in the tree. The latest version +# as of writing this ebuild is 1.4.1, for which the build fails. As +# per #711930, this is a security sensitive bump. We're gonna fetch +# the jar file here and file a bug request for a bump as well: +# https://bugs.gentoo.org/721020 +SRC_URI="https://github.com/${PN}/${PN}/releases/download/${P}/${P}.tar.gz + java? ( + https://repo1.maven.org/maven2/com/google/code/gson/gson/2.8.5/gson-2.8.5.jar + http://repo1.maven.org/maven2/org/xerial/sqlite-jdbc/3.25.2/sqlite-jdbc-3.25.2.jar + http://repo1.maven.org/maven2/com/zaxxer/SparseBitSet/1.1/SparseBitSet-1.1.jar + https://repo1.maven.org/maven2/commons-validator/commons-validator/1.6/commons-validator-1.6.jar + ) + ewf? ( https://github.com/sleuthkit/libewf_64bit/archive/VisualStudio_2010.tar.gz -> sleuthkit-libewf_64bit-20130416.tar.gz )" + +LICENSE="BSD CPL-1.0 GPL-2+ IBM java? ( Apache-2.0 )" +SLOT="0/13" # subslot = major soname version +KEYWORDS="~amd64 hppa ~ppc ~x86" +IUSE="aff doc ewf java postgres static-libs test +threads zlib" +RESTRICT="!test? ( test )" + +# +# Note: It is not possible to move the dep on dev-java/jdbc-postgresql +# inside a conditional postgres? block because java sources import +# org.postgres unconditionally as of writing this (version 4.6.4). The +# postgres USE flag will be used for the TSK postgresql support however. +# +DEPEND=" + dev-db/sqlite:3 + dev-lang/perl:* + aff? ( app-forensics/afflib ) + ewf? ( sys-libs/zlib ) + java? ( + >=dev-java/c3p0-0.9.5:0 + dev-java/commons-lang:3.1 + dev-java/guava:20 + >=dev-java/jdbc-postgresql-9.4:0 + >=dev-java/joda-time-2.4:0 + ) + postgres? ( dev-db/postgresql:= ) + zlib? ( sys-libs/zlib ) +" +# TODO: add support for not-in-tree libraries libvhdi and libvmdk +# libvhdi: https://github.com/libyal/libvhdi +# libvmdk: https://github.com/libyal/libvmdk +# DEPEND="${DEPEND} +# vhdi? ( dev-libs/libvhdi ) +# vmdk? ( dev-libs/libvmdk ) +# " + +RDEPEND="${DEPEND} + java? ( + || ( + virtual/jre:1.8 + virtual/jdk:1.8 + ) + ) +" +DEPEND="${DEPEND} + java? ( virtual/jdk:1.8 ) + doc? ( app-doc/doxygen ) + test? ( >=dev-util/cppunit-1.2.1 ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-4.1.0-tools-shared-libs.patch + "${FILESDIR}"/${PN}-4.6.4-default-jar-location-fix.patch +) + +src_unpack() { + local f + + unpack ${P}.tar.gz + + if use ewf; then + pushd "${T}" &>/dev/null || die + unpack sleuthkit-libewf_64bit-20130416.tar.gz + export TSK_LIBEWF_SRCDIR="${T}"/libewf_64bit-VisualStudio_2010 + popd &>/dev/null || die + fi + + # Copy the jar files that don't exist in the tree yet + if use java; then + TSK_JAR_DIR="${T}/lib" + mkdir "${TSK_JAR_DIR}" || die + for f in ${A}; do + if [[ ${f} =~ .jar$ ]]; then + cp "${DISTDIR}"/"${f}" "${TSK_JAR_DIR}" || die + fi + done + export TSK_JAR_DIR + fi +} + +tsk_prepare_libewf() { + # Inlining breaks the compilation, disable it + sed -e 's/LIBUNA_INLINE inline/LIBUNA_INLINE/' \ + -i "${TSK_LIBEWF_SRCDIR}"/libuna/libuna_inline.h || die +} + +src_prepare() { + use ewf && tsk_prepare_libewf + + # Do not pass '-Werror'. This is overkill for user builds. + sed -e '/AM_CXXFLAGS/ s/-Werror//g' \ + -i tsk/util/Makefile.am \ + -i tsk/pool/Makefile.am || die + + if use java; then + pushd "${S}"/bindings/java &>/dev/null || die + + # Prevent "make install" from installing + # jar files under /usr/share/java + # We'll use the java eclasses for this + # See: https://github.com/sleuthkit/sleuthkit/pull/1379 + sed -e '/^jar_DATA/ d;' -i Makefile.am || die + + java-pkg-opt-2_src_prepare + + popd &>/dev/null || die + fi + + # Override the doxygen output directories + if use doc; then + sed -e "/^OUTPUT_DIRECTORY/ s|=.*$|= ${T}/doc|" \ + -i tsk/docs/Doxyfile \ + -i bindings/java/doxygen/Doxyfile || die + fi + + # It's safe to call this even after java-pkg-opt-2_src_prepare + # because future calls to eapply_user do nothing and return 0 + default + + eautoreconf +} + +tsk_compile_libewf() { + local myeconfargs=( + --prefix=/ + --libdir=/lib + --enable-static + --disable-shared + --disable-winapi + --without-libbfio + --with-zlib + --without-bzip2 + --without-libhmac + --without-openssl + --without-libuuid + --without-libfuse + + --with-libcstring=no + --with-libcerror=no + --with-libcdata=no + --with-libclocale=no + --with-libcnotify=no + --with-libcsplit=no + --with-libuna=no + --with-libcfile=no + --with-libcpath=no + --with-libbfio=no + --with-libfcache=no + --with-libfvalue=no + + ) + # We want to contain our build flags + local CFLAGS="${CFLAGS}" + local LDFLAGS="${LDFLAGS}" + + pushd "${TSK_LIBEWF_SRCDIR}" &>/dev/null || die + + # Produce relocatable code + CFLAGS+=" -fPIC" + LDFLAGS+=" -fPIC" + econf "${myeconfargs[@]}" + + # Do not waste CPU cycles on building ewftools + sed -e '/ewftools/ d' -i Makefile || die + emake + + # Only install the headers and the library + emake -C libewf DESTDIR="${T}"/image install + emake -C include DESTDIR="${T}"/image install + find "${T}"/image -name '*.la' -delete || die + + popd &>/dev/null || die +} + +src_configure() { + local myeconfargs=( + --enable-offline="${TSK_JAR_DIR}" + $(use_enable java) + $(use_enable static-libs static) + $(use_enable threads multithreading) + $(use_with aff afflib) + $(use_with zlib) + ) + # Workaround the automagic detection of postgresql + local -x ac_cv_lib_pq_PQlibVersion="$(usex postgres)" + # TODO: add support for non-existing libraries libvhdi and libvmdk + # myeconfargs+=( + # $(use_with vhdi libvhdi) + # $(use_with vmdk libvmdk) + # ) + myeconfargs+=( + --without-libvhdi + --without-libvmdk + ) + + use ewf && tsk_compile_libewf + myeconfargs+=( $(use_with ewf libewf "${T}"/image) ) + + if use java; then + pushd "${S}"/bindings/java &>/dev/null || die + java-ant-2_src_configure + popd &>/dev/null || die + fi + + econf "${myeconfargs[@]}" +} + +src_compile() { + # Give it an existing bogus ivy home #672220 + local -x IVY_HOME="${T}" + + # Create symlinks of jars for the required dependencies + if use java; then + pushd "${S}"/bindings/java &>/dev/null || die + + java-pkg_jar-from --into "${TSK_JAR_DIR}" c3p0 + java-pkg_jar-from --into "${TSK_JAR_DIR}" commons-lang:3.1 + java-pkg_jar-from --into "${TSK_JAR_DIR}" guava:20 + java-pkg_jar-from --into "${TSK_JAR_DIR}" jdbc-postgresql + java-pkg_jar-from --into "${TSK_JAR_DIR}" joda-time + + popd &>/dev/null || die + fi + + # Create the doc output dirs if requested + if use doc; then + mkdir -p "${T}"/doc/{api-docs,jni-docs} || die + fi + + emake all $(usex doc api-docs "") +} + +src_install() { + local f + + if use java; then + pushd "${S}"/bindings/java &>/dev/null || die + + java-pkg_newjar "dist/${P}.jar" "${PN}.jar" + + # Install the bundled jar files + pushd "${TSK_JAR_DIR}" &>/dev/null || die + for f in *; do + # Skip the symlinks java-pkg_jar-from created + [[ -f ${f} ]] || continue + + # Strip the version numbers as per eclass recommendation + [[ ${f} =~ -([0-9]+\.)+jar$ ]] || continue + + java-pkg_newjar "${f}" "${f/${BASH_REMATCH[0]}/.jar}" + done + popd &>/dev/null || die + + popd &>/dev/null || die + fi + + default + + # It unconditionally builds both api and jni docs + # We install conditionally based on the provided use flags + if use doc; then + dodoc -r "${T}"/doc/api-docs + use java && dodoc -r "${T}"/doc/jni-docs + fi + + find "${D}" -name '*.la' -delete || die +} -- cgit v1.2.3