Commit Graph

324 Commits

Author SHA1 Message Date
Enno Rehling 8aec1c3e7f narrowing down the memory leak in jsonconf.test.c, by adding a similar
test to umlaut.test.c that exhibits the same behavior in a simpler
setting.
2016-08-31 17:37:07 +02:00
Enno Rehling afeea58999 fix include order 2016-08-30 21:22:32 +02:00
Enno Rehling a1d56acfe6 missing include, I believe 2016-08-30 20:15:28 +01:00
Enno Rehling 2d1a13a811 death to static caches! 2016-08-30 07:51:05 +01:00
Enno Rehling ef44a4534e add a test for copying resources message arguments.
my plan is to add a new argument type for arrays of resources with fewer allocations.
2016-08-29 17:31:09 +01:00
Enno Rehling 2c5063095d fixed: tests that try to create duplicate spells do not spam stderr. 2016-08-29 14:49:31 +01:00
Enno Rehling 2eb9b5c5ea delete dead code (dbrace) 2016-08-29 13:49:39 +01:00
Enno Rehling fd273848ae add an assert_alloc macro for allocations that cannot fail. 2016-08-29 09:26:49 +01:00
Enno Rehling 3e47f02fc2 coverity CID 141509 Unchecked return value from library
Conflicts:
	src/util/log.c
2016-08-13 10:18:42 +02:00
Enno Rehling 1735ec9eee coverity CID 141509 Unchecked return value from library 2016-08-09 18:28:15 +02:00
Enno Rehling 238a0e22f2 Merge branch 'test-alliance' of https://github.com/ennorehling/eressea into ennorehling-test-alliance
Conflicts:
	src/util/CMakeLists.txt
