Commit graph

  • bd785a9309
    Some initial work for the upcoming TKL 'e'/'E'/TKL_EXCEPT type. Bram Matthys 2019-06-16 08:42:41 +02:00
  • 18ae7b8925
    Document *ALL* functions in m_tkl and remove efuncs that are no longer needed: tkl_expire and tkl_check_expire, which are now self-contained in the m_tkl module. Bram Matthys 2019-06-16 08:35:56 +02:00
  • b102e79f8e
    Use check_banned() from s_bsd too, less duplicate code. Bram Matthys 2019-06-15 18:44:33 +02:00
  • 24726d533d
    Make the require authentication { } block use the TKL layer. Remove CONF_BAN_UNAUTHENTICATED. Bram Matthys 2019-06-15 18:31:06 +02:00
  • 8c2ce9a7d5
    [tkldb] skip if (tkl->flags & TKL_FLAG_CONFIG) Bram Matthys 2019-06-15 18:27:43 +02:00
  • 8e6302d003
    Rip out CONF_BAN_NICK, CONF_BAN_IP, CONF_BAN_USER, now that they are moved to the TKL layer. Bram Matthys 2019-06-15 18:18:19 +02:00
  • 97fc19591c
    Add support for tkline->flag TKL_FLAG_CONFIG: item from configuration file that cannot be deleted via commands such as /KLINE -... And transform some ban XX entries to use the TKL system TODO: test & rip out the old stuff Bram Matthys 2019-06-15 18:08:43 +02:00
  • a40cd9fae4
    Rename dospamfilter() to run_spamfilter(), which is more meaningful. Bram Matthys 2019-06-15 17:43:34 +02:00
  • 630ab8f869
    Fix some indentation Bram Matthys 2019-06-15 17:37:02 +02:00
  • 060502aedd
    Remove unused variables and some shadow... Bram Matthys 2019-06-15 17:27:54 +02:00
  • 4f4cda7f7d
    Cleanup part 2 of m_tkl. Splitting up in m_tkl_add / m_tkl_del and various whitespace / indenting fixes. Bram Matthys 2019-06-15 17:18:48 +02:00
  • 876fda63ec
    Export tkl_type_string via efuncs (actually, the name may change...) Bram Matthys 2019-06-15 17:06:41 +02:00
  • 7542cdeaca
    Cleanup of m_tkl part 1. New tkl_chartotype (the reverse of tkl_typetochar). Move stripcrlf() to core instead of at 3 places, rename calls of iCstrip() to that. Hopefully I didn't break anything.. :D Bram Matthys 2019-06-15 16:56:34 +02:00
  • 41ba282ed6
    Obey MAXMODEPARA under all circumstances. Bram Matthys 2019-06-15 15:17:24 +02:00
  • ca9b04a0fa
    Module API: EventAddEx() -> EventAdd() Bram Matthys 2019-06-12 19:09:33 +02:00
  • e3013ae067
    Commit current work of history API and channel history mode (+H count:time) Bram Matthys 2019-06-12 18:58:30 +02:00
  • ed4bc8e8c5
    Prevent running ./Config as root and print out a clear instruction. Bram Matthys 2019-06-12 13:16:58 +02:00
  • bfebfa1f00
    Slightly better wording Bram Matthys 2019-06-12 13:11:21 +02:00
  • 3b7e959dd7
    Merge branch 'unreal50' of github.com:syzop/unrealircd-next into unreal50 Bram Matthys 2019-06-12 13:09:40 +02:00
  • 148dfc53a4
    Make clear the user should not compile or run as root. Seems some people miss this when they only read the README and not the installation instructions from the wiki ( https://www.unrealircd.org/docs/Installing_from_source ) Bram Matthys 2019-06-12 13:08:22 +02:00
  • bb4bd4dffc [tkldb] Forgot a check for local Q-Lines, also bail early when reading local spamfilters/Q-Lines GottemHams 2019-06-11 15:54:53 +02:00
  • 66be5a2ca6
    Re-indent the FLAGS_* stuff in include/struct.h And remove FLAGS_PING which was unused. Bram Matthys 2019-06-10 18:50:05 +02:00
  • fce0253b5a
    Remove unused FLAGS_CHKACCESS / SetAccess / ClearAccess. Also, DoAccess() was already commented out in UnrealIRCd 4 or something. This results in an empty finish_auth() function but that should be OK, as ident checking takes place before parsing any other input IIRC. Bram Matthys 2019-06-10 18:39:03 +02:00
  • e5e260eaa1
    Remove FLAGS_NONL / NoNewLine(), which isn't used since 4.0.0 or so. And add a FIXME, or at least a TODO-investigate-this item ;) Bram Matthys 2019-06-10 18:33:46 +02:00
  • ac19f91eb8
    Turns out it's not that easy.. ;) Bram Matthys 2019-06-08 16:49:46 +02:00
  • 573a601127
    Nothing important, just a silly m_dummy :D Bram Matthys 2019-06-08 14:37:22 +02:00
  • 12dbbca15e
    Rip out support for changing offsets via TSCTL and tune file. Use NTP!! Adjustments via TSCTL are never accurate enough. Bram Matthys 2019-06-08 09:26:55 +02:00
  • 3749f8d674
    Remove timesync support. Use your OS time synchronization instead! Timesync was previously disabled by default in March 2018. Bram Matthys 2019-06-08 09:11:46 +02:00
  • d796247ddf
    Re-indent Bram Matthys 2019-06-07 15:08:23 +02:00
  • a2ee5d67f3
    Update a few hooks to include mtags, more will follow later. This fixes inconsistent mtags accross server links with delayjoin. Bram Matthys 2019-06-07 15:05:10 +02:00
  • 1f2bb0d89b
    Delayjoin: if kicking invisible user we used to clear the invisibility status of the victim (JOIN+KICK). That seems unnecessary to me, since there is already code in place to handle this -- hopefully it works too. Bram Matthys 2019-06-07 14:41:01 +02:00
  • 61b4a6ea29
    Add mtags in non-chan PRIVMSG. Remove sendto_message_one since you can just use sendto_prefix_one. Actually it was only used at 1 place (m_message). Bram Matthys 2019-06-07 14:25:28 +02:00
  • 0e68265e12
    Remove sock.h old compatibility code. Shouldn't be needed anymore. (This provided FD_ZERO and such if the OS/libc did not provide it) Bram Matthys 2019-06-07 12:42:28 +02:00
  • 5ad0278f9e
    No longer check for big enough FD_SETSIZE. We all use poll/kqueue/epoll/etc now. Bram Matthys 2019-06-07 12:39:39 +02:00
  • de89de9558
    Fix MODE not sending message tags across servers Bram Matthys 2019-06-07 12:34:22 +02:00
  • 13f3356963
    Merge branch 'unreal50' of github.com:syzop/unrealircd-next into unreal50 Bram Matthys 2019-06-07 12:24:41 +02:00
  • adf56ad8fd
    Re-enable FreeBSD workaround for mysterious test failures. Bram Matthys 2019-06-07 12:24:25 +02:00
  • d292d2ee9c Forgot to change a couple X:Line things to X-Line GottemHams 2019-06-05 19:27:00 +02:00
  • 8846506292 Might be a good idea to also skip local Q:Lines (ban nick {} blocks) :D GottemHams 2019-06-05 19:19:03 +02:00
  • e423f69082
    [tkldb] Add some extra check for trailing DB data. If everything goes correctly then after reading all TKL entries we should be at the end of file. If there is still data after that, something went wrong... quite wrong.. :D Bram Matthys 2019-06-05 09:39:59 +02:00
  • 673779eab9
    Write string lengths as 16-bit rather than 64-bit: saves about 34% space of the database file, with possible some small speed improvement as well. Bram Matthys 2019-06-05 09:33:04 +02:00
  • ec5811dc3b
    [tkldb] Save every 5 minutes now that writing is fast enough :) And mention the benchmark figures in the .c file. Bram Matthys 2019-06-05 09:01:04 +02:00
  • eaa1b213b9
    [tkldb] Use buffered I/O. Writing the DB is now 29 times faster. Saving 100k zlines now takes 72ms instead of 2100ms Loading 100k zlines now takes 510ms instead of 1300ms Bram Matthys 2019-06-05 08:53:30 +02:00
  • 1f6bb6d3cc
    Some benchmarking Bram Matthys 2019-06-05 08:45:48 +02:00
  • 498f728cbb
    [tkldb] If DB is corrupt then rename to .corrupt and start a new one. This, rather than having the module not loaded at all, which could mean, especially if missed the warning on boot, that you run for weeks or months without having your TKL's stored, which would be a shame ;) Also a failure to rename() is not fatal, as it likely means that we don't have permissions, in such a case you will see a repeated error every X minutes due to the write, which is good. Bram Matthys 2019-06-05 08:22:22 +02:00
  • 21f24cc596
    Fix for NICK+USER order. Should be correct? Should check identd.. Bram Matthys 2019-06-04 20:05:27 +02:00
  • 5f8dd67051
    if( -> if ( :D [skip ci] Bram Matthys 2019-06-04 20:04:22 +02:00
  • e9da2eb3cb
    [tkldb] "skipped".. why? "expired" :D And don't bother users too much about this, unless in DEBUGMODE. Bram Matthys 2019-06-04 20:00:15 +02:00
  • 6b1af917fc
    Do it the other way around than previous commit. Force 32 bit type. So it's compatible with machines where int is 64bit (ILP64), mostly for the future I guess. Bram Matthys 2019-06-04 19:52:59 +02:00
  • 628f367849
    tkldb: version field should also be forced 64 bit or you'll have the same problem with porting 32 to 64 again... Bram Matthys 2019-06-04 19:34:37 +02:00
  • 52b39acf78 Fixed return values/checks for helper functions/macros, return empty string instead of NULL when reading zero length strings, discard tkl->subtype and store spamf as a char instead of unsigned int, remove rewriting after DB read, also renamed TKLines/TKLs/etc to *-Lines for uniformity with other code GottemHams 2019-06-03 20:45:56 +02:00
  • bb91ac1c56
    Update this a bit. Will take a look again later. [skip ci] Bram Matthys 2019-06-03 18:48:18 +02:00
  • 9f64711113
    Remove FreeBSD 12 workaround Bram Matthys 2019-06-03 15:17:02 +02:00
  • 597186d9c3
    BuildBot: Fix run-tests on FreeBSD 12 Bram Matthys 2019-06-03 14:44:35 +02:00
  • 253df2c8db
    BuildBot: -j3 -> -j4 [skip ci] Bram Matthys 2019-06-03 13:31:45 +02:00
  • 55757a5605
    Remove references to old test framework. [skip ci] Bram Matthys 2019-06-03 13:30:15 +02:00
  • 73cea64c9f
    Updates for IRC test framework: changed port to 5901 of irc1 Bram Matthys 2019-06-03 13:03:43 +02:00
  • bc8e4a5c47
    Updates for new IRC test framework Bram Matthys 2019-06-03 12:59:22 +02:00
  • 321cf75fb7
    Resolve resolve merge conflict :D [skip ci] Bram Matthys 2019-06-01 08:57:19 +02:00
  • 13f96b0a57
    Small adjustments to tkldb: convert some to safefree(), get rid of sizeof(char) - which is guaranteed to be 1 by C99 and on any decent compiler and always use MyMallocEx even when it's not necessary :D. Bram Matthys 2019-06-01 08:53:17 +02:00
  • e78e303314
    Re-indent tkldb, sorry could not resist :D Bram Matthys 2019-06-01 08:46:22 +02:00
  • 2556ae9d70
    [tkldb] Allow boot without existing database. Change return values to 1/0 (true/false). Bram Matthys 2019-06-01 08:39:32 +02:00
  • b8e65a2f7f
    Buildbot: *NIX build test: add -DNOREMOVETMP to make valgrind do a better job at printing module information (I hope). Bram Matthys 2019-06-01 08:24:31 +02:00
  • 7c32e4d63f
    Windows build: fix makefile.win32 Bram Matthys 2019-06-01 08:23:33 +02:00
  • 4dbe8a8238 Resolve merge conflict :D GottemHams 2019-05-31 22:39:27 +02:00
  • c697e2ea99 Renamed m_storetkl to just tkldb GottemHams 2019-05-31 22:25:18 +02:00
  • bf6f885b98 Storetkl now also supports the hashed *@IP Z:Line thingy, also added errno calls to all error output GottemHams 2019-05-31 22:06:59 +02:00
  • c43a1b15af Store TS types in a uint64_t before DB writing to prepare the module for a Year 2038 fix, also upgraded num/rewrite ints to 64 bit since they *might* be as big as tklcount GottemHams 2019-05-31 21:23:19 +02:00
  • c6389270f9
    Remove a few useless #define's (And final test of buildbot today :D) Bram Matthys 2019-05-30 21:02:27 +02:00
  • c3add3b41c
    Windows build: Randomly remove some slashes, for no reason. [skip ci] Bram Matthys 2019-05-30 20:12:25 +02:00
  • 7d7d736df3
    More windows build fixes [skip ci] Bram Matthys 2019-05-30 20:03:50 +02:00
  • 858b63e1d5
    Windows: remove .CHANGES.NEW [skip ci] Bram Matthys 2019-05-30 19:56:54 +02:00
  • 9af24a56f9
    Buildbot: makefile.win32 updates [skip ci] Bram Matthys 2019-05-30 19:42:17 +02:00
  • 57e06a7070
    Windows: add api-mtag to makefile.win32 Bram Matthys 2019-05-30 19:36:15 +02:00
  • f0a773ee59
    Windows: Add conf_preprocessor to makefile.win32 Bram Matthys 2019-05-30 19:33:21 +02:00
  • a2a7acc4bd
    Buildbot: more windows updates Bram Matthys 2019-05-30 19:30:20 +02:00
  • e8e113a8c0
    Buildbot: ............................. Bram Matthys 2019-05-30 19:23:15 +02:00
  • 120ec5cea3
    ............. Bram Matthys 2019-05-30 19:22:14 +02:00
  • d02b4de5d3
    Buildbot: updates for windows Bram Matthys 2019-05-30 19:20:15 +02:00
  • 2682d7bc6d
    Buildbot: Updates for windows Bram Matthys 2019-05-30 19:08:33 +02:00
  • 9530006e70
    BB: Terminate unrealircd at end of test (otherwise it may hang buildbot) Bram Matthys 2019-05-30 16:48:05 +02:00
  • 03fbc35fb7
    Buildbot: Run cipherscan not on FreeBSD for now, so we can test the rest. Bram Matthys 2019-05-30 16:14:06 +02:00
  • 3f723323d0
    BuildBot: Use gmake on FreeBSD and temporarily disable select-config. Bram Matthys 2019-05-30 16:08:54 +02:00
  • ecac3f9d4a
    Mention U5 in ./Config -quick restriction Bram Matthys 2019-05-30 08:52:08 +02:00
  • 1b0a7cb9b8
    Fix build tests due to previous change. Bram Matthys 2019-05-30 08:51:05 +02:00
  • 195cd17d02
    Rename LIBDIR to PRIVATELIBDIR in config.settings to avoid confusion. Bram Matthys 2019-05-30 08:46:13 +02:00
  • 4004152a7a Updated m_storetkl's descriptions for added clarity GottemHams 2019-05-28 21:44:27 +02:00
  • 0f97c03487 Probably a good idea to add storetkl stuff to Windows makefile too huh GottemHams 2019-05-28 21:38:38 +02:00
  • d8ff67d088 Added m_storetkl to modules.default.conf GottemHams 2019-05-28 21:35:37 +02:00
  • 35600fdfa0 Updated storetkl: write DB on a timer instead of hooking TKL_ADD/DEL, better DB format for improved compatibility with future Unreal versions, configurable .db path, support for softbans, write DB to a tempfile first to prevent corruption of existing DB, also applied some misc optimisations/portability improvements GottemHams 2019-05-28 21:34:11 +02:00
  • 6cf386ee87
    ... Bram Matthys 2019-05-27 19:22:04 +02:00
  • 9e87f92c64
    Fix small memory leak in SJOIN. Bram Matthys 2019-05-27 19:20:25 +02:00
  • f046482761
    Freeing memory is usually a good idea (duh) Bram Matthys 2019-05-27 07:43:44 +02:00
  • 55a183bde4
    Add "PROTOCTL MTAGS" to indicate message-tags & big buffer support. This so we can link to UnrealIRCd 4.x.... Bram Matthys 2019-05-26 13:56:09 +02:00
  • 57fd5f4f2b
    Add HOOKTYPE_IS_HANDSHAKE_FINISHED: if a module returns 0 then register_user() will not be called. This is used, for example, by m_cap when the CAP LS handshake is still in progress. Modules can add their own requirements as they see fit. Note that, as for (CAP) functionality, this adds nothing new, it just implements it in a cleaner way, rather than all over the place, like in UnrealIRCd 4.x. Bram Matthys 2019-05-26 12:07:44 +02:00
  • dde1cf3194
    Fix some mtag FIXME's. Bram Matthys 2019-05-26 11:45:58 +02:00
  • 622cb43a48
    Manual audit of exit_client() done, for mtags. Bram Matthys 2019-05-26 11:36:40 +02:00
  • 61b15d9f4d
    Mass update (automatic) of exit_client(). Next step is manual audit... Bram Matthys 2019-05-26 10:45:54 +02:00
  • be4ef2e7e3
    Add message tags support in exit_client(). Yay.. another API change! Bram Matthys 2019-05-26 10:36:39 +02:00
  • 9f54a19801
    New unified function for common: sendto_local_common_channels() and make this support mtags so it now works for NICK, ACCOUNT, AWAY. Still to do: exit client for QUIT. Bram Matthys 2019-05-26 10:08:02 +02:00