summaryrefslogtreecommitdiff
path: root/NEWS
blob: 06a9ec38d866bec249565b9ccf02c91bdca81e84 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
blabouncer 0.3 - 2024-04-01

New features:
 - Fix replaymode = "lastspoke":
   - This is listed as a new feature rather than a bug fix as it's the first
     time it's really worked and it's fantastic.
 - Implement runtime client-side TLS changing when doing a rehash (BLABOUNCER
   REHASH command or SIGHUP):
   - Re-read "certfile" and "keyfile" paths from configuration file.
   - Always reconfigure OpenSSL context to replace certificate without
     restarting.
 - Implement BLABOUNCER commands LISTCLIENTS and DISCONNECT:
   - LISTCLIENTS: List all connected clients and their authentication status.
   - DISCONNECT [FD]: Disconnect a client with file descriptor number [FD] (see
     LISTCLIENTS output).
 - Add a BLABOUNCER VERSION command.
 - Support KICK command and log/replay it appropriately.
 - Version information now uses Git if `git` is installed and the blabouncer
   repo is present.
 - Makefile improvements:
   - Add "make install".
   - Add "make uninstall".
   - Add "make clean".
   - Pay attention to modified header files.

Changes:
 - Pass version number at compile time based on "git describe". Add fallback
   VERSION file for if Git isn't installed.
 - Improve performance when another user QUITs.
 - Reduce debug log size during replays when using debug = "2".
 - Improve memory usage.
 - Fake replayed QUITs using NOTICEs for clients who don't show anything when
   a QUIT is received for an unknown nick.
 - Send fully formed PONG responses to client PINGs.
 - Relay server PINGs to all clients in case they rely on PINGs to stay alive.
 - Increase maximum auto join channels from 10 to 40.
 - Continue rather than exit in certain unexpected situations.
 - Include ERR_UNAVAILRESOURCE when doing "nick in use" resolution.
 - Correctly handle too many clients by doing accept() and close() immediately
   rather than trying to add to clients[] struct.
 - Improve stdin debugging commands when using foreground mode (-f):
   - "listchannels" now includes channel nicks.
   - Correctly handle EOF.
   - Improve debug output and stability.
 - Don't write CTCP VERSION messages to replay log.  CTCP VERSION replay/relay
   behaviour is now as follows:
   - Replaying:
   -- PRIVMSG VERSION - requests  - from other people - don't replay.
   -- PRIVMSG VERSION - requests  - from us           - don't replay.
   -- NOTICE VERSION  - responses - from other people - don't replay.
   -- NOTICE VERSION  - responses - from us           - don't replay.
   - Relaying (to non-requesting Blabouncer clients):
   -- PRIVMSG VERSION - requests  - from other people - do relay.
   -- PRIVMSG VERSION - requests  - from us           - don't relay.
   -- NOTICE VERSION  - responses - from other people - do relay.
   -- NOTICE VERSION  - responses - from us           - don't relay.

Bug fixes:
 - Fix MODE logging.
 - Fix some situations where the remote IP of a connecting/disconnecting client
   is wrong in the debug log and NOTICEs.
 - Fix existing clients getting channel nicks after real IRC server
   reconnections.
 - Correct detection of changed nick for updating existing clients when
   reconnecting to server after a timeout.
 - Fix PARTing a channel whose name is a substring of another channel.
 - Fix PRIVMSG logging going to the wrong log file.
 - Deal with servers only sending a nick rather than nick!user@host in
   RPL_WELCOME.
 - Support channel bans using "+b" as well as "b".
 - Typo fixes.
 - Comment clarifications.
 - Many, many, more!


blabouncer 0.2 - 2019-09-16

 New features:
 - Implement arrays in the configuration file and use them to specify:
   - multiple connect commands
   - multiple nicks
 - Add a configuration file option to include the date in the timestamp when
   replaying the replay log.
 - Please note: the above two configuration file changes require changes to the
   configuration file, please see blabouncer.conf.example.
 - Log server messages to a file named <ircdname>.log.
 - Log additional things in channel log files:
   - QUIT messages
   - NICK changes
   - Channel/user MODEs

 Changes:
 - BLABOUNCER REPLAY time is now specified with D:H:M instead of D:H:M:S.
 - Send remote IP addresses instead of fd numbers in NOTICEs to clients.
 - Make some older compilers happy by specifying -D_BSD_SOURCE and -std=gnu99.
 - Make all log filenames lowercase - since IRC nicks and channel names are
   case-insensitive, we can ensure a nick/channel with varying case always ends
   up in the same log file.  Please note this may mean any existing log files
   with uppercase letters will no longer be written to.

 Bug fixes:
 - Avoid various cases of server responses being relayed to all clients instead
   just the requesting client.
 - Avoid non-existent users appearing in channels after they change nicks by
   replay logging nick changes.
 - Avoid NICK synchronisation issues by ignoring replay log nick changes from
   us if not our current nick, and by completely ignoring replaying any type of
   replay log line from before blabouncer was launched.
 - Avoid possible crash if replay file does not exist.
 - Avoid possible crash if a socket write fails.
 - Many, many, more!


blabouncer 0.1.1 - 2019-07-25

 Bug fixes:
 - Fix logging to the wrong file in the case that the bouncer's nick changed
   whilst running.


blabouncer 0.1 - 2019-07-18

 - Initial release.