Commit Graph

278 Commits

Author SHA1 Message Date
Brian Cox 769874d34b Path fixes for FreeDOS/DJGPP 2017-09-13 21:35:56 -07:00
Brian Cox 4abec97664 Last tweak to dbupdate harness test needed help 2017-09-10 21:01:46 -07:00
Brian Cox 6cf3936319 Test-harness tweaks for DragonflyBSD, where we expect a few fewer changes (access/modify times). Tweak one test expected values to pass, skip 2 more with notes saying they need refactoring. 2017-09-10 20:29:53 -07:00
Brian Cox ee8c63b8f9 In inode count test, update the list of platforms that don't do hardlinks 2017-09-10 12:59:21 -07:00
Brian Cox 541c951715 Fix a typo in readonly test 2017-09-10 01:22:31 -07:00
Brian Cox 8d8652fe93 More platform tweaks for harness tests, this time TODO-ing out a couple of tests for Hurd since it's expected to get fewer violations 2017-09-10 01:16:17 -07:00
Brian Cox 5bea3693b4 One more harness test tweak, avoiding access time violations in the readonly test 2017-09-10 00:44:17 -07:00
Brian Cox 15b7d18104 Couple more test-harness platform tweaks 2017-09-10 00:21:44 -07:00
Brian Cox 2a278ad29b Make 'syslog not supported' a warning vs a fatal error if someone tries to use it on syslog-less platforms; clean up unit & harness tests & handle some per-platform quirks 2017-09-09 23:26:45 -07:00
Brian Cox 9b194b5122 Include OS name in test-harness output 2017-09-09 20:24:17 -07:00
Brian Cox 6f13e00055 Tweak siggen test-harness test for portability, since a few outlier impls of ps (e.g. Haiku) don't support -ef args 2017-09-08 23:00:36 -07:00
Brian Cox 041ca7f3b3 Tweak a couple of tests that generally fail due to environmental issues (locale configuration, local IP <--> hostname mapping, current username) so they're marked as skipped instead of failed when it looks like a configuration problem. 2017-09-08 18:04:35 -07:00
Brian Cox e7b00507e9 Skip a TWLocale test on Cygwin since it doesn't like the 'C' locale 2017-09-08 16:51:49 -07:00
Brian Cox b648b2493f Fix various unit tests that didn't test anything, or needed cleanup; disable some cTWLocale methods that were unused outside of their own unit tests. 2017-09-08 16:31:36 -07:00
Brian Cox f05b85726e Merge branch 'dev/next' of https://github.com/Tripwire/tripwire-open-source into dev/next 2017-09-08 11:59:59 -07:00
Brian Cox 2a3d69e8c9 Fixes for Cygwin: Use local swab() impl, and tweak policy update test-harness test path handling -- it was prepending a path variable that's always empty, but we were also using absolute paths so we didn't notice elsewhere, though we were using paths of the form //foo/bar/baz. Leading double slashes are significant on Cygwin since they're used to denote UNC paths, so tests failed there & uncovered this problem 2017-09-08 11:58:19 -07:00
Brian Cox 140ed7c26c Build fix for AROS (wasn't pulling in errno.h in fsprocalc.cpp, which is now needed for ERANGE symlink check) 2017-09-07 20:42:00 -07:00
Brian Cox 078bf28164 A few little tweaks for SkyOS unit tests & configure robustitude (i.e. relying on stdint.h (if present) to tell us which intrinsic type is 64 bits) 2017-09-07 01:00:58 -07:00
Brian Cox 03bca0ebd4 Modify GetSymLinkStr for platforms that return ERANGE when buffer is too small, like HP_UX; tweak field splitting in crc32 test-harness test, for platforms that separate cksum fields with tabs, like Solaris 10 & maybe earlier. 2017-09-06 12:25:52 -07:00
Brian Cox a56bae5397 Only use /dev/urandom if --enable-urandom configure arg is used, since current impl falls over on HP-UX & Solaris 10 SPARC & possibly elsewhere 2017-09-05 19:14:27 -07:00
Brian Cox e74d916a09 Rename misspelled crytpo_t.cpp -> crypto_t.cpp 2017-09-04 15:37:07 -07:00
Brian Cox a47236408c Add tests to check MD5 & SHA1 impls against RFC test cases 2017-09-04 13:31:44 -07:00
Brian Cox 25ddcc0ca6 Break some big unit tests into smaller ones 2017-09-04 11:47:35 -07:00
Brian Cox e453a81c87 Tweak unit tests that didn't invoke TEST() at all; add operator== to cFCOSpecAttr & cFSPropDisplayer for the sake of unit testing. 2017-09-04 01:35:27 -07:00
Brian Cox 8c73f1cf3b Rework unit test framework (such as it is) to refer to tests by name & not numeric id. Mark tests as skipped if they don't make any TEST assertions or are skipped explicitly 2017-09-03 20:28:24 -07:00
Brian Cox 0d21e71407 Skip crc32 test if 'cksum' is not present for comparison (e.g. SkyOS) 2017-09-03 00:12:54 -07:00
Brian Cox 736a761bff Fix a couple of twtest-only valgrind issues 2017-09-01 19:43:05 -07:00
Brian Cox 7a262bf1c1 Fix AROS build issue that crept in somehow 2017-09-01 17:13:57 -07:00
Brian Cox ce25569eea Use 0 instead of CHILD_ERROR_NATIVE since the latter only exists in Perl >= 5.14.2, and doesn't seem to have any obvious advantages. 2017-09-01 13:48:57 -07:00
Brian Cox 0886ea31be Tweak a couple of test-harness tests to exclude variable properties like access time, since tests aren't interested in that behavior. 2017-08-31 21:44:24 -07:00
Brian Cox 5184fe01c4 Customize 'make clean' to also remove test data dirs and gcov files 2017-08-31 19:51:50 -07:00
Brian Cox 7fe1e4f79a Detect support for doors & event ports in a proper autoconf way. 2017-08-31 18:50:02 -07:00
Brian Cox 7310422053 Clean up iCodeConverter singleton on exit 2017-08-28 20:08:38 -07:00
Brian Cox 8bb3669cf7 Enable SYSLOGREPORTING for test-harness tests, so that syslog code gets exercised in testing. 2017-08-27 23:46:31 -07:00
Brian Cox d724c07873 Use a static cFSPropDisplayer instead of creating a fresh one each time someone asks. Addresses a valgrind leak that only manifests in interactive db update mode. 2017-08-27 22:58:58 -07:00
Brian Cox b3b74fd76e Delete cParseRules when we're done with them. I think this is the last real valgrind issue. 2017-08-27 17:22:31 -07:00
Brian Cox 3481d2622a Fix another leak (via valgrind), this time in cCryptoArchive 2017-08-26 16:10:12 -07:00
brc0x1 79933005b7 Switch to rbegin() since std::string::back() is a C++11-ism 2017-08-25 08:12:20 -07:00
Brian Cox 236d67b941 Sort out a valgrind issue w/ handling TEMPDIRECTORY paths. Clean up formatting in twcmdline's FillOutConfigInfo(). 2017-08-26 10:07:27 -07:00
brc0x1 92580983ec Remove more leakage in cHashTable & policy parser 2017-08-25 04:43:52 -07:00
Brian Cox 265bc4701e Turn #ifdef YACC_WINDOWS to #if 0 to make sure untested & unused code stays unused. 2017-08-25 21:37:15 -07:00
Brian Cox dbc48d0326 Merge branch 'dev/next' of https://github.com/Tripwire/tripwire-open-source into dev/next 2017-08-25 19:02:30 -07:00
Brian Cox f4263cf2b8 Comment out some #line directives in twparser, since they confuse gcov 2017-08-25 19:00:39 -07:00
Brian Cox 55020401d9 Fix a few simple leaks inside twtest; fix some file permissions that got set wrong in last commit 2017-08-25 18:28:09 -07:00
Brian Cox b3bcdbbcd9 Fix low hanging fruit items from valgrind memcheck results, mostly array deletes 2017-08-25 12:36:15 -07:00
brc0x1 8cec86246f Fix build issues cross compiling for RISC OS (haven't verified we actually work yet, though); fix a couple of build issues left over from recent test-dir changes to twtest 2017-08-24 19:20:40 -07:00
Brian Cox bd3b071e1b ifdef out some unused methods in our HAVAL impl. 2017-08-24 00:57:11 -07:00
Brian Cox d0b9b03561 Also tweak unit tests that dropped files in working directory to use our test data dir instead 2017-08-23 23:54:18 -07:00
Brian Cox f5e76827be Robustify symlink reading in cFSPropCalc, & add a unit test for it. Tweak other unit tests to use a test directory we control, rather than dumping stuff in /tmp 2017-08-23 23:36:21 -07:00
Brian Cox fafa681bce Fix dbupdate secure-mode test, add a case for updating db twice w/ same report, clean up twtools methods a bit more. 2017-08-23 17:58:12 -07:00
Brian Cox 01e25eb493 Remove a couple of unused FSServices methods 2017-08-19 20:38:57 -07:00
Brian Cox 97a2d44481 Disable incomplete impl for long property names, but don't remove it in case we want to finish it someday. This ensures that '&unimplemented' is not recognized as a valid property name in policy files. 2017-08-19 20:13:07 -07:00
Brian Cox 6582fb77fb Remove a bunch of unused methods in cTWUtil 2017-08-19 19:54:35 -07:00
Brian Cox dc943880de Add more bad policy test cases; split good & bad policies into separate tests 2017-08-17 21:26:51 -07:00
Brian Cox b4e530b40f Clean up create-policy acceptance test; add a dir for bad policy text files (expected to fail) & add the first one, which is just a zero-byte file. 2017-08-17 00:17:28 -07:00
Brian Cox 72f042644b Add test-harness test for policy creation; among other things it tries the policy files in src/parser/testfiles, plus some other test cases. Updated one of the test files so user doesn't need to hand edit it before use. 2017-08-09 23:55:30 -07:00
Brian Cox 85fcbb1371 Add IC test cases for named severity, ignored props, & email reporting 2017-08-09 19:39:03 -07:00
Brian Cox 4cdb384445 gcov revealed that a few unit tests weren't actually being run, so fixing those, & tweak exception handling in other tests to be more uniform (since we catch everything at the test harness level now) 2017-08-06 18:55:52 -07:00
Brian Cox f02e2c10b5 Add new test-harness tests to exercise various IC mode options, plus tripwire help & version modes 2017-08-05 18:05:21 -07:00
Brian Cox db60f15f23 Fix misspelling of 'UNKNOWN' in a constant name; add a missing bracket in twprint print-db mode help 2017-08-04 23:14:54 -07:00
Brian Cox 121ccea9b5 Add a siggen test-harness test to cover various options that aren't covered elsewhere. Like the twadmin & twprint tests added in the last commit, this was motivated by gcov results showing that a 'make check' was missing a bunch of code paths, particularly around command line args and error handling. 2017-08-04 00:16:43 -07:00
Brian Cox a6c796a501 Add new twadmin & twprint test-harness tests, to exercise modes, options & errors that aren't covered elsewhere. Update twtools module with additional methods these new tests need. 2017-08-03 23:35:53 -07:00
Brian Cox d8e323e186 Rename 2038 epoch check to something more accurate & less alarming than 'TimeBombExploded' (sheesh), and only bother with it if time_t is 32 bits. 2017-07-31 18:49:36 -07:00
Brian Cox 24dba1b374 Remove or disable a little dead code uncovered by gcov 2017-07-28 20:15:50 -07:00
Brian Cox 148a5e38d4 A bit more urandom cleanup 2017-07-19 23:02:13 -07:00
Brian Cox 5757a53d61 Simplify urandom usage, & keep device open between uses 2017-07-17 22:35:17 -07:00
Brian Cox 60fede7678 Tweak device random stuff for Linux 2017-07-15 22:59:50 -07:00
Brian Cox eec812814a Use RNG device(s) if available (experimental) 2017-07-15 18:10:42 -07:00
Brian Cox b26422fa07 If an exception throws out of an IC, catch it & add to the report file instead of just falling over. 2017-07-09 10:10:16 -07:00
Brian Cox 2fc9faaee1 remove a backup file I hadn't meant to commit 2017-07-09 00:11:05 -07:00
Brian Cox 180bf761e0 Buildsys files regenerated with automake 1.15.1, with no exciting new features 2017-07-08 22:18:04 -07:00
Brian Cox dbc00a2ed4 Fix logic error in cFCOPropVector::isExtended(), which only manifests with large prop vectors we currently won't see in the wild. Exposed by intermittently failing test in fcopropvector_t.cpp circa line 132, which now passes reliably on platforms where it used to fail. 2017-07-08 19:51:23 -07:00
Brian Cox ad9a79a84a Add '.' to test-harness @INC path, since latest Perl 5 apparently now excludes it by default. 2017-07-08 19:47:49 -07:00
Brian Cox 65d97e2892 Rework fileutil_t test to not require /etc/hosts; tweak twutil_t test to work properly if run as root 2017-07-08 16:29:34 -07:00
Brian Cox 122010acc2 In examine-encryption mode, say 'Unknown' & exit w/ nonzero value if can't find a keyfile that goes with the file being examined 2017-07-08 15:18:58 -07:00
Brian Cox 4176c1db12 Add a new test-harness test to exercise twadmin change-passphrases mode 2017-06-28 20:05:52 -07:00
Brian Cox 73a8f0e59b Add a test-harness that does a happy path thru the twadmin file crypto modes. 2017-06-25 14:48:56 -07:00
Brian Cox 60b24b0201 Add a test-harness test for policy updates, & tidy up some existing test code 2017-06-24 10:57:18 -07:00
Brian Cox dae64c48ed Update copyright years 2017-04-25 18:31:11 -07:00
Brian Cox b1f0ed4b71 Add an email reporting test, which runs tripwire --test mode & verifies the required mail header fields look right. This test only uses the sendmail (pipe) mailmethod, since I'm not sure how to automate SMTP testing in our Perl framework. 2017-04-24 22:44:03 -07:00
Brian Cox cdfb2096c5 Fixes for the Perl acceptance test suite: Enhance reporting to show total/pass/fail/skip tests, fix DB Update tests that were failing silently, fix 'hash check' tests that were passing incorrectly even if md5sum wasn't present, add a sha1 hash test. 2017-04-23 22:52:32 -07:00
Brian Cox 47c9861baa Clean up various unit test TODOs, including re-enabling some test code that had been ifdef'd out; improve reporting of failures and how many actual tests were run 2017-04-19 23:37:35 -07:00
Brian Cox 5a425591ce Redo hierdatabase & dbdatasource unit tests so they do something useful; add sanity checks to cBlockRecordFile::FindRoomForData and cDbDataSourceIter::SetFCOData, the need for these was exposed by the new tests. Also update debug-only DB Explore mode with a few more commands 2017-04-19 20:20:08 -07:00
Brian Cox 8ba032c424 Change uses of _DEBUG and _DEBUG_DB defines to be DEBUG, since that's the only symbol that gets defined by configuring with --enable-debug. 2017-04-12 21:44:51 -07:00
Brian Cox a1e614d694 Remove irritating 'eof:' comments, and some ancient dead code in stringutil.cpp 2017-04-11 21:29:32 -07:00
Brian Cox e653e83058 Expanded exception handling for file operations during a check, plus some refactoring & cleanup 2017-04-11 21:23:25 -07:00
Brian Cox 65e0a0d664 Tweak unit test error reporting slightly 2017-03-31 23:08:44 -07:00
Brian Cox 7b86cdd134 Unit test build fix, make sure <typeinfo> is included 2017-03-31 15:09:43 -07:00
Brian Cox a67d3c3a86 Clean up installer (remove unneeded checks, better editor & pager detection & path handling); update twtest to count failures instead of exiting on first one. 2017-03-30 22:22:52 -07:00
Brian Cox 9e1b078aac Fix setting of IS_xxx OS macros for various platforms 2017-03-29 00:13:22 -07:00
Brian Cox 4af1375fb1 More unit test cleanup, + fix a warning in msystem le_set() 2017-03-27 22:45:55 -07:00
Brian Cox 7d66656c10 Build fix for tests, since you don't always have an ifstream/ofstream constructor that takes a string reference 2017-03-27 16:43:00 -07:00
Brian Cox 2c03fdf878 Enable/repair more unit tests, and undo an earlier change to hex_to_char() that was causing test failures 2017-03-27 00:50:33 -07:00
Brian Cox cdb7310dae Enable & (at least partly) fix charutil, displayencoder, & policyparser tests, which weren't running until now. 2017-03-26 20:16:37 -07:00
Brian Cox be0b374cad Tweak le_set() for clarity in msystem.cpp 2017-03-26 00:28:04 -07:00
Brian Cox c931a13ecd Disable unused tss::mbsdec() 2017-03-26 00:06:09 -07:00
Brian Cox da8748b6f2 fix file mode printing 2017-03-25 23:41:37 -07:00
Brian Cox 76868c5ccc Resolve assorted GCC 7 warnings 2017-03-25 19:40:54 -07:00
Brian Cox e04b97132b Ok, actually don't use strl* string functions since they're a BSD-ism & Linux doesn't have them. 2017-03-25 16:02:51 -07:00
Brian Cox 7ce1df0a04 Remove the few remaining exception specifications, since they're deprecated in C++11 & cause warnings in GCC 7 2017-03-25 15:31:47 -07:00