2016-08-08 08:46:09 +02:00
Enno Rehling 731238dfb1 support different editor codepages 2016-08-07 19:19:35 +02:00
Enno Rehling 5dcbb8a3f4 add a very simple tst for unicode comparisons 2016-08-07 10:28:09 +02:00
Enno Rehling 03a8b7383c fix log_rotate warnings (#529)
* ignore file-not-found errors when trying to rotate logs.
I suspect this is faster and safer than testing existence.

* block rename warnings, part deux
2016-08-05 20:15:05 +02:00
Enno Rehling 36e1060fc7 turn maxsize assert into an error
fix log rotation on windows
2016-07-31 18:48:27 +02:00
Enno Rehling eebdcf5d93 control log level from command line (with -l, like -v)
make newplayer.lua use the autoseed module, eliminate duplication
seeding new players is broken

Conflicts:
	src/gmtool.c
	src/main.c
	src/util/log.c
	src/util/log.h
2016-07-30 22:46:57 +02:00
Enno Rehling 87eafaeb99 remove all password hashing code 2016-07-13 19:10:22 +02:00
Enno Rehling 61acd40424 Merge pull request #512 from stm2/dragon_growl
Dragon growl
2016-06-11 23:16:23 +02:00
Steffen Mecke c5014fd766 integrated Ennos suggestions for dragon growls
Dragons now growl 20% more elegantly!
2016-06-11 13:47:38 +02:00
Enno Rehling 394621956d missing include, gcc fix 2016-06-07 21:51:56 +02:00
Enno Rehling 4414d7ef57 fix parse_token buffer overrun.
missing tests for parse_token.
this fixes http://bugs.eressea.de/view.php?id=2206
2016-06-07 21:47:09 +02:00
Enno Rehling 5535beed61 Merge branch 'master' into develop
Conflicts:
	src/buildno.h
	src/kernel/save.c
2016-05-29 11:13:19 +02:00
Enno Rehling 72d9f8adf0 For NMR purposes, count cursed factions like NPCs (i.e. not).
fix warnings in log tests
log whitespace cleanup
2016-05-29 10:58:49 +02:00
Enno Rehling 6148273d97 http://bugs.eressea.de/view.php?id=2210
fix deprecated attributes (at_key) yet again.
2016-05-28 20:26:59 +02:00
Enno Rehling cdd7606f02 fixing the password saving test. 2016-05-20 22:38:18 +02:00
Enno Rehling 80716d0787 fix key-upgrade function (coverity CID 102076)
fix MSVC warning (strncpy)
2016-05-02 19:22:57 +02:00
Enno Rehling c4d31d368e Merge branch 'master' into develop
Conflicts:
	src/buildno.h
	src/util/log.c
	src/util/log.h
2016-05-01 13:47:30 +02:00
Enno Rehling f24b1c1cdc fix multi-logging 2016-05-01 13:40:01 +02:00
Enno Rehling 41277ed5ee prove that logging is broken (new test segfaults) 2016-05-01 13:39:25 +02:00
Enno Rehling 1fa1693119 test multiple loggers 2016-05-01 13:36:00 +02:00
Enno Rehling 354e609929 catalog missing test files in CMakeLists.txt 2016-04-10 13:22:51 +02:00
Enno Rehling ae7d86dae0 just a little bit of refactoring 2016-03-11 21:36:10 +01:00
Enno Rehling cdf6d3992e memory leak: gamedata store was not released 2016-03-11 10:31:21 +01:00
Enno Rehling 10e67e2107 always free gamedata (this test uses two) 2016-03-11 09:45:39 +01:00
Enno Rehling 0f792e038f memory leaks
- must free gamedata after close
- clear spellbook and free it
2016-03-11 09:43:16 +01:00
Enno Rehling 7e98384542 fix some memory leaks
- t_free does not free
- free_factions frees the wrong list
- cleanup after attrib test
2016-03-10 13:27:08 +01:00
Enno Rehling 5fd4d5f30b Merge pull request #491 from ennorehling/feature/data_version
eliminate global.data_version
2016-02-25 16:01:44 +01:00
Enno Rehling e766b78345 Merge branch 'master' into develop 2016-02-25 11:06:15 +01:00
Enno Rehling bb03517619 disable most password formats 2016-02-25 10:46:46 +01:00
Enno Rehling 98856a8e4b CID 65491 double free 2016-02-24 11:54:24 +01:00
Enno Rehling d48d9a25e0 forward-declare struct gamedata 2016-02-24 11:54:23 +01:00
Enno Rehling 8a9d617aa3 read_referernce takes a gamedata object.
with all the trimmings that requires,
this is for github issue $479
2016-02-24 11:53:22 +01:00
Enno Rehling 2d30d4cce6 trigger_type.read gets a gamedata object
github issue #479
2016-02-24 11:46:54 +01:00
Enno Rehling 73a6b96bc7 remove global.data_version from border.read
remove global.encoding
github issue #479
2016-02-24 11:44:19 +01:00
Enno Rehling 7f6ced99b9 attrib.read gets a gamedata object (remove dependency on global.data_version) 2016-02-24 11:44:18 +01:00
Enno Rehling d1fdd9a89c fix failing storage test 2016-02-24 11:39:27 +01:00
Enno Rehling 45d09622cb missing include errno.h 2016-02-24 11:39:24 +01:00
Enno Rehling ec3839fb9f rewrite intermittent test to use memory stream. 2016-02-24 11:39:23 +01:00
Enno Rehling 6ca81646eb extract gamedata into a separate file. 2016-02-24 11:38:09 +01:00
Enno Rehling e6f3dc8b85 Merge branch 'master' into develop
Conflicts:
	scripts/run-turn.lua
	src/buildno.h
	src/kernel/group.c
	src/kernel/save.c
	src/kernel/save.test.c
	src/kernel/version.h
	src/util/password.c
	src/util/password.test.c
	tests/run-turn.sh
2016-02-23 10:47:33 +01:00
Enno Rehling 1e4b860a2e some trivial assertions 2016-02-22 20:48:24 +01:00
Enno Rehling 7fe07439f5 fix write_faction_reference, check for f->alive in other places
TODO:
1. I added some new TODOs
2. What happens to morale when region owners die?
3. Needs tests
2016-02-22 20:47:06 +01:00
Enno Rehling 9c10cc6b16 fix linux build 2016-02-13 13:56:49 +01:00
Enno Rehling 40530f2066 rename to password_encode, streamline tests 2016-02-12 08:33:08 +01:00
Enno Rehling c0c6d19be2 bcrypt hashes implementation, not activated yet. 2016-02-12 07:16:45 +01:00
Enno Rehling 652136ee46 unused variable, kill 2016-02-09 16:32:01 +01:00
Enno Rehling 0189111876 update key attribute api
prepare to replace at_key. do not return the internals. add basic test.
2016-02-09 06:43:19 +01:00
Enno Rehling abc3caa6d1 optimized storage of attribs.
save the hash instead of the name and save a few bytes.
2016-02-09 00:28:23 +01:00
Enno Rehling 32d43820c2 Merge remote-tracking branch 'upstream/develop' into develop 2016-02-06 23:23:26 +01:00
Enno Rehling 80eb22b1e4 Merge branch 'master' into develop
Conflicts:
	src/buildno.h
2016-02-06 23:19:49 +01:00
Enno Rehling 26a33e28ce Merge branch 'feature/apache-md5' of https://github.com/ennorehling/eressea into ennorehling-feature/apache-md5
Conflicts:
	src/util/password.c
	src/util/password.h
	src/util/password.test.c
2016-02-06 15:23:42 +01:00
Enno Rehling bee97c002c use apache implementation by default 2016-02-06 15:16:15 +01:00
Enno Rehling d2d50cb23f fix build, add test for new algorithm
Conflicts:
	src/util/password.test.c
2016-02-06 15:15:04 +01:00
Enno Rehling 4c46d9d0ef add the apache md5 implementation to valid password hash algorithms
Conflicts:
	src/util/password.c
	src/util/password.h
2016-02-06 15:14:23 +01:00
Enno Rehling 7b4b879cc1 quick addition to a_removeall
additional testing for attributes
2016-02-06 10:56:08 +01:00
Enno Rehling 8a3bb35987 eliminate global log_flags, revert the mode arguments for fopen.
turns out that text is default, and windows hates it if I open a binary file without 'b'
standardize on using join_path to create filenames
(use backslash on windows, even though fopen doesn't seem to care).
2016-02-05 23:10:05 +01:00
Enno Rehling d0f8723ffb refactoring: eliminate a_findc, and too much const-fuckery 2016-02-01 17:31:03 +01:00
Enno Rehling 217fbca656 missing include broke the gcc build 2016-01-31 21:39:28 +01:00
Enno Rehling 3e57b19d62 stop duplicate parsing of arguments 2016-01-31 21:36:01 +01:00
Enno Rehling 8f4e6475c7 complete redesign of the log library (almost finished?) 2016-01-31 19:54:49 +01:00
Enno Rehling 2b0a2750ba null-pointer check (coverity result) 2016-01-17 19:03:30 +01:00
Enno Rehling 0e30f392c4 Merge branch 'feature/crypt-passwords' of https://github.com/ennorehling/eressea.git 2016-01-15 08:54:56 +01:00
Enno Rehling 76475b9bf7 add a little extra randomness to the seed salt (still bad).
remove dead prototype code from faction.c
2016-01-15 08:01:12 +01:00
Enno Rehling 09a0e806bc gcc compilation fix 2016-01-14 17:29:20 +01:00
Enno Rehling 6c80bc52b5 generate a good-ish salt 2016-01-14 16:50:42 +01:00
Enno Rehling 8d05f4cc25 implement MD5 crypted passwords as default 2016-01-14 15:49:09 +01:00
Enno Rehling 3a8a05380b fix gcc compilation warnings 2016-01-13 16:19:59 +01:00
Enno Rehling c3da0cd42d as long as we use no encryption, all tests pass. 2016-01-13 16:16:02 +01:00
Enno Rehling 799514bf40 implement md5 password hashing (untested)
disable test for case-insensitive password test
fix faction/checkpasswd test
2016-01-13 14:41:09 +01:00
Enno Rehling b8a0c61fee Merge branch 'feature/crypt-passwords' of https://github.com/ennorehling/eressea.git 2016-01-13 12:37:12 +01:00
Enno Rehling f14ee2adaa include the password module in the list of unit tests 2016-01-13 12:37:07 +01:00
Enno Rehling 58b0ad19d0 NULL needs a platform-dependent include 2016-01-13 00:06:06 +01:00
Enno Rehling 54d25e91dd add a new password module
start adding password hashing logic (WIP)
does not yet pass all tests
2016-01-12 23:52:30 +01:00
Enno Rehling 5187788f3c pass the parent of an attribute into a_age and attrib_type::age 2015-12-16 22:18:44 +01:00
Steffen Mecke 703edb676c facility to inject a non-random random generator
This should be handy for writing tests that make use of randomization.
2015-12-08 17:57:23 +01:00
Enno Rehling 9b645bf46c issue #419, eliminate language_struct.h, make the struct module-private 2015-12-01 12:24:22 +01:00
Enno Rehling 5b9333f6d9 Merge branch 'release-3.7' into develop
Conflicts:
	src/buildno.h
	src/monsters.c
2015-11-23 17:12:48 +01:00
Enno Rehling f0a47321d6 reduce log spam 2015-11-21 21:49:33 +01:00
Enno Rehling 06f8ba9ee4 faster lookup for get_param with tries
eliminate unnecessary constatn from rand.c
2015-11-20 15:48:17 +01:00
Enno Rehling 40651d57cd 22583 Time of check time of use
avoid use of access()
2015-11-05 14:05:58 +01:00
Enno Rehling 58c1d83c9e CID 22491 FORWARD_NULL
github issue #352
fals positive, rewriting code to appease coverity
2015-11-05 11:14:53 +01:00
Enno Rehling 075de3c919 math is hard, typing is harder. bugfix. thank you, valgrind my friend. 2015-11-04 15:00:15 +01:00
Enno Rehling 67e2eafbcf add missing include (MSVC is not picky enough) 2015-11-04 14:55:13 +01:00
Enno Rehling eea0186601 22440 Unchecked return value from library
rewrite log rotation, check errors
2015-11-04 14:16:15 +01:00
Enno Rehling e6973ff394 CID 22445 Unchecked return value 2015-11-03 23:05:44 +01:00
Enno Rehling 4ee0f76927 CID 22570: Copy into fixed size buffer (STRING_OVERFLOW)
not only that, but strlcpy is the faster option here, too.
2015-10-30 10:57:52 +01:00
Enno Rehling d3f7bd7b10 CID 22597: va_start/va_end mismatch 2015-10-29 20:43:37 +01:00
Enno Rehling 78899ca801 coverity scan CID 22433: buffer not null terminated, prefer strlcpy over strncpy 2015-10-29 09:06:53 +01:00
Enno Rehling 04bf07a526 coverity scan (multiple CID) is confuced about a_remove, trying to help it. 2015-10-29 09:06:52 +01:00
Enno Rehling 0328e84c6c coverity scan CID 22555: sizeof not portable
wrong type in sizeof (pointer instead of struct)
2015-10-29 09:06:43 +01:00
Enno Rehling f80f37def3 eliminate static variable leak and allocation from base36 2015-10-27 12:48:34 +01:00
Enno Rehling 144aeb23ac leaks: call cleanup, free triggers 2015-10-14 20:29:07 +02:00
Enno Rehling 5f9c2e13a8 I hate umlaut.c, it's basically magic, and the magic doesn't work right (it leaks memory from line 158) 2015-10-14 13:56:19 +02:00
Enno Rehling cd9cb24b48 extend test_umlaut a bit, which doesn't trigger issue #316 2015-10-14 13:42:12 +02:00
Enno Rehling 78a8795305 there is a bug in umlaut.c, adding a FIXME.
this happens during test_umlaut, and valgrind detects it.
2015-10-14 13:33:10 +02:00
Enno Rehling 6de8e4466a stop memory leak from function registry. 2015-10-13 21:26:48 +02:00
Enno Rehling 422476409c eliminate memory leak from locales 2015-10-13 20:58:03 +02:00
Enno Rehling 5f7b9129bc Merge branch 'master' into develop
Conflicts:
	tests/runtests.bat
2015-09-12 22:47:33 +02:00
Enno Rehling 06a04d0e20 fix logging for sp_igjarjuk, temporarily set log-levels for the game to error|warn|info
remove some code that accesses `verbosity` variable (todo: hide it more, fix logging)
2015-09-12 19:48:03 +02:00
Enno Rehling d15d0cc0f4 remove unused xml_i function 2015-09-11 11:08:10 +02:00
Enno Rehling 9bb2a625f9 fix xmlreader bug introduced by last commit (xpath->node not initialized) 2015-09-11 09:10:00 +02:00
Enno Rehling b631f539ce simplify atoi36, it does not need to eat whitespace 2015-09-05 18:18:22 +02:00
Enno Rehling 5fc1587879 age_unit accidentally returned AT_AGE_REMOVE (caused by a recent change to curse_age) 2015-08-25 22:50:58 +02:00
Enno Rehling 5bc4f7f144 add some simple tests for writing travelthru information to the report, fix test that sets errno as a side effect (thanks, Microsoft!) 2015-08-18 17:08:02 +02:00
Enno Rehling c8cbeea660 STRLCPY macro redefinition and fixes for gcc. work for monkeys. 2015-08-17 22:48:21 +02:00
Enno Rehling 7e64f3177d refactoring: rewrite tests to use test_find_messagetype instead of assert_messages.
tests: add cleanup of message_types to reduce global state.
2015-08-17 19:36:28 +02:00
Enno Rehling 1806030baa new all-in-one strlcpy and wrptr function 2015-08-17 19:28:05 +02:00
Enno Rehling dcececf4fa Debug: move errno testing closer to the report-writing, so we know which report caused the error.
Fix: wrptr gets the result from _snprintf, which is int, not size_t.
2015-08-17 16:17:08 +02:00
Enno Rehling 420574c7e4 add unit-test for casting spells, fix spell-casting (was looking for thisorder), all E3 tests pass again 2015-08-05 10:25:25 +02:00
Enno Rehling 009993f2f4 address some PVS comments 2015-07-21 09:01:11 +02:00
Enno Rehling 6ea859ecea ignore PVS=-Studio files 2015-07-12 13:15:10 +02:00
Enno Rehling 7087c0e0ab Update to latest submodules, fix iniparser and critbit.
I did this before, must have lost it in the merge. Crazy.
2015-07-12 10:38:01 +02:00
Enno Rehling b8e17839a7 eliminate some spammy warnings. 2015-07-08 18:27:27 +02:00
Enno Rehling 76a9dd6741 Merge remote-tracking branch 'upstream/develop' into develop 2015-07-07 15:34:42 +02:00
Enno Rehling e25d3c8ed1 Fix a bug reporting DETROY messages to the correct unit.
Add missing not-null assertions before accessing function parameters.
Eliminate all of the PVS-Studio warnings.
2015-07-07 00:49:12 +02:00
Enno Rehling 05ec74f9ec annotate with finds from PVS Studio trial static analysis 2015-07-06 21:31:27 +02:00
Enno Rehling ef4052b0f6 the outcome of a casual static analysis session. 2015-07-06 19:53:09 +02:00
Enno Rehling c42227c9e4 Bug 1838: Giftwolken dauern nur eine Woche, erscheinen nicht im Report.
https://bugs.eressea.de/view.php?id=1838
- fix dc_age return value
- speed up curse reporting a little
2015-07-03 17:36:37 +02:00
Enno Rehling 3ba2b3d4d7 indentation fixes (tab->spaces) 2015-06-26 14:31:21 +02:00
Enno Rehling 9b7a4e813b functional test for forced leave configuration.
functional test for forced leave after combat.
functional test for MAKE TEMP.
error handling for Lua function building.create().
reduce some errors to warnings.
initialize race.battle_flags correctly (when not created through XML).
re-initialize processor in case config has changed.
handle missing translation of combat status, with error message.
2015-06-19 13:17:01 +02:00
Enno Rehling a5f056b4b6 re-enable an assertion that was commented out.
fix a size_t range warning, change error code for wrptr().
2015-05-24 14:01:37 +02:00
Enno Rehling 0ea0936156 Use default locale when missing a translation, only warn once.
https://bugs.eressea.de/view.php?id=2103
remove locale::fallback, it was never set anyhow (also, we have no good fallbacks).
2015-05-22 14:14:02 +02:00
Enno Rehling 72e041dd32 fix missing include 2015-05-18 09:04:05 +02:00
Enno Rehling 8e5fc28bfc refactoring more of goodies.h into strings.h 2015-05-18 08:59:38 +02:00
Enno Rehling 70eda58604 Merge branch 'develop' of github.com:eressea/server into develop
Conflicts:
	src/CMakeLists.txt
2015-05-17 17:52:41 +02:00
Enno Rehling 177d1c701f Merge branch 'lua-test-framework' of https://github.com/badgerman/eressea into badgerman-lua-test-framework
Conflicts:
	src/kernel/region.c
	src/util/log.h
2015-05-17 17:39:10 +02:00
Enno Rehling c4d1482250 signed/unsigned comparisons (VC warning only) 2015-05-15 20:56:43 +02:00
Enno Rehling 9d7a9cbe6a add missing new header 2015-05-15 20:47:27 +02:00
Enno Rehling df325b243a enable stricter conversion checking for gcc < 4.9, fix code 2015-05-15 20:35:36 +02:00
Enno Rehling 1dc516ab50 reduce warning level on oldterrain() log, warn from caller (json_report) instead. 2015-05-15 07:59:06 +02:00
Enno Rehling d2af6a2f88 fix -Wconversion in spells.c 2015-05-15 07:07:21 +02:00
Enno Rehling fe29e29c31 fix -Wconversion for move.c 2015-05-15 06:43:47 +02:00
Enno Rehling e2421b3fe7 make lua errors show up on stderr, always (log_fatal).
this could have been prettier. log.c could use some loving.
2015-02-23 02:47:08 +01:00
Enno Rehling f9bced467d fix a crash in rename_cmd 2015-02-08 10:33:45 +01:00
Enno Rehling 5e0c934c6f indentation fixes for this new file 2015-01-30 22:30:11 +01:00
Enno Rehling df5ab02689 Merge branch 'peasantgrowth_acceleration' of https://github.com/stm2/server into stm2-peasantgrowth_acceleration 2015-01-30 22:11:10 +01:00
Enno Rehling c54cbfd472 fix copyright notice 2015-01-30 22:10:29 +01:00
Enno Rehling abca25d1d5 fix indentation in every file
fix copyright date
remove vi ts=2 code
remove a couple of superfluous extern declarations
2015-01-30 20:37:14 +01:00
Steffen Mecke a97b211e70 bit of testing, code improvements, formatting 2015-01-30 18:25:56 +01:00
Enno Rehling 9f542e081b fix last commit, broke the gcc travis build. 2015-01-15 17:17:32 +01:00