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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
|
This ChangeLog mostly lists changes relevant to users. A full log can be
found in the git commit logs, for example you can try:
https://github.com/bitlbee/bitlbee/commits/master
Version 3.4.1:
- msn:
* Upgraded protocol to MSNP21, works again (dx)
* Contact list management, groupchats and skype username logins won't work.
Next release!
- jabber:
* Add "hipchat" protocol, for smoother login. Takes the same username as
the official client. Note that unlike the 'hip-cat' branch, this doesn't
preload channels. https://wiki.bitlbee.org/HowtoHipchat for details (dx)
* Fixed a bug when receiving topics set by people who left the channel (dx)
* Create fake users instead of showing "unknown participant" errors (dx)
* Gmail mail notifications support (Artem Savkov)
* Lowering xmpp presence priority on away (Artem Savkov)
- twitter:
* Show quoted tweets/RTs with comment inline (wilmer)
* Added "url" command, can be used to quote tweets (wilmer)
* Make replies to self work (wilmer)
- Building documentation is now done with a python script (both 2.x/3.x work)
Asciidoc/xsltproc/xmlto are no longer build dependencies (dx)
Finished 16 Jun 2015
Version 3.4:
- First release pretty much fully prepared by dx instead of Wilmer. Just look
at the tightly structured changelog!
- Main repository migrated from bzr to git
- Some API/ABI changes. Recompiling third party plugins is required!
- Important bugfixes:
* Fix memory leak when calling word_wrap() on groupchat messages (dx)
* Fix segfault after a file transfer is complete (dx)
* Fix bug where NSS would refuse to work in forkdaemon mode (dx)
* Fix several bugs with UTF8 nicks (dx)
* Fix some nasty deadlocks that appared mostly with libpurple (dx)
- General changes:
* Add a 'pattern' parameter to the blist command, to filter it (tribut)
* Implemented /kick support, only supported by purple for now (jgeboski)
* Add a "special" state to show_users (mapped to the % prefix) (jgeboski)
* Improved support for cygwin, openbsd and darwin (jcopenha)
* Create temporary users instead of showing "Message from unknown
participant" (jgeboski)
- purple:
* Local contact lists for gadugadu and whatsapp (dx)
* Add topic and name_hint to groupchats (seirl)
* Support for 'input' requests (such as telegram auth codes) (seirl)
Note that telegram-purple itself is rather unstable ATM, it may crash.
- jabber:
* Handle compressed DNS responses in SRV lookup (jcopenha)
* Fix case sensitivity issues with JIDs (GRMrGecko, dx)
* Implement XEP-0203 style message timestamps (dx)
* Fix "Server claims your JID is X instead of Y" warnings (dx)
* Account-wide display_name setting, mostly for hipchat (dx)
- twitter:
* Filter channels. Search by keyword/hashtag or a list of users (jgeboski)
* Fix bug in "reply" command which removed the first quote character (dx)
* Add "rawreply" command, like reply but bitlbee won't add @mention (WillP)
* Add support for The United States of America (favorite/fav aliases) (dx)
* Default show_old_mentions to 0 (dx)
* Start stream from last tweet on connect/reconnect (roger)
- msn:
* Disabled module by default. The protocol we used (MSNP18) stopped working
last week. This is being worked on, but it's far from ready for release.
- And lots of small bugfixes, too many to list here.
Finished 25 Mar 2015
Version 3.2.2:
- The OTR plugin now uses libotr 4.0 (AKA libotr5 in debian based distros)
- Rejecting buddy requests in jabber won't accept them. Sorry for that.
- Purple builds can now enable built in protocols when configuring, by
passing a parameter such as --jabber=1 to configure
- You can now use /oper to change passwords with "ac x set -del password"
- Complex unicode characters (non-BMP) now display correctly in twitter.
- A few init / build script / pkg-config fixes. Added "install-systemd"
make target.
Finished 5 Jul 2014
Version 3.2.1:
- Most important change: http_client updated to use HTTP/1.1, now required
by Twitter.
- fill_by setting can now be used to fill a channel contacts *not* in a
certain group/on a certain account/etc. See "help set fill_by"
- Added utf8_nicks setting which lets you use non-ASCII nicknames for your
contacts. Might not work with all IRC clients, use at your own risk!
- Lots of bugfixes.
Finished 27 Nov 2013
Version 3.2:
- By far the most important change, a thorough update to the Twitter
module:
* Now using Twitter API 1.1,
* which means it's now using JSON instead of XML,
* which means access to the streaming API (Twitter only, other Twitter
API services don't seem to have it). No more 60-second polls, #twitter
looks even more like real IRC now!
* Also, the streaming API means nice things like receiving DMs.
* show_ids, already enabled by default for a while, now uses hexa-
decimal numbers, which means a 256-entry backlog instead of just 100.
* Added a mode=strict setting which requires everything to be a command.
The "post" command should then be used to post a Tweet.
- Jabber module bugfix that fixes connection issues with at least Google
Talk but reportedly some other servers (OpenFire?) as well.
- SSL modules improved a little bit. GnuTLS module now supports SNI and
session caching. Shouldn't change much, but hopefully reduces latency
and bandwidth usage a little bit.
- A bunch of other fixes/improvements here and there.
Finished 6 Jan 2013
Version 3.0.6:
- Updated MSN module to speak MSNP18:
* Biggest change is that this brings MPOP support (you can sign in to
one account from multiple locations).
* Restored support for *sending* offline messages.
* Some support for federated (i.e. Yahoo!) contacts. (Only messages
might work, you won't see them online.)
- Twitter:
* Work-around for stalls that are still happening sometimes.
* Added "favourite" command.
* "show_ids" enabled by default.
- Handle see-other-host Jabber messages which should fix support for
MSN-XMPP.
- Misc. fixes and improvements.
Finished 14 Oct 2012
Version 3.0.5:
- SSL certificate verification (edit your bitlbee.conf to enable it).
Works only with GnuTLS!
- OAuth2 support in Jabber module (works with Google Talk, Facebook and
MSN Messenger).
- Support for ad-hoc Jabber groupchats. Just create a channel and start
inviting people, similar to how this works on other IM networks. Works
fine with GTalk, depends on a conference server being set up on other
networks.
- Allow old-style Jabber login (non-SASL), this solves problems with some
old/buggy Jabber servers. (acc jabber set sasl off)
- Use HTTPS for OAuth1 authentication traffic.
- Awareness of Twitter's t.co URL lengt^Wshortening when checking message
length.
- Fixed identi.ca OAuth support. OAuth will now always be used for both
Twitter and identi.ca accounts.
- Fix nick_format=%full_name with libpurple.
- Instead of "protocol(handle)", use the account tags introduced in 3.0
when root wants to refer to an account (in log messages, queries, etc.)
- Many small bugfixes, improvements, etc.
Finished 18 Feb 2012
Version 3.0.4:
- Merged Skype support. This used to be a separate plugin, and it still is,
but by including it with BitlBee by default it will be easier to keep it
in sync with changes to BitlBee.
- Fixed a file descriptor leak bug that may have caused strange behaviour
in BitlBee sessions running for a long time.
- Now fetches Twitter mentions as well if the "fetch_mentions" account
setting is enabled.
- With t.co now all over Twitter, show the original (but truncated) URL
between <brackets>.
- Fixed MSN Messenger login issues ("timeout" while fetching buddy list).
- Another (related) GnuTLS compatibility fix (now 2.13+?).
Finished 4 Dec 2011 (Exactly 6 years since 1.0!)
Version 3.0.3:
- Fixed Twitter compatibility. (The API call used to get the following list
was deprecated.)
- Twitter: Enable the show_ids setting to assign a two-digit short ID to
recent tweets to use for retweets and replies (so you can RT/reply to more
than just a person's last message).
- Some other Twitter fixes/improvements.
- "otr reconnect" command and some other fixes.
- GnuTLS 2.12 compatibility fix.
- Include "FLOOD=0/9999" in the 005/ISUPPORT line at login to hint the IRC
client that rate limiting is not required. (Next step: Get IRC clients to
parse it.)
- Other stuff too small to mention.
Finished 12 Jun 2011
Version 3.0.2:
- Fixed MSN login issues with @msn.com accounts.
- /CTCP support: You can CTCP VERSION Jabber contacts, and CTCP NUDGE MSN
contacts. More may come later, ideas are welcome.
- By default, leave Twitter turned on for libpurple builds.
- Allow using /OPER to identify/register as well. (Password security hack.)
- Fixed proxy support with libpurple.
- Some minor changes/fixes.
Finished 7 Mar 2011
Version 3.0.1:
- Fixed some bugs that were found only after releasing 3.0, including
Jabber contacts never going offline, MSN login issues, compilation
issues on some non-Linux systems, a fairly big memory leak in the MSN
SOAP code, etc...
- Better handling of multiple control channels and set private=false.
- Using login.icq.com for ICQ logins again since AOL sold ICQ so it
doesn't live on the AIM servers anymore.
- Fixed ability to join password-protected Jabber rooms.
- Time out if logging into an account takes too long.
- Fixed NSS SSL module.
- Support for server-side Gadu-Gadu contact lists (via libpurple, there's
still no native gg support).
- Allow omitting password when using "account add", the password can be
entered using /OPER to prevent echoing to screen and logs.
Finished 24 Nov 2010
Version 3.0:
- Important: This version drops backward compatibility with the file format
used for user settings in versions before 1.2. If you're upgrading from
very old BitlBee versions (like 1.0.x), you'll have to recreate your
BitlBee account - or use an 1.2.x BitlBee once to do the conversion.
- Rewrote the IRC core, which brings:
* Support for multiple (control) channels, so you can have one channel per
buddy group, per IM account/protocol, or for example a &offline with all
offline contacts. See "help channels" for information on how to use this.
* You can also leave and rejoin all channels. Being in &bitlbee is no
longer required.
* Now you can start groupchats by just joining a new channel and inviting
contacts. (The "chat with" command still works as well.)
* You can change your nickname, whenever you want.
* Root commands:
+ To hopefully resolve confusion about the "account set" syntax, the
ordering was changed slightly: "account set acc/setting value"
becomes "account acc set setting value". Obviously the same order
should now be used for other account subcommands.
+ Shortcuts: Instead of "account list" you can say "acc li".
* /whois shows idle/login times of your contacts when available.
* paste_buffer (previously known as buddy_sendbuffer) now works for chats
as well.
* The nick_source setting was replaced with a nick_format setting, which
looks more or less like a format string, and lets you tweak how nicknames
for contacts are generated in more detail. It also tries to convert non-
ASCII characters (i.e. accents) properly.
* A per-channel show_users setting lets you configure exactly which kinds
of contacts (online/away/offline) should show up in a channel and what
modes (none/voice/etc) they should have. Like show_offline, but together
with other new features it can for example create an &offline channel
with just offline contacts.
* If you connect (and identify) to a BitlBee server you're already
connected to, you can take over the existing session instead of starting
a new one.
* More correct validation of channel names: They can contain pretty much
any character, unlike nicknames.
- Support for using libpurple instead of BitlBee's built-in IM protocol
modules. This can be enabled by passing --purple=1 to the configure script.
* This adds support for many more IM protocols to BitlBee.
* And new functionality to existing protocols.
* This is and will always be optional and using it on public servers is
*not* recommended. It should be pretty stable, but costs more RAM/etc.
* Switching to libpurple should be pretty transparent. See "help purple"
for a list of supported protocols (works only in libpurple-enabled
binaries).
- Rewritten MSN module, implementing MSNP15 instead of the old MSNP8:
* MSNP8 support from MSN was getting pretty unreliable. There were issues
with remembering display names and adding contacts/auth requests (or
even contacts silently getting blocked!). This upgrade should fix all
of that.
* Support for sending offline messages.
* Support for setting and reading status messages.
- Integrated the bitlbee-otr branch in a mostly non-intrusive way. Since
this is not end-to-end it should *not* be enabled on public servers.
Distro packagers are requested to offer OTR as a separately installable
plugin. (Compile with --otr=plugin) Please do not enable it by default as
there is no easy way to disable OTR once the plugin is loaded/built in.
- Support for file transfers, in and out. /DCC SEND a file to a contact and
it becomes a file transfer, and incoming file transfers become /DCC SENDs
to you. Note that this is mostly useful when combined with libpurple, as
only the Jabber native protocol module currently supports file transfers.
- Updated Yahoo! module to be in sync again with libyahoo2. This mostly
fixes issues with authorization requests.
- Show if a contact is mobile or not. See "help set mobile_is_away".
- Easier handling of XMPP chatroom invitations.
- The chatroom mode of the Twitter module is now enabled by default, since
this was by far the most popular. To disable it, see "help set mode".
- Added some Twitter-specific commands that can only be used in the Twitter
window. Most important addition: Retweets. See "help set commands".
- Removed some ancient account/nick migration scripts and added one for
easier switching from Pidgin and other libpurple-based clients to BitlBee.
- Many bug fixes in both the core and IM modules, small feature enhancements
and other minor changes.
Finished 22 Oct 2010
Version 1.2.8:
- Now always using the AIM-style authentication method for OSCAR connections,
even when connecting to ICQ. This solves login issues some people were
having. (If you have problems, try changing the old_icq_auth setting.)
- Twitter:
* Allow changing the Twitter API base URL so the module can also be used
for identi.ca or any other compatible network.
* Fetch the full list of Twitter contacts instead of slowly adding all
contacts as they post a message.
* Fixed message length counting.
* Allow following/unfollowing people using the usual add/remove commands.
* Better error reporting.
- Added a user_agent setting to the Jabber module to get around artificial
client restrictions.
- Allow nick changes (although only before register/identify).
- Some more minor bugfixes/etc.
Finished 4 Jul 2010
Version 1.2.7:
- Fixed problems with MSN Messenger authentication. ("Could not parse
Passport server response")
- Fixed broken typing notifications when talking to GTalk contacts.
- Fixed an issue with non-anonymous Jabber chatrooms polluting the nick
namespace, sometimes generating odd warning messages.
- Restored ability to start groupchats on ICQ.
- Added show_offline setting that will also show offline contacts in the
control channel.
- OAuth support for Twitter: This means the module will keep working after
June (this also changes "via API" under your tweets into "via BitlBee").
Finished 15 May 2010
Version 1.2.6a:
- Fixed a typo that renders the Twitter groupchat mode unusable. A last-
minute change that came a few minutes late.
Finished 19 Apr 2010
Version 1.2.6:
- Native (very basic) support for Twitter, implemented by Geert Mulders.
Currently supported are posting tweets, reading the ones of people you
follow, and sending (not yet receiving!) direct messages.
- Fixed format of status messages in /WHOIS to improve IRC client
compatibility.
- Show timestamps of offline messages/channel backlogs.
- Allow saving MSN display names locally since sometimes this stuff breaks
server-side. (Use the local_display_name per-account setting.)
- Suppress empty "Headline:" messages for certain new XMPP broadcast
messages.
- Better handling of XMPP contacts with multiple resources on-line. Default
behaviour now is to write to wherever the last message came from, or to
the bare JID (usually becomes a broadcast) if there wasn't any recent msg.
- Added a switchboard_keepalives setting which should solve some issues with
talking to offline MSN contacts. (Although full support for offline
messages is not ready yet!)
- The usual misc. bug fixes.
Finished 19 Apr 2010
Version 1.2.5:
- Many bug fixes, including a fix for MSN login issues, Jabber login timing
issues, Yahoo! crashes at login time with huge contact lists,
- Avoid linking in a static version of libresolv now that glibc has all
relevant functions available in the dynamic version.
- Improved away state code and added the ability to set (non-away) status
messages using "set status" (also possible per account) and see them in
blist and /whois output.
- Added a post-1.2 equivalent of encode/decode to quickly encrypt/decrypt
passwords in a way that BitlBee can read them.
- Allow using the full name for generating nicknames, instead of just the
handle. This is especially useful when using the Facebook XMPP server.
- Auto reconnect is now enabled by default since all protocols can properly
detect cases where auto reconnect should be avoided (i.e. concurrent
logins).
- Changed the default resource_select setting which should reduce message
routing issues on Jabber (i.e. messages going someone's phone instead of
the main client).
Finished 17 Mar 2010
Version 1.2.4:
- Most important change (and main reason for releasing now): Upgraded Yahoo!
module to a newer version to get it working again.
- join_chat command replaced with the much better chat command:
* Similar to how account replaced login/slist/logout. Add a chatroom once,
then just /join it like any other room. Also automatic joining at login
time is now possible.
* Note that the old way of starting groupchats (/join #nickname) is now
also deprecated, use "chat with" instead.
* See "help chat" and "help chat add" for more information.
- Rewrote bitlbee.conf parser to be less dumb.
- Fixed compatibility (hopefully) with AIM mobile messages, certain kinds
of Google Talk chatrooms.
- Fixed numerous stability/reliability bugs over the last year.
Finished 17 Oct 2009
Version 1.2.3:
- Fixed one more flaw similar to the previous hijacking bug, caused by incon-
sistent handling of the USTATUS_IDENTIFIED state. All code touching these
variables was reviewed and should be correct now.
Finished 7 Sep 2008
Version 1.2.2:
- Security bugfix: It was possible to hijack accounts (without gaining access
to the old account, it's simply an overwrite)
- Some more stability improvements.
- Fixed bug where people with non-lowercase nicks couldn't drop their account.
- Easier upgrades of non-forking daemon mode servers (using the DEAF
command).
- Can be cross-compiled for Win32 now! (No support for SSL yet though, which
makes it less useful for now.)
- Exponential backoff on auto-reconnect.
- Changing passwords gives less confusing feedback ("password is empty") now.
Finished 26 Aug 2008
Version 1.2.1:
- Fixed proxy support.
- Fixed stalling issues while connecting to Jabber when using the OpenSSL
module.
- Fixed problem with GLib and ForkDaemon where processes didn't die when
the client disconnects.
- Fixed handling of "set charset none". (Which pretty much breaks the account
completely in 1.2.)
- You can now automatically identify yourself to BitlBee by setting a server
password in your IRC client.
- Compatible with all crazy kinds of line endings that clients can send.
- Changed root nicknames are now saved.
- Added ClientInterface setting to bind() outgoing connections to a specific
network interface.
- Support for receiving Jabber chatroom invitations.
- Relaxed port restriction of the Jabber module: added ports 80 and 443.
- Preserving case in Jabber resources of buddies, since these should
officially be treated as case sensitive.
- Fully stripping spaces from AIM screennames, this didn't happen completely
which severely breaks the IRC protocol.
- Removed all the yellow tape around daemon mode, it's pretty mature by now:
testing.bitlbee.org serves all (~30) SSL users from one daemon mode
process without any serious stability issues.
- Fixed GLib <2.6 compatibility issue.
- Misc. memory leak/crash fixes.
Finished 24 Jun 2008
Version 1.2:
- Added ForkDaemon mode next to the existing Daemon- and inetd modes. With
ForkDaemon you can run BitlBee as a stand-alone daemon and every connection
will run in its own process. No more need to configure inetd, and still you
don't get the stability problems BitlBee unfortunately still has in ordinary
(one-process) daemon mode.
- Added inter-process/connection communication. This made it possible to
implement some IRC operator features like WALLOPs, KILL, DIE, REHASH and
more.
- Added hooks for using libevent instead of GLib for event handling. This
should improve scalability, although this won't really be useful yet because
the one-process daemon mode is not reliable enough.
- BitlBee now makes the buddy quits when doing "account off" look like a
netsplit. Modern IRC clients show this in a different, more compact way.
(This can be disabled if your client doesn't support this.)
- GLib 1.x compatibility was dropped. BitlBee now requires GLib 2.4 or newer.
This allows us to use more GLib features (like the XML parser). By now GLib
1.x is so old that supporting it really isn't necessary anymore.
- Many, many, MANY little changes, improvements, fixes. Using non-blocking
I/O as much as possible, replaced the Gaim (0.59, IOW heavily outdated)
API, fixed lots of little bugs (including bugs that affected daemon mode
stability). See the bzr logs for more information.
- One of the user-visible changes from the API change: You can finally see
all away states/messages properly.
- Added units tests. Test coverage is very minimal for now.
- Better charset handling: Everything is just converted from/to UTF-8 right
in the IRC core, and charset mismatches are detected (if possible) and the
user is asked to resolve this before continuing. Also, UTF-8 is the default
setting now, since that's how the world seems to work these days.
- One can now keep hashed passwords in bitlbee.conf instead of the cleartext
version.
- Most important change: New file format for user data (accounts, nicks and
settings). Migration to the new format should happen transparently,
BitlBee will read the old files and once you quit/save it will save in the
new format. It is recommended to delete the old files (BitlBee doesn't do
this automatically, it will just ignore them) since they won't be used
anymore (and since the old file format is a security risk). Some advantages
of this file format switch:
* Safer format, since the identify-password is now salted before generating
a checksum. This way one can't use MD5 reverse lookup databases to crack
passwords. Also, the IM-account passwords are encrypted using RC4 instead
of the simple obfuscation scheme which BitlBee used so far.
* Easier to extend than the previous format (at least the .nicks format was
horribly limited).
* Nicknames for buddies are now saved per-account instead of per-protocol.
So far having one buddy on multiple accounts of the same protocol was a
problem because the nicks generated for the two "instances" of this buddy
were very unpredictable.
NOTE: This also means that "account del" removes not just the account,
BUT ALSO ALL NICKNAMES! If you're changing IM accounts and don't want to
lose the nicknames, you can now use "account set" to change the username
and password for the existing connection.
* Per-account settings (see the new "account set" command).
- A brand new Jabber module. Besides the major code cleanup, it also has
has these new features:
* Pretty complete XMPP support: RFC3920, RFC3921 plus a number of XEPs
including XEP45, XEP73 and XEP85. (See http://www.xmpp.org/ for what all
these things mean exactly.) Privacy lists are not supported for obvious
reasons.
* This complete support also includes TLS and SASL support and SRV record
lookup. This means that specifying a server tag for connections should
(almost) never be necessary anymore, BitlBee can find the server and can
automatically convert plaintext connections to TLS-encrypted ones.
* XEP45: Jabber chatroom support!
* XEP85 means typing notifications. The older XEP22 (still used by some
clients including Gaim <2.0) is not supported.
* Better handling of buddies who have more than one resource on-line. As
long as one resource is on-line (and visible), BitlBee will show this.
(The previous module didn't keep track of resources and sent an offline
event as soon as any resource disappears.)
* You can now set your resource priority.
* The info command now gives away state/message information for all
resources available for that buddy. (Of course this only works if the
buddy is in your contact list.)
* An XML console (add xmlconsole to your contact list or see "help set
xmlconsole" if you want it permanently).
- The Yahoo! module now says it supports YMSG protocol version 12, which will
hopefully keep the Yahoo module working after 2008-04-02 (when Yahoo! is
dropping support for version 6.x of their client).
- MSN switchboard handling changes. Hopefully less messages will get lost now,
although things are still not perfect.
Finished 17 Mar 2008
Version 1.0.4:
- Removed sethostent(), which causes problems for many people, especially on
*BSD. This is basically the reason for this release.
- "allow" command actually displays the allow list, not the block list.
- Yahoo away state/msg fix.
- Don't display "Gender: Male" by default if nothing's filled in (OSCAR
"info" command)
- Fixed account cleanup (possible infinite loop) in irc_free().
- Fixed configdir error message to not always display the compile-time
setting.
Finished 20 Aug 2007
Version 1.0.3:
- Fixed ugliness in block/allow list commands (still not perfect though, the
list is empty or not up-to-date for most protocols).
- OSCAR module doesn't send the ICQ web-aware flag anymore, which seems to
get rid of a lot of ICQ spam.
- added show_got_added(), BitlBee asks you, after authorizing someone, if you
want to add him/her to your list too.
- add -tmp, mainly convenient if you want to talk to people who are not in
your list.
- Fixed ISON command, should work better with irssi now.
- Fixed compilation with tcc.
- Fixed xinetd-file.
- Misc. (crash)bug fixes, including one in the root command parsing that
caused mysterious error messages sometimes.
Finished 24 Jun 2006 (Happy 4th birthday, BitlBee!)
Version 1.0.2:
- Pieces of code cleanup, fixes for possible problems in error checking.
- Fixed an auto-reconnect cleanup problem that caused crashes in daemon mode.
- /AWAY in daemon mode now doesn't set the away state for every connection
anymore.
- Fixed a crash-bug on empty help subjects.
- Jabber now correctly sets the current away state when connecting.
- Added Invisible and Hidden to the away state alias list, invisible mode
should be pretty usable now.
- Fixed handling of iconv(): It's now done for everything that goes between
BitlBee and the IRC client, instead of doing it (almost) every time
something goes to or come from the IM-modules. Should've thought about
that before. :-)
- When cleaning up MSN switchboards with unsent msgs, it now also says which
contact those messages were meant for.
- You can now use the block and allow commands to see your current block/
allow list.
Finished 1 Apr 2006
Version 1.0.1:
- Support for AIM groupchats.
- Improved typing notification support for at least AIM.
- BitlBee sends a 005 reply when logging in, this informs modern IRC clients
of some of BitlBee's capabilities. This might also solve problems some
people were having with the new control channel name.
- MSN switchboards are now properly reset when talking to a person who is
offline. This fixes problems with messages to MSN people that sometimes
didn't arrive.
- Fixed one of the problems that made BitlBee show online Jabber people as
offline.
- Fixed problems with commas in MSN passwords.
- Added some consts for read-only data, which should make the BitlBee per-
process memory footprint a bit smaller.
- Other bits of code cleanup.
Finished 14 Jan 2006
Version 1.0:
- Removed some crashy debugging code.
- QUIT command now works before logging in. (Mainly an RFC-compliancy fix.)
- Hopefully slightly clearer handling of buddy add requests.
- set buddy_sendbuffer_delay now also supports milisecond precision.
- Renamed #bitlbee to &bitlbee to avoid confusion with the channel on OFTC.
- Reviewed the xinetd file and installation instructions.
- HTML stripping is configurable again.
- Quit messages (at least on crashes) should appear again.
- Cleaned up some unnecessary code in the Jabber module, and implemented
handlers for headline messages (which allows you to use RSS-to-Jabber
gateways).
- Lowered the line splitting limit a bit to fix data loss issues.
- The $proto($handle) format used for messages specific to one IM-connection
now only include the ($handle) part when there's more than one $proto-
connection.
- Fix for a crash-bug on broken Jabber/SSL connections.
- Incoming typing notifications now also come in as CTCP TYPING messages, for
better consistency. Don't forget to update your scripts!
- AIM typing notifications are supported now.
- Jabber module only accepts ports 5220-5229 now, to prevent people from
abusing it as a port scanner. We aren't aware of any Jabber server that
runs on other ports than those. If you are, please warn us.
- Send flood protection can't be enabled anymore. It was disabled by default
for a good reason for some time already, but some package maintainers
turned it back on while it's way too unreliable and trigger-happy to be
used.
- Removed TODO file, the current to-do list is always in the on-line bug
tracking system.
- Fixed a potential DoS bug in input handling.
Finished 4 Dec 2005
Version 0.99:
- Fixed memory initialization bug in OSCAR module that caused crashes on
closing the connection.
- Most likely fixed the bug that caused BitlBee to use 100% CPU time in
some situations.
- Outgoing MSN typing notifications are now understood correctly by the
original MS Mac/Windows clients (again).
- Added "account add $protocol" to the documentation, got rid of a lot
of over-markup (i.e. overuse of bold-tags), reviewed some other parts.
- Small changes to help.xsl to fix small flaws in the help.txt formatting.
- Messaging yourself now doesn't make irssi or mIRC crash anymore.
Finished 3 Nov 2005
Version 0.93:
- " is now correctly converted to " instead of '.
- Code cleanup in OSCAR module.
- Some changes for better RFC-compliancy.
- It's now possible to specify an alternate Jabber server.
- bitlbee_save() now also checks the return value of fclose(), which might
solve more problems with lost account data.
- Fixed a file descriptor leak in bitlbee.c.
- Signedness fixes (mainly to keep GCC4 happy).
- Away messages are now sent correctly to most ICQ clients.
- BitlBee knows now which connection sends HTML, so it will strip HTML
automatically, "set html strip" is no longer necessary. Also, outgoing HTML
is escaped correctly.
- info-command works for AIM-connections too now.
- /notices to users will be sent as auto-away replies.
- Messages about a connection now also mention a handle, for people who have
multiple accounts in use of the same protocol.
- Examples are back in help.txt.
Finished 31 Oct 2005
Version 0.92:
- Fixed some formatting issues with the help.txt XSL-sheet.
- Moved the polling of the IRC connections to glib instead of a separate
select().
- Added ctags generation to the Makefiles.
- Sending a CTCP TYPING message to a user in your buddy list now sends a
typing notification to that person, if the protocol supports it. You
probably want to write/use a script for your IRC client to do this.
- A dash is no longer considered a lowercase underscore in nicknames.
- CTCP's to buddies no longer alter their private/non-private state.
- Clean shutdown (with saving settings) on SIGTERM.
- Fixed a crash on connecting to unreachable Jabber/SSL servers.
- On ICQ, offline messages are now requested after receiving the buddy
list. This should get rid of the "Message from unknown OSCAR handle"
messages on login.
- The linked list of buddies/nicks is now always sorted, which makes the
blist output a bit more useful.
- Fixed a crash on renaming NickServ. (There's no reason to do this, but
still crashing isn't really how BitlBee should tell you that. ;-)
- Now the message about the "new" ICQ server-side buddy lists is only
displayed when the server-side list is still empty.
- The Yahoo! markup language stripper is now less likely to strip things
that shouldn't be stripped.
- Working around a shortcoming in the Yahoo! cleanup code that didn't
cause any serious problems in previous versions, but got pretty nasty
(100% CPU time usage) now with everything in the glib main loop.
- Fixed a bug in http_encode that might have caused buffer overflows
(although not likely to be exploitable) when trying to encode strings
with non-ASCII characters.
- Fixed AIM screenname handling on ICQ connections.
- When blocking someone, the MSN module now closes the conversation you're
having with him/her (if any) so he/she can't continue talking to you
(for as long as the conversation lasts).
- Away messages are only sent when messaging someone outside the control
channel. (And now also when the user is offline instead of just away.)
- Moved charset conversion in serv_buddy_rename() to the right place so
bogus changes are always detected now.
- iso8859-1 is now the default charset because -15 caused some problems
and because -1 is enough for most people anyway.
- Fixed crashes on attempting to add a buddy (or do other things) on
connections that are still initializing.
- Added support for server-side notifies using the WATCH command.
- IRC_MAX_ARGS is dead, at least for IRC commands.
- Fixed a bug that made BitlBee crash on failing fresh MSN switchboard
connections.
- Fixed an invisibility bug in the MSN code that handled transfers to
other servers in the middle of a session.
- Newline stripping added to prevent newline-in-friendlyname attacks.
(Which allowed remote people to make BitlBee send raw custom IRC lines.)
Finished 23 Feb 2005
Version 0.91:
- Full support for ICQ server-side contact lists!
NOTE: BitlBee now ignores your client-side contact list. If you want to
import your ICQ contact list, use the import_buddies command.
- Added the import_buddies command for upgrading purposes.
- Added support for OpenSSL.
- Fixed one major problem with the daemon mode by getting rid of the global
IRC structure.
- Documentation fixes. help.txt is now generated from XML. Also updated the
installation manual.
- Made the quickstart up-to-date. (By Elizabeth Krumbach)
- Some bitlbeed additions. (By Marcus Dennis)
- info-command support for Jabber, MSN, Yahoo! and a more verbose info-reply
for ICQ. (By Frank Thieme)
- Support for Jabber over SSL.
- nick_get() appends a _ on duplicates instead of chopping off the last
character.
- Got rid of an unused piece of code that caused crashes.
(oscar.c:gaim_parse_clientauto)
- When splitting long messages into 450-char chunks, BitlBee now tries not
to cut off in the middle of a line.
- Added a warning when the user specifies an unknown OSCAR server.
- Removed GLib 2.x dependency, BitlBee will work with GLib 1.x again.
- Improved strip_html(), now less likely to strip non-HTML things.
- An invalid account-command will now display an error message.
- Fixed a bug that caused crashes when /CTCP'ing a groupchat channel.
- Hopefully better Unicode/non-ASCII support for ICQ.
- Fixed MSN connection crash on non-ASCII characters in screenname.
- Added some missing charset conversion calls. (serv_got_crap,
serv_buddy_rename)
- "account off" without extra arguments now logs off all connections.
- Fixed a crash-bug on disconnecting Yahoo! connections before they're fully
connected.
- Fixed a bug in helpfile handling which sometimes caused crashes in daemon
mode.
- block and allow commands work with just a nick as an argument again.
- Working around a crash on some probably invalid Yahoo! packets.
- Fixed a possible double free() on shutdown in irc_free().
- Talking to ICQ people on AIM and vice versa and talking to people with
@mac.com accounts now possible.
- Low ASCII chars are now stripped from away-messages so the Jabber module
won't barf on BitchX and lame-script away messages anymore.
Finished 25 Sep 2004
Version 0.90a:
- Fixed the Yahoo! authentication code.
Finished 28 Jun 2004
Version 0.90:
- A complete rewrite of the MSN module. This gives BitlBee the following
new features/improvements:
* You can now start groupchats with MSN people without having to send them
a bogus message first.
* People who are in your MSN block/allow list, but not in your contact
list, shouldn't show up in your BitlBee buddy lists anymore.
* Passport authentication shouldn't lock up the whole program for a couple
of seconds anymore. Additionally, it should also work behind proxies now.
* Better recognition of incoming file transfers; they're now recognized
when coming from non-English MS Messenger clients too.
* Fixed a problem with MSN passwords with non-alphanumeric characters.
* Mail notification support (also for Yahoo!)...
* Parsing of maintenance messages (ie "Server is going down in x minutes").
* Hopefully more stability.
- Changes in the OSCAR module:
* Better reading of ICQ-away-states.
* Lots of cleanups.
- Yahoo! module:
* Fixed authentication on 64-bit machines. (Patch from Matt Rogers)
* Better stripping of markup tags.
- Lots of cleanup in all IM-modules.
- Added support for using libnss instead of libgnutls.
- Reverse hostname lookups work on IPv6 sockets too now. (And don't crash
the program anymore.)
- Fixed a little problem with identifying right after registering a nick.
- Restored complete proxy support and added a proxy setting to the conffile.
- BitlBee can now tell you when people in your buddy list change their
"friendly name".
- Instead of an account number, you can also specify the protocol name or
(part of) the username as an account identification with commands like
"account on", "add", etc.
- BitlBee remembers what connection a question (i.e. authorization request)
belongs to and cleans it up when the connection goes down; this fixes
(one of) the last known crash bugs.
- Plus some other changes in question management. (The query_order setting
is one of them. The default behaviour changed a bit, for more information
please read "help set query_order".)
- Also fixed a memory management bug in the question code which caused some
crashes.
- Optimized some nick handling functions and added a hash of all the users
to speed up user_find() a bit (especially good for people with large
buddy and notify lists).
- Lots of changes for the Win32 port (see http://jelmer.vernstok.nl/).
- Added the drop-command.
- Fixed small problem with versions of sed which don't support the +
"operator" (the BSD version, for example, even though the operator is
documented properly in the re_format manpage...).
- Added the default_target setting.
- Added a CenterICQ2BitlBee conversion script.
- Put back the evaluator for "set charset" (which got lost somewhere between
0.84 and 0.85), so an incorrect charset will be rejected again.
- ISON now (A) gives one single reply and (B) also replies when none of the
persons asked for are on-line.
- Using GConv instead of iconv now.
- Incoming messages larger than 450 characters are now split into parts
before sending them to the user.
- Fixed a bug in irc_exec() which could crash the program when some commands
were called with too little arguments.
- Fixed a dumb NULL pointer dereference in the JOIN command.
- Added rate limiting to bitlbeed. (Against server hammering)
- Added handling of CTCP PINGs (yet another self-ping used by some IRC
clients...)
- Added bitlbee_tab_completion.pl.
- Removed the vCard handling code from Jabber because it's (A) not used and
(B) had a possible format string vulnerability.
- Got rid of strcpy() in account.c. (Thanks to NETRIC for reporting these two
problems.)
- ISO8859-15 is now the default charset.
Finished 21 May 2004
Version 0.85a:
- Fixed an authentication problem with logging into some MSN accounts.
- Removed a non-critical warning message from the ICQ servers when logging
in with an empty contact list.
- Fixed reading the [defaults] section of bitlbee.conf.
- The last newline in outgoing messages when using the buddy_sendbuffer is
now removed correctly.
- Yahoo! colour/font tag stripping now actually works.
- Fixed compilation on *BSD and some Linux architectures.
Finished 24 Mar 2004
Version 0.85:
- Users can specify alternate configuration files/directories at runtime
now.
- Rename now doesn't choke on name changes with only case changes anymore.
- Imported the daemon patch into the main source tree. The daemon mode is
still experimental, this just eases maintenance. This daemon patch brings
a lot of features, including (as the name says) a real daemon mode and
also buffering of the data sent to the user, and flood protection.
- Strips font and colour codes from Yahoo! messages.
- Support for groupchats on Yahoo!
- Fixed removing Yahoo! buddies from a different group than "Buddies".
- Jabber presence packets with error messages are interpreted correctly now.
(They used to be parsed as a signin.)
- bitlbee_save() checks return values from fprintf() and writes to tempfiles
first to make sure no old files get lost when there's a write error.
- ICQ buddies are added all at once instead of once at a time. This should
solve problems with huge buddy lists.
- Made the client pinging timings configurable. (Without requiring
recompilation)
- MSN and Yahoo flag the connection as "wants_to_die" when they're logged
off because of a concurrent login. This means reconnection will be disabled
on concurrent logins.
- BitlBee can now buffer the messages sent to someone before they're actually
sent, and wait for a specified number of seconds for more lines to be added
to the buffer before the message will really be sent.
- Renamed the reconnect_delay setting to auto_reconnect_delay.
- Unknown settings aren't saved anymore.
Finished 13 Mar 2004
Version 0.84:
- Removed the libsoup dependency.
- Fixed AuthMode=Registered: It will now restore your accounts when
identifying.
- Fixed Yahoo! support.
- Fixed a little memory leak in user.c.
- Fixed a security bug in unused code in proxy.c, only people who use
the HTTP proxy support and an untrusted proxy might need this. We
haven't done an emergency release for this fix because proxy support
is disabled by default.
- Fixed some memory leaks in IM-code.
Finished 13 Feb 2004
Version 0.83:
- Fixed a crash bug on connecting to unsupported accounts.
- Fixed a problem with connecting to MSN accounts with empty buddy
lists.
- Fixed another inifite-loop bug in nick_get() and added a piece
of code which detects the infinite loop and asks the user to send
a bug report.
- Fixed iconv-Solaris linking issues.
- Fixed all the problems with spaces in AIM screennames now, we hope.
- Fixed a buffer overflow in the nick handling code. Buffers are
overflowed with static data (nulls), so we don't think it's exploitable.
- Added server-client pinging, useful for remote servers.
- Added the hostname setting.
- Some bitlbeed changes.
- Added a little part to the on-line quickstart about the settings and
other help topics, this hopefully answers a lot of FAQ's.
- Fixed the signal handler to re-raise the signal after the handler quits.
This makes sure the default handler is called after our handler sends
the user a bye-message, so core dumps are created and the parent will
get more useful information back from wait().
- Added support for ICQ URL messages.
- Fixed strip_html() behaviour on unknown &entities;.
- Fixed a possible problem with Yahoo!
- Fixed a problem with logging into more than one MSN account at once.
Finished 31 Dec 2003
Version 0.82:
- Fixed a little bug in nick.c which could cause a complete hang for
some tricky buddylists. (Thanks to Geert Hauwaerts for helping with
fixing this bug)
- Fixed MSN support. (Lots of thanks to Wouter Paesen!)
- Removed the old login/logout commands.
- Added the qlist command.
- Fixed a buffer overflow in the nick checking code. (Thanks to Jon
Åslund for pointing us at this problem)
- Adds the add_private and add_channel options for set handle_unknown.
- Some documentation updates.
- Added two small utilities to encode/decode BitlCrypted files.
Finished 31 Oct 2003
Version 0.81a:
- This version just fixes some small things we should've fixed before
releasing 0.81:
- Fixed a small bug in the auto-reconnect cleanup code.
- Fixed the Makefile: Now it doesn't just overwrite your etc files when
installing.
- Fixed the Makefile: $prefix/etc/bitlbee/ is the default etcdir now.
- Disabling MSN by default, now that it doesn't work. It'll be back on
as soon as we get the module working again.
Finished 16 Oct 2003
Version 0.81:
- Added a configuration file.
- Added support for the PASS command to restrict access to the daemon to
only the people who know this password.
- Only allowing registered people to use the daemon is possible too.
- In case you, at some time, need to check the currently running BitlBee
version, just CTCP-VERSION someone in the channel.
- Added the auto_connect setting for people who don't want the program
to connect to IM-networks automatically.
- Extended the blist command.
- Applied the auto-reconnect patch from G-Lite.
- Applied the iconv patch from Yuri Pimenov.
- Imported the MSN-friendlyname patch from Wouter Paesen.
- Away-message aliasing code now just parses the beginning of the string,
not the whole string. This allows you to have a more descriptive away
message like "Busy - Fixing bugs in BitlBee" and all the IM connections
will have a busy-like away-state.
- Added some information about away states to the help system.
- MSN file transfers aren't silently ignored anymore.
- Integrated the Yahoo protocol fix from Cerulean Studios (Trillian).
(Thanks to Tony Perrie!)
- Made all protocol plugins optional. (Patch from Andrej Kacian/Ticho)
Finished 15 Oct 2003
Version 0.80:
- Fixed a very stupid bug in the MSN away-state reading.
- nick_cmp() now actually works, RFC-compliant.
- Fixed and cleaned up the away-state handling, there were some very
weird things in the original Gaim code base which broke this completely
all the time.
- The daemon prevents you from using root/NickServ as your nick now,
previous versions crashed on that.
- At last ... GROUP CHAT SUPPORT! :-D
- People who are *not* away get mode +v in #bitlbee now, so you can see
in /names who's away and who's not.
- Crashing BitlBee by using the NICKSERV command without any arguments
is impossible now.
- Added some notes about Darwin/OSX portability.
- Separated connections from accounts. This means restoring a lost
connection can be done using a simple "account on <number>" command.
See "help account" for more information.
*** For now this won't cause problems when upgrading because the login
command still exists (as an alias for "account add"). This alias will
not stay forever, though.
- irc_process() now makes sure it reads the whole available buffer before
executing the commands. Previous versions were very bad at handling
long floods from non-floodprotected clients. The code is still not
perfect, but good enough for local links.
- Allow/Deny questions from msn.c now also mention your own screenname.
This is useful for people who run two (or even more) MSN accounts in
one BitlBee.
- Fixed a little bug in the helpfile-changed-check code.
- A little trick in "make install" makes sure the help function in running
sessions doesn't break while upgrading.
- Added a nifty (and editable) MOTD.
- Added IRIX to the compatibility list.
- Added support for Cygwin.
- Better HTML-stripping, it also handles &entities; correctly now.
- Fixed some problems to make it compile on Solaris.
- Added support for messages from Miranda/Mac ICQ. (Code port from Gaim 0.59)
- Fixed the crash problem when removing yahoo buddies.
- Added the handle_unknown setting.
- Did some editing on a few docs.
- Added a FAQ.
- Added the daemon-patch by Maurits Dijkstra which adds stand-alone daemon
support to BitlBee.
- Jabber now doesn't barf on high ASCII characters in away messages anymore.
(Thanks to Christian Häggström <chm@c00.info>)
Finished 24 Jun 2003
Version 0.74a:
- The music-festivals-are-bad-for-your-mind release.
- This one actually contains the fix for the bug 0.74 claimed to have.
Finished 11 Jun 2003
Version 0.74:
- Fixed a security leak, where using a / in the nickname causes the saved
settings and account information to be stored in undesirable places.
Finished 10 Jun 2003
Version 0.73:
- Fixed the unable-to-remove-icq-users (actually users from any *local*
contact list) bug.
- Fixed away bug in aim protocol.
- Fixed the 'statistics' under the blist command output.
- Removed the commands from the XML documentation because they're 'on-line'
already.
- Added some signal handling; ignoring SIGPIPE should als get rid of some
crashes (for some weird reason this has to be done). Also, crashes because
of things like segfaults are a bit more verbose now. ;-)
- Changed the select() timeout in main(), this might improve some latencies.
(At leasts it speeds up signing on (especially for ICQ) a lot!)
- Made the own-QUIT messages more compliant, probably.
- Fixed some memory-bugs, thanks to valgrind.
- irc_write() now checks the write() return value, and tries to send the rest
of the string, if it could not write it completely the first time.
- Hostname lookups also work on NetBSD now.
(Thanks to David.Edmondson*sun*com (hi spambot))
- At last, a new protocol. Welcome to ... YAHOO!
- Documentation and code cleanup. Somehow the helpfile documented register
and identify twice, now that's what I call over-documenting.. :-/
- Added the rename command to the helpfile, somehow I forgot that one.
- Been a bit pedantic about compiler warnings. They're all dead now.
- Fixed a small Makefile problem which gave an error when a clean tree was
"made distclean"
- Fixed a (possible) memory leak in nogaim.c:proto_away()
- Fixed the way proto_away() calls proto_away_alias_find(), now it gives
the *whole* list of away states
- proto_away() doesn't give a NULL message anymore because AIM didn't like
that
- Got rid of the last goto in my code (without ruining the code)
- Created a more samba-like compiling process (without the complete command
lines, just a simple echo)
- "help set ops" works now too, without quoting the "set ops"
- Trying to log in with a protocol without a prpl (ICQ and TOC, for example)
made previous versions crash
Finished 13 Apr 2003
Version 0.72:
- Updated the documentation.
- Improved the MSN friendlyname code. (Although it doesn't seem to be perfect
yet..)
- info-command added to get more information about ICQ users.
- blist-command added to get a complete buddy list.
- Fixed a bug which broke the AIM code when adding a screenname with a space
in it.
- Added the NS alias for the NICKSERV command (Tony Vroon).
- Fixed the USERHOST command implementation (Tony Vroon).
- /me from IM-networks is now converted to a CTCP ACTION correctly.
- Added an utils/ directory with some misc toys and handy things.
- Added a /notice to the on_typing event. Don't use it though, the /notice
flood will just be a big annoyance. ;-)
- Some people like root and themself to be ops, some don't. Now it's
configurable. (set ops)
- Now the umode stuff actually works. Next step: Use those modes... (How?)
Finished 19 Dec 2002
Version 0.71:
- Fixed the help command output layout (alignment)
- Added a sample xinetd file
- Cleaned up, 0.70 released with a build-stamp and DEADJOE file (oops)..
- Messages can be sent like '<user>, <message>' in the control channel now,
instead of just '<user>: <message>'
- Added a debug setting boolean: Set it to true for some debugging crap
which used to be on by default..
- Changed the /whois reply: In the server section you now see the
connection this user belongs to.
- Added some root/permission checks.
- configure script works correctly when the terminating / is forgotten for
a directory.
- Fixed format string bug in protocols/oscar/meta.c (Hmm, what's the use of
that file?)
- Added '#include "crypting.h"' to commands.c to get rid of stupid warnings
- Fixed crash-bug (SIGSEGV when adding an @-less contact to MSN/Jabber)
- Added to_char setting
- Fixed bug in set.c: It ignored the new value returned by the evaluator
:-(
- Removed protocol tag from 'hostname' in user hostmask because this info
is in /whois' server section now
- Added the GPL. Somehow 0.7 released without a COPYING file.. :-/
- Enhanced the root_command() parser, you can 'quote' "arguments" now so
arguments can be strings with spaces
- Debugging versions have True as the default value for set debug
- NICKSERV is now an alternative for PRIVMSG root. This does not affect
functionality of current NICKSERV commands, but does allow people to just
do identify <pass> in channel.
- NICKSERV REGISTER now doesn't try to log you in (to check if the user
exists) but checks for the existence of the user-configuration files.
- NICKSERV SET password now works (as does set password in channel). This
makes changing your password possible.
- NICKSERV password now stored in irc_t.
- ./configure now only bugs you about possible problems with strip if it's
actually going to strip (wooohoooo! _sexy_ :)
- Fixed a load of warnings in oscar.c, irc.c, nick.c and set.c
- Split up root_command() into a version which eats raw strings and one
which eats split strings
- New help system: Help available for most (all?) commands, all read from
an external help-file.
- Changed the maximum message length in irc_usermsg() from IRC_MAX_LINE to
1024 (for loooong help messages..).
- Only allow user to set supported umodes.
- Fixed a memory leak in crypting.c (Thanks to Erik Hensema.)
- Added a send_handler callback to user_t. Needed for the following entry:
- Added the NickServ user as a root-clone.
- Disabled tcpd by default because it's just a PITA for a lot of systems
and because you can use /usr/sbin/tcpd as well.
- The root user can be renamed now.
Finished 16 Sep 2002
|