Commit Graph

75 Commits

Author SHA1 Message Date
Brian Cox 8cdca39103 Prefer strl* string functions over strn* ones 2017-03-25 15:06:22 -07:00
Brian Cox 5c1cfe4702 Use unique_ptr instead of auto_ptr where available (and define a macro to pick which one to use); fix a few other remaining warnings. 2017-03-22 20:00:08 -07:00
Brian Cox 6ea9c0b92e fix debug builds in debug.cpp 2017-03-17 18:38:56 -07:00
Brian Cox 2b067176ad Fix some clang extended warnings: non-virtual-dtor, shadow, unneeded-internal-declaration 2017-03-17 00:04:21 -07:00
Brian Cox 900fad8ca4 Remove some dead code, including objectpool & Unicode-only utf8 stuff 2017-03-15 20:58:49 -07:00
Brian Cox 1fb5f332e6 For clarity, remove a bunch of IS_UNIX ifdefs, since configure.ac always defines IS_UNIX to 1 no matter the OS. 2017-03-15 20:31:38 -07:00
Brian Cox b2f21c3d55 Assorted bounds checks (via flawfinder) 2017-03-15 19:06:52 -07:00
Brian Cox d6df22f9dc Fix various Clang static analyzer quibbles 2017-02-20 23:21:00 -08:00
brc0x1 86baf94ddf Fix man page handling in make install 2017-02-20 17:03:24 -08:00
Brian Cox f52ddb9c6f Add an include to fix Alpine Linux build issue (issue #15) 2017-02-20 14:50:25 -08:00
Brian Cox 005be38165 Fix permissions on a couple of cpp files (issue #14) 2017-02-20 14:49:52 -08:00
Brian Cox f9aa5de896 Add ability to optionally *not* resolve uid/gid to name, to accomodate the Linux static binary vs. nsswitch name resolution issue; add RESOLVE_IDS_TO_NAMES config option to control this feature; avoid redundant lstats when turning IDs into names, since the lstat is to fetch the ID we already have; remove a bunch of unused code in UnixFSServices 2016-11-24 17:26:02 -08:00
Brian Cox aaa132d211 Support paths w/ leading double slash (per an obscure corner of the POSIX spec) on platforms that implement it, currently just Cygwin. (Cygwin uses this for UNC paths.) 2016-08-07 23:24:15 -07:00
Brian Cox 33e8f4d76b Remove static direct i/o buffer & blocksize cfg option. 2016-07-21 20:22:52 -07:00
Brian Cox ad85c15f07 Initial tweaks for RTEMS support, though linking is still a work in progress. 2016-07-10 22:33:23 -07:00
Brian Cox 2d49bf6630 Report an error if requested feature isn't available on current platform -- SMTP mail, syslog, direct i/o hashing. And limit direct i/o to Linux for now, since elsewhere it either doesn't work the way we need it to (e.g. OSX, FreeBSD) or hasn't been tested adequately. 2016-07-09 10:49:14 -07:00
Brian Cox b410bdf87f Merge branch 'master' of https://github.com/brc0x1/tripwire-open-source 2016-07-03 14:30:53 -07:00
Brian Cox c4440c5d29 Make direct i/o option work properly (ie don't use fread(), and use full block size on EOF), & rename it to HASH_DIRECT_IO for clarity 2016-07-03 14:29:05 -07:00
Brian Cox 62590f5a49 Improve defining NSIG when it isn't already defined 2016-07-01 19:53:14 -07:00
Brian Cox 0d8bdcc4d8 Support native-style paths on DOS/DJGPP 2016-06-29 21:02:12 -07:00
Brian Cox fb1f751488 Build fixes for Android including platform macro & missing mblen() 2016-06-28 22:16:31 -07:00
Brian Cox 207189dafd Update platform macros in platform.h, and use them instead of compiler-defined OS macros. 2016-06-23 23:12:22 -07:00
Brian Cox 9be78c1d1c More dead code removal, this time Win32-isms in logging & sockets. Also start cleaning up OS macros in platform.h. 2016-06-23 14:51:17 -07:00
Brian Cox 78fdac5efc Tweak include paths so we're buildable outside of source tree. 2016-06-20 19:49:21 -07:00
Brian Cox a2f9fa4e06 Remove old+unused MAPI stuff 2016-06-19 15:37:44 -07:00
Brian Cox eec52685c4 Delete a few unused source files (package.cpp, userstring.*, fcopropsetimpl.*) to avoid confusion. 2016-06-19 15:13:05 -07:00
Brian Cox f41e3e06b6 Use the right 'ar' when cross compiling, instead of always wanting to use default system 'ar'. This happened because autoconf doesn't have a builtin AC_PROG_AR macro, so we have to provide our own. 2016-06-17 20:33:10 -07:00
Brian Cox 0ee24bc84b New platform: MS-DOS/FreeDOS with DJGPP (i586-pc-msdosdjgpp). Detect & handle if sys/socket.h isn't present, which is default for DJGPP. Also handle slightly different struct stat, file type macros, absence of Posix signals. 2016-06-17 19:57:06 -07:00
Brian Cox 03622ed0f0 Specify headers in makefiles, so 'make dist' knows to include them 2016-06-14 01:15:37 -07:00
Brian Cox 7ad2b52d14 Remove UCS2-related dead code, in the name of clarity 2016-06-13 20:11:13 -07:00
Brian Cox 33f695c435 Use O_NOATIME on directories too, where available, to avoid bumping dir access times during scans. 2016-06-12 18:57:23 -07:00
Brian Cox bb863522f2 [AROS] hide interactive passphrases; delete temp files after use; validate temp dir even if config value isn't set. 2016-06-12 17:27:14 -07:00
Brian Cox e42921d04a Caching & direct i/o stuff for HP-UX, via VX_xxx ioctls. 2016-06-09 18:35:40 -07:00
Brian Cox 3ce7d71749 Enable use of O_NOATIME on GNU/Hurd, via the _GNU_SOURCE macro. 2016-06-07 22:58:19 -07:00
Brian Cox 48a4392343 Update buildsys to automake 1.15 and fix resulting warnings. This involved an autoreconf -if, and then reverting config.guess and config.sub since they're actually newer than the ones automake wants to install, and they've been customized a bit to detect e.g. MidnightBSD 2016-06-06 19:51:38 -07:00
Brian Cox acddeb3ae2 Don't use broken mblen() on AROS 2016-06-04 00:15:29 -07:00
Brian Cox 43d2ff1a04 Display multibyte characters properly, and accept them in interactive db update. 2016-06-01 22:08:25 -07:00
Brian Cox 4563812467 Define ICONV_SOURCE_TYPE properly for Minix 2016-05-29 15:25:06 -07:00
Brian Cox 48801a41a7 Add direct i/o for Solaris, via the directio() syscall. 2016-05-25 23:42:26 -07:00
Brian Cox 64a5bab856 Use both POSIX_FADV_SEQUENTIAL & POSIX_FADV_NOREUSE when scanning (if available) since they aren't mutually exclusive. 2016-05-25 12:14:55 -07:00
Brian Cox dbb7a57cdc Merge branch 'master' of https://github.com/brc0x1/tripwire-open-source 2016-05-24 18:50:12 -07:00
Brian Cox 0082db13fa Use O_NOATIME while scanning (if available) to avoid updating file access times. 2016-05-24 18:50:00 -07:00
Brian Cox 5ffab7f278 Only posix_fadvise() on close if stream is nonnull, since fileno() segfaults (on Linux) if you try that. 2016-05-09 10:34:53 -07:00
Brian Cox ec9b4317ca Fix & enable iconv() character conversion, instead of relying on cGoodEnoughConverter everywhere. 2016-05-06 18:47:56 -07:00
Brian Cox b543a36d89 Use posix_fadvise() maybe-correctly; only use O_DIRECT for hashing, if requested; better exception handling in fspropcalc & fsdatasourceiter to prevent errors scanning individual objects from blowing up the whole init/check. 2016-05-06 11:24:24 -07:00
Brian Cox eaca9fcedf Support posix_fadvise() where available; optionally enable O_DIRECT/F_NOCACHE if DIRECT_IO=true in tw.cfg; fix internal naming of update 'secure mode' flag for clarity. 2016-05-05 00:19:56 -07:00
Brian Cox 773e3b5487 Fix a couple of 'misleading indentation' warnings exposed by the big tab->spaces commit yesterday. 2016-04-23 12:34:04 -07:00
Brian Cox 728795af3d Replace tabs with 4 spaces in all remaining OST code, since this inconsistency can now result in 'misleading indentation' warnings in GCC 6.0+. 2016-04-23 00:33:17 -07:00
Brian Cox a488e1bfec Another batch of warning fixes, including several for gcc -Wparentheses 2016-04-21 00:48:28 -07:00
Brian Cox 0cb48a433a Squash more warnings, including char* / string constant ones in msystem & policy parser. 2016-04-21 00:16:14 -07:00