Commit graph

  • 5a387f9c0b
    Rename extban.flag to extban.letter. TODO: Should probably do this for umode/cmode as well ;) Bram Matthys 2021-08-14 09:07:22 +0200
  • f23546b27c
    More conv_param() changes, the +3 rule changed, and matches the rest. The .conv_param() now receives the ban minus the ~own-extban. And it should also return the part minus the ~own-extban. Bram Matthys 2021-08-14 08:57:33 +0200
  • 5269b647d5
    Round three of extban API overhaul, this changes extban->conv_param(). More changes will follow related to that... Bram Matthys 2021-08-13 17:59:45 +0200
  • 163eaa432c
    ExtBans API: Now we can get rid of the +3 everywhere in is_ok(). When extban->is_ok() is called the banstr now no longer points to "~x:something" but to "something". Just like we did for extban->is_banned(). Again, need this for later too... Bram Matthys 2021-08-13 16:39:03 +0200
  • b5d948c09c
    Round two of extban API overhaul, this changes extban->is_ok() Also cleanup big blob op duplicate code in +beI handling in MODE. Bram Matthys 2021-08-13 16:02:34 +0200
  • 98291c9f69
    ExtBans API: Now we can get rid of the +3 everywhere in is_banned(). When extban->is_banned() is called the banstr now no longer points to "~x:something" but to "something". This will be more useful later... Bram Matthys 2021-08-13 14:37:21 +0200
  • bff6fdde6f
    Start of extban API recode. I created the current API in 2003 and.. well.. let's hope I have gained some good insights since then.. :D Bram Matthys 2021-08-13 14:13:37 +0200
  • bdef6a2af2
    Move stuff from AllowClient() to register_user(), since it deals with setting hostname and such, which does not belong there (well, mostly) Bram Matthys 2021-08-13 13:10:23 +0200
  • a0a95f6cee
    Get rid of unnecessary check_init() stuff (and the hook) Bram Matthys 2021-08-13 13:06:35 +0200
  • da3bdc0437
    AllowClient() doesn't need nor use the 2nd argument. Bram Matthys 2021-08-13 12:27:23 +0200
  • 68b6f62d88
    Convert DNS names to lowercase Bram Matthys 2021-08-13 12:23:44 +0200
  • eb171c8e22
    Add strtolower(). Note: we already hade strtolower_safe(). Bram Matthys 2021-08-13 12:22:49 +0200
  • 9310fd3b4b
    Move check for valid hostname out of register_user(), we already have that in dns.c. Also remove verify_hostname() from dns.c and integrate it in valid_host() which now takes a second argument named 'strict'. Call valid_host() with strict set to 1 if the hostname should be checked to be a valid DNS hostname, eg the host may not contain stuff like ':' or '/'. Use 0 otherwise for the loose check, eg if you are not sure if the passed host is an IP address or a host, or if it is for a vhost. Bram Matthys 2021-08-13 12:17:24 +0200
  • 7c250188a5
    Some moving around Bram Matthys 2021-08-13 12:05:37 +0200
  • 72d4973840
    Cleanup code that sets client->user->username based on ident config and result Bram Matthys 2021-08-13 11:59:54 +0200
  • 1b3376d091
    More cleanups in register_user(): Move the username checks to valid_username() Bram Matthys 2021-08-13 11:54:43 +0200
  • 3a9976ef53
    Get rid of ERR_HOSTILENAME which clutters the code too much and no other IRCd seems to be using it. Bram Matthys 2021-08-13 11:33:34 +0200
  • 3f8538f767
    Split off part of register_user() to new function welcome_user() Bram Matthys 2021-08-13 11:30:53 +0200
  • 199d7d8e65
    cmd_uid: fix setting IP on the wrong client (server instead of user, oops...) Bram Matthys 2021-08-13 11:11:05 +0200
  • fa875d6fd4
    Cleanup: register_user() now takes only 1 argument (client) instead of 5 arguments. The last 3 were always NULL after the remote/local split from a few commits ago. And nick and username were useless as well as client->name and client->user->username were always already set. Bram Matthys 2021-08-13 11:06:30 +0200
  • 77a7b3aca2
    More cleanups in nick.c: integrate register_user_remote() in cmd_uid() Bram Matthys 2021-08-13 10:57:54 +0200
  • 33db820355
    More nick.c (register user) cleanups.. Bram Matthys 2021-08-13 10:49:38 +0200
  • 75a7d171b9
    Test buildbot Bram Matthys 2021-08-13 10:40:53 +0200
  • 8ca735a217
    Split remote register_user() off into register_user_remote(), which may or may not disappear in a future cleanup. Bram Matthys 2021-08-13 10:23:50 +0200
  • f90c7a7991
    Move IP validation from register_user() to cmd_uid(). This also makes it so the decoded IP is passed to register_user(), eg "1.2.3.4" instead of binary base64'd stuff. Bram Matthys 2021-08-12 20:09:24 +0200
  • 5eb2ac7624
    Fix OperOverride message Bram Matthys 2021-08-12 17:56:23 +0200
  • 9a2e8613ae
    For remotely received log messages (via SLOG) show the original server name as sender in the NOTICE, just like we used to do in the past. Bram Matthys 2021-08-12 17:07:12 +0200
  • 0e5f5f7374
    Add conf/snomasks.default.conf Bram Matthys 2021-08-12 16:58:54 +0200
  • 9f54c9b0d3
    Don't send SAPART in SAJOIN (:D) Bram Matthys 2021-08-12 16:51:18 +0200
  • 152d24bd73
    Don't check for "chathistory" capability yet (only "draft/chathistory") as this casuses BUG_CLIENTCAPABILITYBIT_UNKNOWN_TOKEN to be triggered. Bram Matthys 2021-08-12 16:33:31 +0200
  • 60d970d9af
    And another fix for previous case. Bram Matthys 2021-08-12 16:16:09 +0200
  • 5cc2ef7fba
    Newlog: free arguments, even if unreal_log_recursion_trap is hit This was triggered for example when sending logs to remote servers. Bram Matthys 2021-08-12 16:11:02 +0200
  • 16527eb6a4
    Back out previous change, bad idea :D Bram Matthys 2021-08-12 16:03:20 +0200
  • 507f43fc74
    Set me.uplink to &me. Not entirely sure if this is what we want. Without this, I think otherwise we need too many checks everywhere for the IsMe() case. And this behavior matches me.direction which also points to &me. Then again, will doing it this way cause issues? We will see... Bram Matthys 2021-08-12 15:56:05 +0200
  • bb4d77b5d0
    Fix crash in link-security unreal_log() call.. Interesting... this mistake is easy to make with multiline. Bram Matthys 2021-08-12 15:43:26 +0200
  • cc6d1eaf36
    Don't crash on bad loglevel/subsystem/event_id but log it instead. Bram Matthys 2021-08-12 15:43:03 +0200
  • 689c089a41
    Allow dashes in subsystem (eg "link-security") Bram Matthys 2021-08-12 15:30:50 +0200
  • 445b47391f
    Do an #undef on LOG_DEBUG, LOG_INFO, etc.. so they cannot be confused anymore with the ULOG_DEBUG, ULOG_INFO, etc levels. Bram Matthys 2021-08-12 15:27:27 +0200
  • 579988e07e
    ULOG_INFO, not LOG_INFO, strikes again! Bram Matthys 2021-08-12 15:23:07 +0200
  • b48d7f8003
    Fix for vhost checking code in cmd_uid, which didn't take into account '*' (no vhost set) Bram Matthys 2021-08-12 15:19:59 +0200
  • 7f55159f77
    Fix memory leak in new log code Bram Matthys 2021-08-12 15:18:18 +0200
  • 8d72aaa0ad
    Checkout branch 'unreal60' from unrealircd-tests Bram Matthys 2021-08-12 15:16:37 +0200
  • 562ed345be
    Update unrealircd-tests repo URL, temporarily used during early U6 development. Bram Matthys 2021-08-12 15:08:19 +0200
  • 01753c67cd
    Validate hostname and vhost in UID command. And some very minor cleanups. Bram Matthys 2021-08-12 09:12:41 +0200
  • 3a752a60fa
    Fix a remaining instance where client->local->fake_lag was touched directly, should use add_fake_lag(client, msec) instead. Bram Matthys 2021-08-12 08:56:46 +0200
  • be6928df78
    Some cleanups in nick.c Bram Matthys 2021-08-12 08:55:46 +0200
  • d9c940f65d
    Update client->flags inheritance code in register_user(). Hopefully correct... if this or ulines inheritance break you know who did it ;) Bram Matthys 2021-08-12 08:38:14 +0200
  • f9086f700e
    Newlog: nick.c Bram Matthys 2021-08-12 08:37:54 +0200
  • f84dd51172
    Newlog: link-security, mkpasswd, mode Bram Matthys 2021-08-11 21:08:49 +0200
  • 7a4509b289
    Newlog: "New record on this server: $num_users connections" And also make this print the number of users and not (both) users+servers which is generally a metric nobody is interested in and only causes confusion when you get a message about a record of 30 and there are only 28 clients connected. Bram Matthys 2021-08-11 20:55:42 +0200
  • 2c374395aa
    Newlog: Use _DENIED instead of _REJECTED everywhere to be consistent, eg LINK_REJECTED_SID_COLLISION -> LINK_DENIED_SID_COLLISION since 15+ other ones also start with LINK_DENIED... Expand it to other areas as well eg antirandom. Bram Matthys 2021-08-11 20:48:07 +0200
  • 720cd84ab2
    Newlog: convert sendto_realops() to unreal_log() in 9 files. Bram Matthys 2021-08-11 20:47:18 +0200
  • a94017c731
    Remove sendto_ops_and_log(), use unreal_log() instead! Bram Matthys 2021-08-11 19:10:30 +0200
  • edfd0d434f
    Newlog: convert remaining sendto_ops_and_log() Bram Matthys 2021-08-11 19:09:07 +0200
  • ccfad0eed0
    Enable high CPU usage detection, not sure yet for production, but at least for U6 development. Bram Matthys 2021-08-11 19:08:46 +0200
  • 609a6600aa
    Remove ircd_log(), use unreal_log() instead! Bram Matthys 2021-08-11 18:01:00 +0200
  • 4968bf84fe
    Newlog: convert those in include/*.h too Bram Matthys 2021-08-11 17:59:40 +0200
  • 4198b380f4
    Newlog: convert the last ones to ircd_log Bram Matthys 2021-08-11 17:55:15 +0200
  • 8d2f20ef41
    Newlog: debug.c, match.c, module.c, random.c and then for api-*.c log out of space in all circumstances. Bram Matthys 2021-08-11 17:45:01 +0200
  • ca3c91ca17
    Newlog: channel.c, send.c, support.c, windows/gui.c Bram Matthys 2021-08-11 17:12:11 +0200
  • 11755b2093
    Some variable renaming in start_listeners() Bram Matthys 2021-08-11 16:48:44 +0200
  • 9333d4b264
    Newlog: fdlist.c, socket.c Bram Matthys 2021-08-11 16:48:26 +0200
  • 82f9dc6355
    Newlog: misc.c Bram Matthys 2021-08-11 16:42:04 +0200
  • 191f81dd63
    Newlog: dispatch (io engine) Hopefully no typos anywhere, since the compiler only checks about 1/3rd of the code since it depends on the backend which code is used. Bram Matthys 2021-08-11 16:03:44 +0200
  • fe21fd6024
    Remove sendto_realops_and_log() and map some remaining temporary to sendto_ops_and_log() which will soon disappear too. Bram Matthys 2021-08-11 15:47:00 +0200
  • 9a620ef687
    Newlog: make "Channel modes changed at runtime", "User modes changed at runtime" match the "Permitted nick characters changed at runtime" log message. Bram Matthys 2021-08-11 15:44:26 +0200
  • 9308e5b8a0
    Change maximum chanmode +l value to 1 million and "coincidentally" also change the IsInvalidChannelTS() macro to check for this value or lower. Bram Matthys 2021-08-11 15:39:15 +0200
  • 9efe590a8e
    Newlog and fishy timestamp handling: * New macro IsInvalidChannelTS() which evaluates to ts < 750000 * Check for faulty creation time ("fishy timestamp") at ALL places where channel->creationtime is set. * Also, important, changed behavior: if !IsInvalidChannelTS then: 1) We print our warning 2) We pretend ts is our channel creationtime (which may be TStime() if the channel did not previously exist) 3) We allow the command through and allow it to merge (in case of SJOIN) Bram Matthys 2021-08-11 15:29:45 +0200
  • 471a97c5f6
    Newlog: md, monitor, targetfloodprot, watch-backend, watch Bram Matthys 2021-08-11 15:11:24 +0200
  • 2f8d6609d5
    Newlog: jumpserver.c Bram Matthys 2021-08-11 15:03:39 +0200
  • e5a1a05dcf
    Newlog: nick: nick collision stuff Bram Matthys 2021-08-11 13:51:05 +0200
  • 7ef141b06a
    Newlog: getting rid of ircd_log in join, jointhrottle, message, sasl Bram Matthys 2021-08-11 13:50:24 +0200
  • c76aa83baa
    Newlog: add $client.id (UID / SID) Bram Matthys 2021-08-11 13:49:54 +0200
  • 349f5c4823
    Newlog: convert kill.c Bram Matthys 2021-08-11 13:21:49 +0200
  • a7668d266b
    Newlog: convert sjoin.c Bram Matthys 2021-08-11 13:17:17 +0200
  • 21585980e1
    Newlog: convert protoctl.c Bram Matthys 2021-08-11 13:05:37 +0200
  • 21a95a13a6
    Remove benchmarking from textban, nobody needs this anymore Bram Matthys 2021-08-11 09:53:20 +0200
  • 74842a89a4
    I suppose OPEROVERRIDE_INVITE is more accurate than OPEROVERRIDE_JOIN, or at least more consistent. Bram Matthys 2021-08-11 09:24:51 +0200
  • c9c78a32ed
    $client.detail -> $client.details... sigh. Bram Matthys 2021-08-11 09:23:27 +0200
  • d38c10fae0
    Fix calls to unreal_log().. LOG_INFO -> ULOG_INFO.. so easy to make this mistake... too easy ;) Bram Matthys 2021-08-11 09:21:33 +0200
  • bbf869eada
    Newlog: expand channel data more Bram Matthys 2021-08-11 09:20:25 +0200
  • 78f16710c4
    Newlog: convert all OperOverride messages (INVITE, KICK, MODE, TOPIC) Bram Matthys 2021-08-11 09:13:13 +0200
  • 3f5fd3d5b8
    Newlog: add log_data_channel(). TODO: expand a lot more. Bram Matthys 2021-08-11 09:12:57 +0200
  • 94f1a232c8
    UnrealDB: write v1 header from now on. This means you can downgrade from UnrealIRCd 6.0.0 to 5.2.x but not to 5.0.9 or lower without loosing the .db files. That should be acceptable. Bram Matthys 2021-08-11 08:39:46 +0200
  • 9db40cd4a0
    Newlog: update channeldb, reputation, tkldb Bram Matthys 2021-08-11 08:24:12 +0200
  • 8cd3647ae0
    Rename mtag.can_send() to mtag.should_send_to_client(). This because "can send" is ambigious and could be interpreted to mean that the client may send this mtag to us, while in fact this function decided whether to send TO the client. Bram Matthys 2021-08-10 18:57:47 +0200
  • 932094de72
    Newlog: chgcmds (CHGHOST, CHGIDENT, CHGNAME) Bram Matthys 2021-08-10 17:39:52 +0200
  • 48efe353af
    Newlog: when there are two clients involved with a clear issuer/target relationship, make the issuer "client" (this was already so) and the target is "target" (and no longer sometimes "victim"). For consistency, of course :D Bram Matthys 2021-08-10 17:33:30 +0200
  • 2d72dd0c00
    Newlog: convert blacklist to use newlog Bram Matthys 2021-08-10 17:29:23 +0200
  • 798106c805
    Avoid logging LINK_DISCONNECTED message twice, and also fix the IP address in the message. We now use ip:port from the link block if we failed to connect, and otherwise we use the ip from the connection if the connection is established (also because it can be a remote connection, not linked directly to us) Bram Matthys 2021-08-10 15:07:05 +0200
  • c5347a554d
    Remove some old LOG_* loglevels, now that these are using newlog. Also move SQUIT message to newlog, although this may cause duplicates, so need to (re-)check later. Bram Matthys 2021-08-10 14:54:22 +0200
  • 6e3de0c297
    Some reindenting/whitespace in struct.h Bram Matthys 2021-08-10 14:48:49 +0200
  • 6e996d7ffb
    Remove unused structs: ConfigItem_log, ConfigItem_unknown, ConfigItem_unknown_ex Bram Matthys 2021-08-10 14:45:20 +0200
  • 4e5dd044f5
    Require module header with version "unrealircd-6" now Bram Matthys 2021-08-10 14:37:10 +0200
  • 7063cd0c86
    Module coders: add UNREAL_VERSION so you can more easily check UnrealIRCd versions in #ifdef's. Eg: #if UNREAL_VERSION > 0x05020100 to check if >5.2.1 Bram Matthys 2021-08-10 14:30:02 +0200
  • 871b581a06
    Module coders: add UNREAL_VERSION so you can more easily check UnrealIRCd versions in #ifdef's. Eg: #if UNREAL_VERSION > 0x05020100 to check if >5.2.1 Bram Matthys 2021-08-10 14:31:14 +0200
  • f742d08643
    Remove some whitespace Bram Matthys 2021-08-10 14:25:34 +0200
  • 2c011202a4
    Integrate iConf.network in iConf itself as the distinction between these "network settings" and other settings has been lost in time. Bram Matthys 2021-08-10 14:22:42 +0200
  • a4d9ef3947
    Get rid of some shorts. Sorry... i hate these :D. Also get rid of some unused stats struct members. Bram Matthys 2021-08-10 14:07:54 +0200
  • cc8b047819
    Remove old client->user->flood stuff as it was moved to client->local->flood a few versions before and is now unused. Bram Matthys 2021-08-10 14:00:47 +0200