1/* 2 * ChangeLog: Dealing with the actual changes of code in ircII, leaving 3 * NEWS for actual user changes. 4 * 5 * Matthew Green, 1993. 6 * 7 * Copyright(c) 1993-2021 8 * 9 * See the COPYRIGHT file, or do a HELP IRCII COPYRIGHT 10 * 11 * @(#)$eterna: ChangeLog,v 2.812 2021/03/14 18:22:30 mrg Exp $ 12 */ 13 1420210314 15Sun Mar 14 11:19:32 PDT 2021 - matthew green <mrg@eterna.com.au> 16 configure, configure.in, include/defs.h.in, include/irc_std.h: 17 finish removing RFC2553 / addrinfo checks. 18 source/ctcp.c: 19 call sl_free() in do_clientinfo(). from michael ortmann 20 <ortmann@posteo.de>. 21 source/ircaux.c, source/server.c: 22 be sure to free addrinfo structures. picked up by the 23 leak sanitizer. 24 2520210302 26Tue Mar 2 13:43:11 PST 2021 - matthew green <mrg@eterna.com.au> 27 source/ctcp.c, source/edit.c, source/mail.c, source/menu.c: 28 make sure final character is \n before removing it. 29 ensure that ctime() does not return NULL. reported by 30 michael ortmann <ortmann@posteo.de>. 31 32Tue Mar 2 13:02:05 PST 2021 - matthew green <mrg@eterna.com.au> 33 source/ctcp.c: 34 avoid accessing a variable after it goes out of scope. 35 from sanitizer, via michael ortmann <ortmann@posteo.de>. 3620210301 37Tue Mar 2 03:03:05 PST 2021 - matthew green <mrg@eterna.com.au> 38 Makefile.in, configure, configure.in, include/defs.h.in, 39 source/getaddrinfo.c, source/getnameinfo.c, source/inet_ntop.c, 40 source/inet_pton.c, source/snprintf.c: 41 assume host provides working implementations of 42 functions getnameinfo()/getaddrinfo()/snprintf(). 43 44Tue Mar 2 02:14:31 PST 2021 - matthew green <mrg@eterna.com.au> 45 source/exec.c: 46 in close_all_exec() call kill_process() before 47 delete_process() so that kill_process() can find info 48 about the process before it is removed. 49 source/ircaux.c: 50 convert from sigblock() to sigprocmask(). also block 51 SIGUSR2 as well as SIGUSR1, and also block them when 52 calling malloc() and realloc() as well as free(). 53 54Sun Feb 28 23:46:10 UTC 2021 - matthew green <mrg@eterna.com.au> 55 configure.in, configure: 56 support combining sanitizers. asan+ubsan, lsan+ubsan 57 are ok, but since asan includes lsan, including both 58 crashes, so don't allow that. allow calling them 59 asan/address, lsan/leak, and ubsan/undefined. 60 61Sun Feb 28 22:43:32 UTC 2021 - matthew green <mrg@eterna.com.au> 62 help/bind/refresh_window_lastlog: 63 add missing documentation for new-in-2017 bindable key. 64 65Sat Feb 27 15:02:39 PST 2021 - matthew green <mrg@eterna.com.au> 66 source/crypt.c: 67 avoid C99's "for (type var = 0; ...)" feature. this trips 68 up defaults on older GCCs while can compile the rest of 69 the C99-using parts of ircii without any fault. 70 71Sat Feb 27 14:36:30 PST 2021 - matthew green <mrg@eterna.com.au> 72 include/debug.h, include/irc.h, source/debug.c, source/irc.c: 73 remove get_log_fp() and move all the log handling into 74 debug.c. avoid wanting a static definition of 'stderr' 75 and fix compliation issues on some platforms. 76 7720210226 78Fri Feb 26 23:54:16 PST 2021 - matthew green <mrg@eterna.com.au> 79 include/irc.h, source/debug.c, source/irc.c: 80 convert open_log_file() to not override what 'stderr' is, 81 since this conflicts with address sanitizer's use of stderr. 82 add get_log_fp() and use it in debug.c to find the FILE * 83 for the log now that 'stderr' is not it. 84 85Fri Feb 26 23:49:15 PST 2021 - matthew green <mrg@eterna.com.au> 86 source/window.c: 87 fix a memory leak triggered by wrapped lines and the 88 cursor indent is missing or is too long, found by 89 by -fsanitize=address leak sanitizer. 90 91Fri Feb 26 23:11:14 PST 2021 - matthew green <mrg@eterna.com.au> 92 fix four bugs reported by michael ortmann <ortmann@posteo.de>: 93 source/icb.c: 94 fix a logic error that would crash if hit. 95 source/newio.c: 96 avoid overflowing the buffer passed to dgets() by 1 byte. 97 source/parse.c: 98 avoid underflowing the buffer passed to irc2_parse_server() 99 by 1 byte, if it sees a line with just "\n". 100 source/queue.c: 101 fix a crash in "/queue -delete <queue>" by defining this 102 operation as delete all the entries in the named queue. 103 104Wed Feb 24 23:35:54 UTC 2021 - matthew green <mrg@eterna.com.au> 105 configure.in, configure: 106 add support for the leak sanitizer. fix the 107 getaddrinfo() works test which was leaking memory. 108 109Wed Feb 24 23:24:40 UTC 2021 - matthew green <mrg@eterna.com.au> 110 source/alias.c, source/irc.c, source/hook.c: 111 make sure numerics are in valid range, and buffers are 112 impossible to overrun (shouldn't happen, but the 113 compiler/sanitizer can't tell from what it can see.) 114 115Wed Feb 24 11:53:38 PST 2021 - matthew green <mrg@eterna.com.au> 116 configure.in, configure: 117 add --with-sanitizer[=<asan|ubsan>] support to configure. 118 source/ircflush.c: 119 avoid an extremely unlikely buffer overflow. 120 source/ircaux.c: 121 appease undefined sanitizer and ensure a format passed to 122 vsnprintf() is not NULL. 123 124Wed Feb 24 11:52:02 PST 2021 - matthew green <mrg@eterna.com.au> 125 source/parse.c: 126 make sure all unused elements of TrueArgs[] are NULL. 127 12820210224 129Wed Feb 24 02:25:44 PST 2021 - matthew green <mrg@eterna.com.au> 130 include/parse.h, source/funny.c, source/notice.c, source/numbers.c, 131 source/parse.c, source/whois.c: 132 consolidate most of the arg checking and calls to new 133 irc2_odd_server_stuff() into check_params(). fix the check 134 in p_kick(). 135 136Wed Feb 24 02:00:11 PST 2021 - matthew green <mrg@eterna.com.au> 137 include/edit.h, include/funny.h, include/notice.h, include/numbers.h, 138 include/parse.h, include/whois.h, source/edit.c, source/funny.c, 139 source/notice.c, source/numbers.c, source/parse.c, source/whois.c: 140 avoid NULL derefs, and accessing previous stack contents, 141 triggerable by a malicious IRC server. fix the do_hook() 142 call in whoreply_check() to not pass potentially random, 143 but likely duplicated data to /ON WHO. ensure that 144 break_args() always NULL-ends the array, a zero length input 145 would leave the ArgList uninitialised. check all consumers 146 in irc2_parse_server() and numbered_command() properly check 147 the arguments they expect before using them, and document 148 the assumptions and requirements. original issues reported 149 by michael ortmann <ortmann@posteo.de>, with further 150 investigation by mrg. i was only able to trigger crashes 151 with NULL dereferences, not control any other effect. 152 source/edit.c: 153 rename version() to e_version() to avoid human-conflict 154 with the also static version() in irc.c. 155 156Wed Feb 24 01:13:10 PST 2021 - matthew green <mrg@eterna.com.au> 157 source/numbers.c: 158 call save_message_from() before calling 159 restore_message_from() when handling non-special numerics. 160 161Wed Feb 24 00:57:43 PST 2021 - matthew green <mrg@eterna.com.au> 162 source/exec.c, source/icb.c: 163 use my_strcmp() and my_strlen() to avoid warnings. 164 source/numbers.c: 165 consistently use ArgList[0] over *ArgList. 166 167Tue Feb 16 18:37:13 PST 2021 - matthew green <mrg@eterna.com.au> 168 source/icb.c: 169 avoid reading one byte beyond "" in two places. 170 picked up by -fsanitize=address. 171 172Tue Feb 16 17:50:36 PST 2021 - matthew green <mrg@eterna.com.au> 173 source/exec.c: 174 avoid one byte buffer underflow write of a 0 byte, 175 picked up by -fsanitize=address. looking at a couple 176 of stack layouts for this function, the written byte 177 is currently dead space so very unlikely exploitable. 178 17920201117 180Tue Nov 17 00:22:18 PST 2020 - matthew green <mrg@eterna.com.au> 181 source/aes.c, source/cast.c, source/crypt.c: 182 introduce crypt_get_random_data() and use it to obtain 183 more than one byte at a time if available. 184 185Tue Nov 17 00:05:45 PST 2020 - matthew green <mrg@eterna.com.au> 186 include/exec.h, include/signals.h, source/exec.c, source/irc.c, 187 source/mksignals.pl, source/signals.c: 188 move all the signal data into signals.c, and access it 189 via new get_signal(). 190 source/alias.c, source/hook.c, source/server.c, source/term.c, 191 source/translat.c, source/window.c: 192 mark local variables static. 193 194Fri Jul 31 13:22:28 PDT 2020 - matthew green <mrg@eterna.com.au> 195 source/server.c: 196 display SSL information in the server list. 197 configure.in, configure: 198 fix indentation and display of [] in --help. fix error 199 handling message when looking for socks5. 200 201Thu Apr 30 20:13:04 PDT 2020 - matthew green <mrg@eterna.com.au> 202 source/dcc.c: 203 initialised buf to NULL. fixes free() of random data, 204 and thus likely crash. reported by michael ortmann 205 <ortmann@posteo.de>. 206 207Fri Mar 13 05:13:38 PDT 2020 - matthew green <mrg@eterna.com.au> 208 source/status.c: 209 avoid negative hour/minutes causing buffer overflow. 210 211Thu Apr 25 17:06:08 PDT 2019 - matthew green <mrg@eterna.com.au> 212 source/newio.c: 213 initialise nfds to avoid the case where no FDs are 214 persent in the fd_sets. 215 source/server.c: 216 fix 13 year old bug: $IRCSERVERS tries to new_free() 217 data in the environment which does not work. 218 219Tue Mar 12 19:45:15 PDT 2019 - glen mccready <gkm@pobox.com> 220 source/newio.c: 221 mac os didn't like unsigned < (int)-1 with the 222 change below. slight change to how we calculate 223 nfds. 224 225Sat Mar 9 16:19:16 PST 2019 - matthew green <mrg@eterna.com.au> 226 source/newio.c: 227 use unsigned for array index. 228 229Mon Feb 4 17:35:12 PST 2019 - matthew green <mrg@eterna.com.au> 230 source/hook.c, source/ircflush.c, source/server.c: 231 fix potential snprintf() truncation issues. 232 23320190117 234Thu Jan 17 17:16:10 PST 2019 - matthew green <mrg@eterna.com.au> 235 doc/ircii.spec: 236 fix help file list. 237 238Thu Jan 17 15:59:25 PST 2019 - matthew green <mrg@eterna.com.au> 239 source/lastlog.c: 240 make lastlog_line_back_alloc() allocate an actual 241 LastlogLineBackInfo structure not a pointer to it. 242 fixes random issues in other code as it would 243 overflow other allocations. found by leot@netbsd 244 with the help of electric-fence. 245 24620190116 247Wed Jan 16 20:27:43 PST 2019 - matthew green <mrg@eterna.com.au> 248 include/config.h.dist, source/hook.c, source/sl.c: 249 avoid using identifiers starting with _. 250 251Wed Jan 16 02:01:57 PST 2019 - matthew green <mrg@eterna.com.au> 252 source/input.c: 253 add a hack to fix the input line scrolling to keep 254 some prior context. 255 256Tue Jan 15 23:44:07 PST 2019 - matthew green <mrg@eterna.com.au> 257 Makefile.in: 258 installhelp target depends upon installdirs. from 259 Christian Weisgerber <naddy@mips.inka.de>. 260 help/for: 261 add a help page to link to foreach, where for is 262 actually documented. PR#608. 263 264Tue Jan 15 23:32:02 PST 2019 - matthew green <mrg@eterna.com.au> 265 source/dcc.c: 266 don't allow closing dcc from within a dcc hook. 267 fixes PR#643. 268 269Tue Jan 15 22:25:41 PST 2019 - matthew green <mrg@eterna.com.au> 270 source/mksignals.pl, source/signals.c: 271 add support for handling aliases by eliding them. mark 272 IOT as maybe an alias for ABRT. fixes clang warning. 273 source/vars.c: 274 fix some paren placement to be valid, found by clang. 275 276Tue Jan 15 16:31:54 PST 2019 - matthew green <mrg@eterna.com.au> 277 configure.in, configure, include/defs.h.in, include/irc.h, 278 assume getcwd() and strerror() always exist. 279 fix a comment error. 280 include/irc_std.h, include/ircterm.h: 281 move SVR4 specific code into ircterm.h 282 source/exec.c: 283 fix a compile error with new my_sigstr(). 284 28520190115 286Tue Jan 15 02:59:55 PST 2019 - matthew green <mrg@eterna.com.au> 287 include/signals.h, source/exec.c, source/mksignals.pl, 288 source/signals.c: 289 be more safe around the signals[] array, and always use 290 the accessor which has been updated to be safe for empty 291 signals. allow runtime to add "SIG<n> to the signal 292 list if it is empty. convert to u_char. 293 294Tue Jan 15 02:29:58 PST 2019 - matthew green <mrg@eterna.com.au> 295 doc/help2htmp.pl: 296 fix the output a little. avoid extra blank lines and 297 convert leading spaces into . 298 299Tue Jan 15 01:30:29 PST 2019 - matthew green <mrg@eterna.com.au> 300 configure.in, configure: 301 move default paths in prefix under new ./configure option 302 --with-prefix-paths. fix --help output alignment. 303 304Tue Jan 15 00:57:24 PST 2019 - matthew green <mrg@eterna.com.au> 305 Makefile.in: 306 remove support for irc.old binary. remove umask setting. 307 both from pkgsrc. 308 configure.in, configure, include/irc.h: 309 if setting -L path, set -I path too. don't bother checking 310 for limits.h, just always include it. it was checked, but 311 not ever included. 312 313Tue Jan 15 00:21:53 PST 2019 - matthew green <mrg@eterna.com.au> 314 Makefile.in, include/signals.h, source/exec.c, source/ircaux.c, 315 source/signals.c, source/mkmksiginc.pl, source/mksiginc.c, 316 source/mksignals.pl: 317 replace mkmksiginc.pl and mksiginc.c with mksignals.pl 318 and signals.c that does not require run-time support 319 and should allow ircii to be cross compiled sanely. 320 32120190114 322Mon Jan 14 23:32:35 PST 2019 - matthew green <mrg@eterna.com.au> 323 script/nicksearch: 324 don't hard code "Sec" but use $N. don't overrite 325 client_info value. 326 Makefile.in, source/strcasestr.c, include/strcasestr.h, 327 source/lastlog.c: 328 copy netbsd's strcasestr() and use it for /lastlog, 329 which has been case-sensitive since 20161207. 330 source/strsep.c: 331 update copyright to 3-clause BSD. 332 33320180609 334Sat Jun 9 19:23:13 PDT 2018 - matthew green <mrg@eterna.com.au> 335 help/ircii/command_line_args, help/ircii/environment_vars, 336 help/ircii/programming, help/ircii/server_lists: 337 new help files. 338 help/on/send_talk help/on/talk 339 remove obsolete for 16 years help files. 340 help/*: 341 fix a lot of wrong links such that help2html.pl 342 now generations a a tree without missing links. 343 344Sat Jun 9 17:11:11 PDT 2018 - matthew green <mrg@eterna.com.au> 345 Makefile.in, doc/help2html.pl: 346 add a way to build html copies of the help files. 347 help/alias/alias: 348 fix link to set input_aliases. 349 include/names.h, source/names.c: 350 make channel modes u_int not u_long. 351 source/whois.c: 352 redo whois_ignore_msgs() to be less indented. 353 source/window.c: 354 move many variables in windowcmd() into the used 355 scope. restore a lost error report. plus some 356 memory leaks in error handling. 357 source/irc.c: 358 new vesrion. 359 360Mon Jun 4 12:21:52 PDT 2018 - matthew green <mrg@eterna.com.au> 361 configure.in, configure, source/translat.c: 362 add -Wformat-security to the default warnings list. 363 fix the three problems found. idea from diz. 364 365Thu Mar 29 01:49:50 PDT 2018 - matthew green <mrg@eterna.com.au> 366 source/edit.c: 367 fix a bug in command completion. the irc_command[] array 368 has "" first and NULL last entry and must be accounted for. 369 pointed out by leot@netbsd.org who provided an initial fix. 370 move the special case into find_command() itself. 371 372Tue Feb 6 12:22:15 PST 2018 - matthew green <mrg@eterna.com.au> 373 source/window.c: 374 fix an identation error. 375 376Wed Nov 8 13:59:10 PST 2017 - matthew green <mrg@eterna.com.au> 377 script/silent: 378 ensure there's a space between the messages and status. 379 from leot. 380 help/window/where: 381 fix a typo. from leot. 382 38320171101 384Wed Nov 1 17:33:48 PDT 2017 - matthew green <mrg@eterna.com.au> 385 revert most of this change: 386 source/ctcp.c, source/lastlog.c, source/mail.c, source/notice.c, 387 source/numbers.c, source/parse.c, source/whois.c: 388 avoid set_lastlog_msg_level() when already using 389 save_message_from(). it's not necessary. in 390 parse_server_notice() always restore the level. this may have 391 been the cause of messages going to the wrong place occasionlly. 392 few minor other clean ups related to message levels. 393 as it fails to set the lastlog level correctly, leading to lastlog 394 failing to save many messages. 395 396Tue Oct 31 14:32:03 PDT 2017 - matthew green <mrg@eterna.com.au> 397 source/status.c: 398 use my_strcpy() again, now it handles overlapping strings. 399 400Tue Oct 31 13:15:06 PDT 2017 - matthew green <mrg@eterna.com.au> 401 revert this change: 402 Wed Sep 13 17:56:00 PDT 2017 - matthew green <mrg@eterna.com.au> 403 source/dcc.c, source/icb.c: 404 avoid set_lastlog_msg_level() when already using 405 save_message_from(). it's not necessary. 406 as it fails to set the lastlog level correctly, leading to lastlog 407 failing to save many messages. 408 409Mon Oct 30 14:28:42 PDT 2017 - matthew green <mrg@eterna.com.au> 410 include/irc_std.h, include/ircaux.h, source/dcc.c, source/ircaux.c, 411 source/lastlog.c, source/notice.c, source/numbers.c, source/parse.c: 412 make my_strcpy() and my_strncpy() first class local functions 413 that do not have non-overlapping requirements. 414 415Thu Sep 14 14:59:47 PDT 2017 - matthew green <mrg@eterna.com.au> 416 source/ctcp.c, source/dcc.c, source/lastlog.c, source/mail.c, 417 source/notice.c, source/numbers.c, source/parse.c, source/whois.c, 418 source/window.c: 419 avoid set_lastlog_msg_level() when already using 420 save_message_from(). it's not necessary. in 421 parse_server_notice() always restore the level. this may have 422 been the cause of messages going to the wrong place occasionlly. 423 few minor other clean ups related to message levels. 424 source/mail.c: 425 remove redundant #ifdef. 426 42720170913 428Wed Sep 13 17:56:00 PDT 2017 - matthew green <mrg@eterna.com.au> 429 source/dcc.c, source/icb.c: 430 avoid set_lastlog_msg_level() when already using 431 save_message_from(). it's not necessary. 432 source/edit.c: 433 use strcmp() instead of open coding. 434 source/parse.c: 435 fix an unlikely memory leak. 436 437Wed Sep 13 14:25:15 PDT 2017 - matthew green <mrg@eterna.com.au> 438 source/numbers.c: 439 display_msg() shouldn't check for : prefixes, the callers 440 all take care of this. from dholland@netbsd. clean up a 441 little as well. 442 443Wed Sep 13 14:04:10 PDT 2017 - matthew green <mrg@eterna.com.au> 444 source/ircaux.c: 445 fix rework of double_quote() to ensure nul termination. 446 avoids tabkey adding "gcnt" or similar to the end of 447 nicks 8-11 chars long. 448 449Tue Sep 5 21:44:36 PDT 2017 - matthew green <mrg@eterna.com.au> 450 source/names.c: 451 revert part of 20161214 commit: 452 >fix add_channel() in some reconnecting case where the 453 >channel should go back to the current window. 454 that makes /join #foo not connect the channel to the 455 current window. 456 457Tue Sep 5 21:41:25 PDT 2017 - matthew green <mrg@eterna.com.au> 458 include/output.h, include/window.h, source/keys.c, source/window.c: 459 rename refresh_window_lastlog() as window_refresh_lastlog(), 460 and move the frontend for the current window into 461 window_refresh_lastlog_key(). 462 46320170708 464Sun Jul 9 00:54:48 PDT 2017 - matthew green <mrg@eterna.com.au> 465 source/lastlog.c: 466 handle lastlog buffer realloc issues and fix a potential 467 memory leak. 468 469Sat Jul 8 23:56:22 PDT 2017 - matthew green <mrg@eterna.com.au> 470 source/help.c: 471 use sl_iter_fwd() instead of directly access the 472 StringList. 473 474Sat Jul 8 23:43:36 PDT 2017 - matthew green <mrg@eterna.com.au> 475 include/sl_irc.h, source/sl_irc.c: 476 add sl_iter_fwd() / sl_iter_rev() methods to traverse 477 the string list. 478 include/keys.h, include/output.h, source/keys.c, source/window.c: 479 add REFRESH_WINDOW_LASTLOG bindable function. it 480 refreshes the current window with information from 481 the lastlog, filling the screen as much as possible. 482 483Sat Jul 8 23:41:45 PDT 2017 - matthew green <mrg@eterna.com.au> 484 include/window.h, source/window.c: 485 remove unused islogged types. it's yes/no. 486 487Sat Jul 8 20:54:01 PDT 2017 - matthew green <mrg@eterna.com.au> 488 include/window.h, source/menu.c, source/window.c: 489 remove ShrinkInfo and just return "int bottom" 490 part of it, the only part used. adjust both 491 redraw_resized() and resize_display() to match. 492 redraw_resized() loses unused AnchorTop param. 493 494Sat Jul 8 05:05:49 PDT 2017 - matthew green <mrg@eterna.com.au> 495 help/lastlog: 496 document (old) -save, and new -saveall/-loadall. 497 498Sat Jul 8 04:49:47 PDT 2017 - matthew green <mrg@eterna.com.au> 499 source/lastlog.c: 500 add two new commands to /lastlog: -saveall and 501 -loadall. these save or load the full lastlog 502 into a special file that includes a timestamp and 503 the log level. this allows lastlog to be reload 504 upon restarting. early basic version so far. 505 don't ignore lines less than 2 chars - "> " is 506 not always the output or should be ignored. 507 508Sat Jul 8 00:22:25 PDT 2017 - matthew green <mrg@eterna.com.au> 509 include/lastlog.h, source/lastlog.c, source/window.c: 510 push the function-static data in lastlog_line_back() 511 into an allocated/freed per call value. introduce 512 lastlog_line_back_alloc()/lastlog_line_back_free() 513 to deal with the dynamic nature. 514 51520170704 516Tue Jul 4 18:55:39 PDT 2017 - matthew green <mrg@eterna.com.au> 517 source/status.c: 518 fix overlapping strcpy() issue. 519 520Tue Jul 4 05:29:50 PDT 2017 - matthew green <mrg@eterna.com.au> 521 source/help.c: 522 fix missing restore_message_from() in /help. 523 source/ctcp.c: 524 ensure ctcp_quote_it() doesn't overrun it's buffer. 525 convert do_clientinfo() to sl_init() and pals. fix 526 a memory leak. 527 528Tue Jul 4 05:08:07 PDT 2017 - matthew green <mrg@eterna.com.au> 529 source/help.c: 530 convert help to use sl_init() and pals. 531 source/ircaux.c: 532 in malloc_*snprintf() avoid writing to the old 533 pointer until we're done. 534 535Tue Jul 4 04:39:54 PDT 2017 - matthew green <mrg@eterna.com.au> 536 source/help.c: 537 put some common code into functions and generally 538 clean up a little. 539 540Tue Jul 4 01:04:29 PDT 2017 - matthew green <mrg@eterna.com.au> 541 source/hook.c, source/ignore.c, source/names.c, source/server.c: 542 rework several functions to use sl_concat() instead of 543 writing into a stack buffer. rewrite most of 544 ignore_info() to use a common function, saving 88 out 545 of 138 lines in total. 546 547Mon Jul 3 22:38:46 PDT 2017 - matthew green <mrg@eterna.com.au> 548 include/sl_irc.h, source/sl_irc.c: 549 add sl_size() to return number of entries. fix 550 the length calculation for sl_concat() to not 551 include the separator the first time. 552 source/edit.c, source/funny.c, source/help.c: 553 replace BIG_BUFFER_SIZE usage with sl_concat(). 554 clean up help some more. fix a bug in funny_list 555 when /list -wide or /names -wide was given. this 556 now works again (busted 3.5 years ago.) 557 558Mon Jul 3 21:05:14 PDT 2017 - matthew green <mrg@eterna.com.au> 559 source/dcc.c, source/menu.c, source/sl.c: 560 avoid direct calls to malloc/free. 561 562Mon Jul 3 20:53:34 PDT 2017 - matthew green <mrg@eterna.com.au> 563 include/debug.h, source/debug.c: 564 add "misc" debug entry, for random stuff that may not 565 end up being commited. 566 Makefile.in, include/sl_irc.h, source/sl_irc.c: 567 add new sl_concat() routine on top of sl.c, that 568 concatenates a string list with a separator. 569 source/notify.c: 570 use sl_concat() in do_notify(), instead of the hard 571 coded BIG_BUFFER_SIZE buffer. 572 573Mon Jul 3 20:06:16 PDT 2017 - matthew green <mrg@eterna.com.au> 574 source/dcc.c: 575 remove BIG_BUFFER_SIZE usage in process_incoming_chat(). 576 help/ircii/copyright, source/help.c: 577 fix copyright. remove one BIG_BUFFER_SIZE in help_me(). 578 579Mon Jul 3 19:36:16 PDT 2017 - matthew green <mrg@eterna.com.au> 580 source/ctcp.c, source/dcc.c, source/edit.c, source/funny.c, 581 source/help.c, source/hook.c, source/ignore.c, source/input.c, 582 source/names.c, source/notify.c, source/server.c, 583 source/status.c, source/window.c: 584 mark BIG_BUFFER_SIZE usages that need to be fixed. 585 fix a potential overflow issue in proxy handling. 586 add attempted fix at overlapping strcpy in 587 make_status_one(). 588 58920170703 590Mon Jul 3 07:02:50 PDT 2017 - matthew green <mrg@eterna.com.au> 591 include/debug.h, source/debug.c, source/help.c: 592 introduce DB_HELP debug level. mostly useless so 593 far. rework help_topic() to both avoid using 594 BIG_BUFFER_SIZE as well as simplify the zcat logic. 595 596Mon Jul 3 06:16:06 PDT 2017 - matthew green <mrg@eterna.com.au> 597 source/funny.c, source/irc.c, source/server.c: 598 avoid BIG_BUFFER_SIZE in a few minor places. 599 600Mon Jul 3 05:59:59 PDT 2017 - matthew green <mrg@eterna.com.au> 601 source/dcc.c, source/history.c, source/mail.c, source/menu.c: 602 use FS_BUFFER_SIZE for disk IO. 603 source/dcc.c: 604 check send(2) return in process_outgoing_file(). 605 put_it()/say() have taken floats for along time, 606 remove ancient stupid workaround. 607 608Mon Jul 3 05:10:59 PDT 2017 - matthew green <mrg@eterna.com.au> 609 include/alias.h, source/alias.c, source/edit.c, source/if.c: 610 add free_alias() to clean up after match_alias(). 611 include/irc.h, source/dcc.c, source/edit.c, source/help.c: 612 add FS_BUFFER_SIZE for IO buffers. use it instead 613 of BIG_BUFFER_SIZE in a few places. use PATH_MAX 614 where relevant. 615 source/dcc.c: 616 rework dcc_filesend() to avoid BIG_BUFFER_SIZE. 617 source/edit.c: 618 pull the alias and command printing out of 619 command_completion() into subroutines. rework them 620 all to avoid using BIG_BUFFER_SIZE. 621 source/dcc.c, source/edit.c, source/history.c, 622 source/ircaux.c, source/lastlog.c, source/log.c, source/vars.c: 623 adjust expand_twiddle() to always return non NULL. 624 625Mon Jul 3 04:14:37 PDT 2017 - matthew green <mrg@eterna.com.au> 626 Makefile.in: 627 update depends list. 628 configure, configure.in, source/hook.c, source/output.c, 629 include/buffer.h: 630 remove PUTBUF_* and just use malloc_vsnprintf(). 631 don't check for unused vasprintf() anymore. 632 63320170702 634Sun Jul 2 09:25:06 PDT 2017 - matthew green <mrg@eterna.com.au> 635 source/alias.c: 636 rewrite expander_addition() and avoid BIG_BUFFER_SIZE. 637 source/ircaux.c: 638 rework double_quote() to avoid BIG_BUFFER_SIZE by 639 double pass on the string. 640 641Sun Jul 2 07:22:54 PDT 2017 - matthew green <mrg@eterna.com.au> 642 source/ctcp.c: 643 adjust send_ctcp() and send_ctcp_reply() to avoid 644 BIG_BUFFER_SIZE. remove dead code in 645 send_ctcp_reply(). 646 647Sun Jul 2 06:55:19 PDT 2017 - matthew green <mrg@eterna.com.au> 648 source/edit.c: 649 avoid BIG_BUFFER_SIZE in waitcmd(), really_save(), 650 save_settings(), redirect_msg(), show_timer(), and 651 pingcmd(). 652 source/ignore.c: 653 remove BIG_BUFFER_SIZE in ignore_nickname(). 654 655Sun Jul 2 06:29:29 PDT 2017 - matthew green <mrg@eterna.com.au> 656 source/help.c: 657 avoid BIG_BUFFER_SIZE in help_prompt(), 658 help_pause_add_line(), help_show_paused_topic(), 659 660Sun Jul 2 06:08:00 PDT 2017 - matthew green <mrg@eterna.com.au> 661 source/edit.c, source/ircaux.c, source/names.c: 662 adjust path_search() to return a malloced() value. 663 avoid BIG_BUFFER_SIZE in expand_twiddle() and 664 recreate_mode(). 665 666Sun Jul 2 05:50:54 PDT 2017 - matthew green <mrg@eterna.com.au> 667 source/server.c: 668 remove easy BIG_BUFFER_SIZE usages in close_server(), 669 login_to_server(), and display_server_list(). 670 671Sun Jul 2 05:23:58 PDT 2017 - matthew green <mrg@eterna.com.au> 672 source/status.c: 673 remove some easy BIG_BUFFER_SIZE usages in most 674 status_*() backends. one easy but large one left, 675 plus 4 not so easy ones. 676 677Sun Jul 2 04:56:59 PDT 2017 - matthew green <mrg@eterna.com.au> 678 source/notice.c, source/numbers.c, source/screen.c: 679 remove more BIG_BUFFER_SIZE in load_ircrc*(), 680 cannot_join_channel(), numbered_command(), 681 window_redirect() and add_to_screen(). 682 683Fri Jun 30 22:12:32 PDT 2017 - matthew green <mrg@eterna.com.au> 684 configure, configure.in: 685 fix efence support in the modern shlib world. 686 include/ircaux.h, source/ircaux.c: 687 add malloc_vsnprintf(). 688 source/vars.c, source/whois.c, source/window.c: 689 remove most BIG_BUFFER_SIZE uses. using either 690 malloc_snprintf() or similar in most places. 691 692Fri Jun 30 20:57:47 PDT 2017 - matthew green <mrg@eterna.com.au> 693 source/alias.c: 694 unbreak aliases in the form of foo[bar][baz] (ie, with 695 two or more [] sequences.) 696 697Thu Jun 29 19:16:17 PDT 2017 - matthew green <mrg@eterna.com.au> 698 include/ircaux.h, source/alias.c, source/edit.c, source/history.c, 699 source/ircaux.c, source/whois.c: 700 remove ignored 2nd arg to malloc_snprintf(). 701 70220170606 703Tue Jun 6 15:01:47 PDT 2017 - matthew green <mrg@eterna.com.au> 704 configure, configure.in, include/defs.h.in source/output.c: 705 add --with-default-resize-method[=type] (either "old" or 706 "new") to choose the old or new window resize method. 707 the default is the new one. note that /window balance 708 remains using the old method as a direct command. 709 710Mon Jun 5 16:42:42 PDT 2017 - matthew green <mrg@eterna.com.au> 711 source/window.c: 712 make recalculate_windows() work, including when windows 713 are resized too tiny. a few extra checks and some fall 714 back to normal window_balance() when failure is detected, 715 perhaps automatically first hiding some windows first. 716 717Mon Jun 5 15:32:56 PDT 2017 - matthew green <mrg@eterna.com.au> 718 source/window.c: 719 fix recalculate_windows() some. remove redundant code. 720 still has some minor issues, but works most of the time now. 721 722Mon Jun 5 15:06:19 PDT 2017 - matthew green <mrg@eterna.com.au> 723 source/screen.c: 724 check against current, not old, window sizes, to determine 725 if the screen size changed. fixes random window rebalance 726 upon ^L after "/window new new". 727 source/window.c: 728 remove some redundant code from recalculate_windows(). 729 730Mon Jun 5 14:28:26 PDT 2017 - matthew green <mrg@eterna.com.au> 731 configure, configure.in, include/defs.h.in, source/help.c: 732 check alphasort()'s arg type and use that for the 733 scandir() comparision function. enables both old 734 and new style scandir() types to pass warning 735 enabled builds. adjust the help code to suit. 736 source/irc.h: 737 on linux, define _GNU_SOURCE very early. 738 source/debug.h: 739 force a type to unsigned. 740 74120170424 742Mon Apr 24 22:06:40 PDT 2017 - matthew green <mrg@eterna.com.au> 743 source/edit.c source/keys.c source/translat.c: 744 remove some unnecessary casts. 745 746Mon Apr 24 20:08:18 PDT 2017 - matthew green <mrg@eterna.com.au> 747 source/alias.c: 748 use the new bracket_to_dot() again in /alias handling, as it 749 has the same bug as the prior fix. 750 75120170128 752Sat Jan 28 16:43:39 PST 2017 - matthew green <mrg@eterna.com.au> 753 source/alias.c: 754 strcat() can't be used on overlapping strings says opengroup 755 and OSX triggers a fault. pull the code to convert eg 756 "foo[bar][baz]" into "foo.bar.baz" into its own function and 757 manually strcat as necessary. 758 759Mon Jan 9 12:32:10 PST 2017 - matthew green <mrg@eterna.com.au> 760 source/names.c: 761 don't pass NULL pointers to window_get_server_group(). 762 76320161214 764Wed Dec 14 22:28:52 PST 2016 - matthew green <mrg@eterna.com.au> 765 configure, configure.in: 766 it's spelled "-lssl -lcrypto", not the reverse. fixes 767 static linking. 768 source/input.c: 769 handle current_irc_encoding() returning NULL. 770 source/names.c: 771 fix add_channel() in some reconnecting case where the 772 channel should go back to the current window. 773 source/server.c: 774 only set proxyname/port when they're used. 775 77620161207 777Wed Dec 7 09:09:13 PST 2016 - glen mccready <gkm@pobox.com> 778 include/ircaux.h: 779 add malloc_snprintf. 780 source/ircaux.c: 781 fix strmcat_ue. optimize strmcat. remove scanstr. 782 add malloc_snprintf. optimize expand_twidle. 783 source/dcc.c, source/lastlog.c: 784 use strstr instead of scanstr. 785 source/alias.c, source/edit.c, source/history.c, source/whois.c: 786 use malloc_snprintf instead of malloc/strcpy/strcat/strcat 787 sequences. 788 78920161204 790Fri Dec 2 15:06:41 PST 2016 - glen mccready <gkm@pobox.com> 791 include/alias.h, include/menu.h, include/parse.h, include/server.h, 792 source/alias.c, source/edit.c, source/exec.c, source/funny.c, 793 source/help.c, source/hook.c, source/if.c, source/ignore.c, 794 source/input.c, source/ircaux.c, source/ircsig.c, source/keys.c, 795 source/menu.c, source/names.c, source/notice.c, source/numbers.c, 796 source/output.c, source/parse.c, source/queue.c, source/screen.c, 797 source/server.c, source/snprintf.c, source/status.c, 798 source/translat.c, source/whois.c, source/window.c: 799 coding conventions. spaces to tabs. (u_char)0 -> '\0' 800 source/help.c: 801 update compar() prototype 802 80320151120 804Fri Nov 20 01:16:10 PST 2015 - matthew green <mrg@eterna.com.au> 805 source/lastlog.c: 806 extra the lastlog printing into its own function and add a 807 hack to remove any present trailing ALL_OFF. 808 source/log.c: 809 remove an #ifdef. 810 source/output.c, source/screen.c: 811 remove calls to add_to_log() from output.c functions and 812 rely entirely on add_to_screen() to do this. add missing 813 calls to add_to_log() in the missing screen and basic 814 terminal support sections of add_to_screen(). 815 script/nicksearch: 816 add new script to search for nicks. 817 81820151111 819Wed Nov 11 15:00:48 PST 2015 - matthew green <mrg@eterna.com.au> 820 Makefile.in: 821 make sure we only create sig.inc if successful. 822 source/server.c: 823 make sure we assign the ssl level to something in servercmd(). 824 82520151002 826Fri Oct 2 21:14:39 PDT 2015 - matthew green <mrg@eterna.com.au> 827 source/translat.c: 828 give invalid utf-8 sequences a length of 1, so that we are 829 actually able to advance beyond them instead of an infinite 830 loop. 831 83220150903 833Thu Sep 3 12:34:00 PDT 2015 - matthew green <mrg@eterna.com.au> 834 include/ircterm.h, source/output.c, source/screen.c, source/status.c, 835 source/term.c, source/window.c: 836 use the final column of the display. provide a way to get 837 the old behaviour via TERM_USE_LAST_COLUMN. adjust a few 838 Debug()s to remove the (now provided) function name, and 839 add a Debug about screen size setting and also if 840 output_line() skips any text. 841 84220150513 843Wed May 13 15:44:36 PDT 2015 - matthew green <mrg@eterna.com.au> 844 contrib/README, contrib/noansi.c: 845 add a small program to strip DOS ansi codes. from 846 cstone@pobox.com. 847 include/screen.h, source/screen.c, source/status.c, source/window.c: 848 add a size_t len parameter to my_strcpy_ci(). 849 include/server.h, source/server.c: 850 make ssl_level_to_sa_flags() public as server.c wants to 851 use it. fix it to use comparision instead of bitwise checks, 852 as the values are not bitwise values. add an SSL_UNKNOWN 853 value to server_ssl_level and use it to avoid overriding 854 user-set values when deriving a server name in 855 parse_server_info(). fixes a bug reported Jim Westfall. 856 include/translat.h, source/input.c, source/screen.c, source/translat.c: 857 decode_mb() gains a size_t destlen parameter. 858 source/window.c, 859 expand split_up_line()'s internal outputs[] array, and make 860 sure we don't overrun it. 861 source/term.c: 862 add a new TERM_IGNORE_LAST_COLOMN define, and start to begin 863 to use the final column. 864 86520150222 866Sun Feb 22 04:41:48 PST 2015 - matthew green <mrg@eterna.com.au> 867 include/ctcp.h, include/debug.h, include/hook.h, include/output.h, 868 source/alias.c, source/edit.c, source/irc.c, source/server.c, 869 source/whois.c: 870 add format checking to all varargs functions that 871 resolve to normal printf arguments, and fix the various 872 problems found. 873 874Sat Feb 21 17:42:52 PST 2015 - matthew green <mrg@eterna.com.au> 875 include/server.h, source/edit.c, source/irc.c, source/server.c: 876 add GCC format checking attribute to send_to_server() 877 and fix the two places it was wrong. now irc realname 878 is properly sent again, and we fix an old error in 879 redirect handling. 880 881Sat Feb 21 16:46:31 PST 2015 - matthew green <mrg@eterna.com.au> 882 source/translat.c: 883 don't set irc/display/input_encoding if they're 884 unable to iconv_open() with it. avoids leaving 885 the system more non-functional. 886 88720141220 888Sat Dec 20 12:31:10 PST 2014 - matthew green <mrg@eterna.com.au> 889 source/names.c: 890 fix SWITCH_CHANNELS binding, which was calling the 891 backend twice, and switch to and then back to the 892 previous channel, appearing to do nothing. 893 894Wed Nov 26 13:42:34 PST 2014 - matthew green <mrg@eterna.com.au> 895 configure, configure.in: 896 for --with-openssl and no argument, don't look in 897 the "yes" directory for openssl, but assume it is 898 in the default path, as expected below. 899 90020141122 901Sat Nov 22 13:25:17 PST 2014 - matthew green <mrg@eterna.com.au> 902 source/edit.c: 903 fix find_command() to not have potential array bounds issues. 904 source/output.c, source/window.c, include/window.h: 905 use balance_windows() for now on SIGWINCH, etc. 906 recalculate_windows() still has a problem. 907 90820141028 909Tue Oct 28 18:31:45 PDT 2014 - matthew green <mrg@eterna.com.au> 910 source/debug.c: 911 tm_year offset is 1900, not 0. 912 source/window.c: 913 don't allow 'extra' to become negative, or to adjust 914 windows via the change percentage after the first loop. 915 abort() if extra ends up negative. fixes various 916 issues seen when some types of resizing are performed. 917 91820141018 919Sat Oct 18 06:36:19 PDT 2014 920 source/output.c: 921 fix a -1 array index introduced recently. 922 923Sat Oct 18 06:26:34 PDT 2014 - matthew green <mrg@eterna.com.au> 924 Makefile.in, doc/ircii.spec, doc/ircii.spec.in, source/irc.c: 925 make 'dist' target set the version for ircii.spec. 926 92720140831 928Sun Aug 31 23:34:55 PDT 2014 - matthew green <mrg@eterna.com.au> 929 source/term.c, include/ircterm.h: 930 return void for tputs_x(), term_beep(), term_cr(), 931 term_underline_on(), term_underline_off(), 932 term_standout_on(), term_standout_off(), 933 term_clear_screen(), term_move_cursor(), 934 term_newline(), term_bold_on(), and term_bold_off(). 935 fixes build issues on NetBSD 5.x. 936 937Mon Aug 25 12:19:46 PDT 2014 - matthew green <mrg@eterna.com.au> 938 doc/ircII.1: 939 convert to mandoc format. from Thomas Klausner 940 <tk@giga.or.at>. fix a couple of errors while there. 941 942Mon Aug 25 11:48:55 PDT 2014 - matthew green <mrg@eterna.com.au> 943 source/input.c, source/translat.c: 944 fix compliation issues when iconv can't be found. 945 946Mon Aug 25 11:21:20 PDT 2014 - matthew green <mrg@eterna.com.au> 947 source/server.c: 948 fix argument order in connect_to_server_direct. 949 from Jared McNeill. 950 source/irc.c: 951 various fixes to option parsing. from Jared McNeill. 952 95320140824 954Sun Aug 24 21:40:26 PDT 2014 - matthew green <mrg@eterna.com.au> 955 source/ssl.c: 956 rewrite ssl_setup_certs() to keep track of what paths/files 957 it has seen before, and only update stuff when they change. 958 if neither SSL_CA_PATH nor SSL_CA_FILE are set, call 959 SSL_CTX_set_default_verify_paths(). this enables the default 960 ssl certificates to be used, freeing the end-user from having 961 to know the paths to set. 962 help/set/ssl_ca_path: 963 add an example for SET SSL_CA_PATH. 964 965Sun Aug 24 20:41:30 PDT 2014 - matthew green <mrg@eterna.com.au> 966 doc/ircii.spec: 967 make this actually work with sources from today that come 968 in a tarball with todays date. 969 970Sun Aug 24 20:28:01 PDT 2014 - matthew green <mrg@eterna.com.au> 971 Makefile.in: 972 avoid double $(DESTDIR) for mandir setting. 973 974Sun Aug 24 14:35:26 PDT 2014 - matthew green <mrg@eterna.com.au> 975 doc/ircii.spec: 976 updates from Jared McNeill and myself. 977 978Wed Aug 20 22:27:39 PDT 2014 - matthew green <mrg@eterna.com.au> 979 include/server.h, source/server.c: 980 finish HTTP proxy support by parsing the HTTP reply. 981 982Thu Aug 14 01:02:28 PDT 2014 - matthew green <mrg@eterna.com.au> 983 doc/ircII.1, include/debug.h, include/server.h, include/window.h, 984 source/debug.c, source/edit.c, source/irc.c, source/server.c, 985 source/window.c: 986 add HTTP proxy support. new "proxy" debug level, add 987 proxy name and port arguments to parse_server_info() and 988 window_get_connected(). new default proxy server/port 989 available via "-R server:port" option. each server can 990 also take "NO_PROXY/" prefix (similar to ICB/, etc.) or 991 take a "PROXY/<server>:<port>/" to enforce a particular 992 proxy usage for this server. /server and /window server 993 also gain a "-proxy server port" option. 994 currently, this does not wait for the valid HTTP response 995 before attempting to connect, but works otherwise. 996 997Wed Aug 13 18:55:47 PDT 2014 - matthew green <mrg@eterna.com.au> 998 source/window.c: 999 bring back the old recalculate_windows() but call it 1000 balance_windows(), and use it for /window balance. 1001 1002Wed Aug 13 18:48:58 PDT 2014 - matthew green <mrg@eterna.com.au> 1003 include/irccrypt.h, source/crypt.c, source/dcc.c: 1004 move CRYPT_BUFFER_SIZE into irccrypt.h from both crypt.c 1005 and dcc.c. adjust code to use "long long" type now we 1006 demand c99, and remove some XXXs. 1007 source/numbers.c: 1008 use parsing_server() like the XXX comment says. 1009 1010Wed Aug 13 18:44:57 PDT 2014 - matthew green <mrg@eterna.com.au> 1011 source/irc.c: 1012 ensure help text goes to stderr, even if we've parsed 1013 a "-o log" debug option. 1014 1015Tue Aug 12 17:22:05 PDT 2014 - matthew green <mrg@eterna.com.au> 1016 source/irc.c: 1017 alpha-order the help text options. 1018 101920140806 1020Wed Aug 6 18:16:33 PDT 2014 - matthew green <mrg@eterna.com.au> 1021 include/debug.h, source/debug.c: 1022 add DB_WINDOW debug level. 1023 include/screen.h, source/screen.c: 1024 add screen_get_old_co() and screen_get_old_li() accessors. 1025 source/window.c: 1026 rewrite recalculate_windows() to attempt to keep the same 1027 proportionality. 1028 1029Wed Aug 6 13:11:14 PDT 2014 - matthew green <mrg@eterna.com.au> 1030 source/window.c: 1031 fix the "channel already bound" message to tell you which 1032 window has it bound, rather than this window. 1033 1034Wed Aug 6 12:46:33 PDT 2014 - matthew green <mrg@eterna.com.au> 1035 script/icb: 1036 add /stats command support 1037 include/ircaux.h, source/ircaux.c, source/alias.c: 1038 make my_str*icmp() use const. 1039 include/server.h, source/icb.c, source/server.c: 1040 introduce private server data, with a call back to 1041 free it. use this in icb to make the 1042 icb_got_group_waiting_for_members variable per-server. 1043 apply some const. 1044 104520140711 1046Fri Jul 11 04:29:33 PDT 2014 - matthew green <mrg@eterna.com.au> 1047 help/set/ssl_ca_chain_file, help/set/ssl_ca_file, 1048 help/set/ssl_ca_path, help/set/ssl_ca_private_key_file, 1049 include/config.h.dist, include/ssl.h, include/vars.h, 1050 source/ssl.c, source/vars.c: 1051 add 4 variables to control the inputs to 1052 SSL_CTX_load_verify_locations() - SSL_CA_FILE and 1053 SSL_CA_PATH, SSL_CTX_use_certificate_chain_file() - 1054 SSL_CA_CHAIN_FILE, and SSL_CTX_use_PrivateKey_file() - 1055 SSL_CA_PRIVATE_KEY_FILE. they have NULL defaults so 1056 that the normal defaults are loaded. not tested against 1057 a real server etc, yet. 1058 1059Fri Jul 11 03:45:49 PDT 2014 - matthew green <mrg@eterna.com.au> 1060 include/server.h, source/server.c: 1061 add 2 new server flags CONNECTED and SSL_DONE, use them 1062 to distinguish between when we've finished the non-blocking 1063 connect and when SSL negotiation has completed to avoid 1064 spinning the CPU. call login_to_server() instead of 1065 server_check_ssl() in the fd is readable section of 1066 do_server(), which now ensures SSL_connect() is not called 1067 after it returns success. move some non blocking code 1068 around to suit this separation as well. 1069 1070Fri Jul 11 02:50:36 PDT 2014 - matthew green <mrg@eterna.com.au> 1071 include/ssl.h, source/ircio.c, source/newio.c, source/ssl.c: 1072 remove unnecessary ssl_is_pending(). 1073 1074Fri Jul 11 02:01:29 PDT 2014 - matthew green <mrg@eterna.com.au> 1075 include/ssl.h, source/server.c, source/ssl.c: 1076 change ssl init status returns into a tri-state OK, FAIL, 1077 and PENDING. use this in ssl_init_connection() and also 1078 in server_check_ssl() to not cpu-spin calling SSL_connect() 1079 until it works. however, select() seems to continue to 1080 return readable for the fd, and we do loop anyway, but with 1081 other events still handled. still a CPU issue, but no 1082 longer a hangs everything issue. 1083 source/server.c, source/dcc.c, source/irc.c, source/ircio.c, 1084 source/newio.c: 1085 convert dgets() to return -2 in the case of "retry again" 1086 later returns for SSL_read() and SSL_write() calls, bubble 1087 this upto many dgets() callers and allow them to continue. 1088 1089Thu Jul 10 19:23:24 PDT 2014 - matthew green <mrg@eterna.com.au> 1090 source/server.c: 1091 move the guts of the code to reestablish the old server if 1092 a new server can't connect into a new function, and call 1093 that if ssl init fails hard (verify fails), leaving us 1094 still connected to the original server. 1095 1096Wed Jul 9 21:19:47 PDT 2014 - matthew green <mrg@eterna.com.au> 1097 doc/ircII.1: 1098 add missing options, including debug-only options. 1099 source/server.c: 1100 change server_check_ssl() to return a status. use this to 1101 avoid calling close_server() on the previous server, so we 1102 can return to it. 1103 source/ssl.c: 1104 only create one SSL_CTX. 1105 1106Wed Jul 9 20:20:47 PDT 2014 - matthew green <mrg@eterna.com.au> 1107 doc/ircII.1: 1108 alpha-order the option list and descriptions. 1109 1110Wed Jul 9 20:07:44 PDT 2014 - matthew green <mrg@eterna.com.au> 1111 source/ssl.c: 1112 enable SSL verification support. fix a bug in the error path. 1113 doc/ircII.1: 1114 document the SSLIRC*/ server prefixes. reorder the nickname 1115 and servername for reality. 1116 111720140709 1118Wed Jul 9 06:40:13 PDT 2014 - matthew green <mrg@eterna.com.au> 1119 include/server.h, source/edit.c, source/irc.c, source/server.c, 1120 doc/ircII.1, help/server,help/window/server: 1121 add new server_default_encryption() to set the default 1122 encryption level for a particular protocol. so far only 1123 IRC is supported. valid values are "check", "nocheck" 1124 and "off". make sure server_ssl_level values are properly 1125 initialised before use. make the default for irc use 1126 new irc_ssl_level. update help files for ssl support, 1127 and some older /window server options. 1128 source/irc.c: 1129 alpha-order parse_arg() switch. 1130 1131Fri Jul 4 22:06:46 PDT 2014 - matthew green <mrg@eterna.com.au> 1132 include/config.h.dist, source/irc.c: 1133 remove PAUSE_AFTER_MOTD options; always enable this code. 1134 redo input_pause() to not use irc_io() and clean up irc_io() 1135 and its' helper functions now that one_key is never true. 1136 include/output.h, include/screen.h, include/server.h, 1137 source/output.c, source/server.c: 1138 constify the first argument to put_it(), send_to_server(), 1139 say(), yell(), help_put_it() and output_line(). 1140 1141Fri Jul 4 20:05:34 PDT 2014 - matthew green <mrg@eterna.com.au> 1142 Makefile.inc, configure, configure.in, include/defs.h.in, source/ssl.c: 1143 add support for --with-openssl switch. it defaults to on 1144 and expects to find libcrypto and libssl. enable support 1145 for building without openssl by eliding most of ssl.c. 1146 1147Fri Jul 4 06:51:19 PDT 2014 - matthew green <mrg@eterna.com.au> 1148 source/ssl.c: 1149 handle errors properly when trying to setup the connection. 1150 don't leak memory. 1151 source/server.c: 1152 only close the connection if we actually were trying 1153 to use SSL here. 1154 115520140704 1156Fri Jul 4 05:28:46 PDT 2014 - matthew green <mrg@eterna.com.au> 1157 source/server.c: 1158 goto real_continue when continuing the main do_server() 1159 loop, to ensure the dgets separater is reset. fix a 1160 comment to match the code (from rtr.) 1161 include/ssl.h, source/ircio.c, source/newio.c, source/ssl.c: 1162 introduce ssl_is_pending() wrapper around SSL_pending() 1163 and use it in new_select() to make sure we read from 1164 the SSL socket. expand ssl_print_error_queue() to take 1165 a const char *msg as well. set SSL_MODE_AUTO_RETRY. 1166 1167Fri Jul 4 05:11:40 PDT 2014 - matthew green <mrg@eterna.com.au> 1168 source/debug.c: 1169 include date/time in the debugging messages. 1170 1171Thu Jul 3 09:57:38 PDT 2014 - tyler retzlaff <rtr@crt0.ca> 1172 source/ssl.c: 1173 use SSLv2_client_method when establishing a context 1174 for connection to a server. 1175 properly evaluate SSL_connect return value 0 is also 1176 an error. 1177 1178Tue Jul 1 21:59:33 PDT 2014 - matthew green <mrg@eterna.com.au> 1179 source/newio.c: 1180 clean up some. 1181 1182Tue Jul 1 21:37:27 PDT 2014 - matthew green <mrg@eterna.com.au> 1183 source/crypt.c: 1184 use size_t over int in a few places 1185 1186Tue Mar 18 17:26:59 PDT 2014 - matthew green <mrg@eterna.com.au> 1187 include/debug.h, include/ssl.h, source/debug.c, source/ircio.c, 1188 source/newio.c, source/server.c, source/ssl.c: 1189 add newio, ssl and server debug levels. expand the 1190 ssl_read()/ssl_write() functions to also take an fd, 1191 and use it instead of keeping it in the SslInfo. fix 1192 the ircio build. call init_io() from init_io_rec(). 1193 only call dgets_clear_ssl_info()/ssl_close_connection() 1194 if the ssl info actually exists. move the call to 1195 ssl_init_connection() into new server_check_ssl() and 1196 call this from a couple of places. actually use 1197 ssl_read() and ssl_write(). 1198 1199Mon Mar 17 17:29:15 PDT 2014 - matthew green <mrg@eterna.com.au> 1200 Makefile.in, include/newio.h, include/server.h, include/window.h, 1201 source/edit.c, source/newio.c, source/server.c, source/window.c: 1202 SSL support stage 1. this works for non-SSL still, but 1203 has trouble connecting to SSL servers. there are some 1204 new switches, etc. /window server and /server both have 1205 new -ssl, -nossl, and -sslnocheck options. server names 1206 can now have SSLIRC/ and SSLIRCNOCHECK/ prefixes in 1207 addition to the existing IRC/ and ICB/ prefixes. expand 1208 dgets() and server to deal with calling the SSL functions. 1209 todo: 1210 - configure support to find openssl 1211 - if SSL init fails, revert to previous server 1212 - send_to_server() needs help 1213 - close_server() needs help 1214 - actually verify the certificate against something (we 1215 have no methods to pass cert files/dirs in yet) 1216 - documentation updates 1217 121820140317 1219Mon Mar 17 13:51:05 PDT 2014 - matthew green <mrg@eterna.com.au> 1220 source/edit.c: 1221 make meta4 sticky again. 1222 configure.in, configure: 1223 use AC_PREREQ([2.69]). 1224 1225Mon Mar 17 11:46:32 PDT 2014 - matthew green <mrg@eterna.com.au> 1226 configure, configure.in, include/defs.h.in, include/irc.h, 1227 include/irc_std.h, include/ircterm.h, source/crypt.c, source/irc.c, 1228 source/ircflush.c, source/status.c, source/term.c, source/wserv.c: 1229 retire RETSIGTYPE and the AC_TYPE_SIGNAL test that has 1230 actually been obsolete in ircii since 2004. 1231 123220140314 1233Fri Mar 14 14:17:48 PDT 2014 - matthew green <mrg@eterna.com.au> 1234 Makefile.in, include/crypt.h, include/irccrypt.h, 1235 source/cipher-test.c, source/crypt.c, source/ctcp.c, source/dcc.c, 1236 source/edit.c, source/parse.c, source/vars.c 1237 rename include/crypt.h as include/irccrypt.h to avoid 1238 <crypt.h> including this header, not the header that 1239 defines crypt(3). 1240 1241Fri Mar 14 12:14:10 PDT 2014 - matthew green <mrg@eterna.com.au> 1242 doc/example_menu, help/!, help/input, help/menus, help/wait, 1243 help/alias/special, include/input.h, include/irc.h, 1244 include/keys.h, include/server.h, script/autoquery, 1245 script/bigcheese, script/kickmenu, script/log, script/time, 1246 script/troy, script/version, source/alias.c, source/edit.c, 1247 source/exec.c, source/help.c, source/input.c, source/irc.c, 1248 source/keys.c, source/server.c: 1249 remove support for $"..." expansions and /wait without 1250 -cmd, and convert all the remaining distribution scripts 1251 and menus to use /input and /wait -cmd. remove 1252 documentation for both. move the input_pause() function 1253 into irc.c. this removes all irc_io() abuse. remove 1254 a lot of no longer necessary code in irc_io() including 1255 the ability to be called recursively, and make it static 1256 to irc.c. more could go if input_pause() is reworked. 1257 remove get_send_line(), change_send_line(), server_waiting(), 1258 server_waiting_inc(), server_waiting_dec(), lame_wait_nick[], 1259 wait_index, set_wait_process(), and break_io_processing(), 1260 and the waiting member of Server structure. 1261 1262Fri Mar 14 01:11:59 PDT 2014 - matthew green <mrg@eterna.com.au> 1263 configure, configure.in, include/cast_sbox.h, include/defs.h.in, 1264 include/irc_std.h, source/cast.c, source/dcc.c: 1265 stop finding a 32 bit integer in configure and just assume 1266 that uint32_t exists from <stdint.h>. remove tests for 1267 missing errno and sys_errlist[] declarations; these systems 1268 probably stopped working with C89 was enforced 10 years ago. 1269 1270Fri Mar 14 01:04:03 PDT 2014 - matthew green <mrg@eterna.com.au> 1271 include/debug.h, source/debug.c, source/edit.c, source/history.c, 1272 source/input.c, source/irc.c, source/lastlog.c, source/output.c, 1273 source/screen.c, source/status.c, source/window.c: 1274 remove the old K&R/C89 compatible Debug() macros and 1275 re-implement it with C99 varadic macro support. use this 1276 to easily add the function/line number to the output. 1277 convert debug level to debug sets, and implement sets for 1278 scroll, load, history, cursor, ircio, lastlog, window 1279 create and the status bar. 1280 1281Thu Mar 13 21:14:09 PDT 2014 - matthew green <mrg@eterna.com.au> 1282 doc/Copyright, help/ircii/copyright, help/note/antiwall, 1283 help/note/deny, help/note/flag, help/note/key, help/note/news, 1284 help/note/note, help/note/save, help/note/sent, help/note/service, 1285 help/note/stats, help/note/wall, help/note/wallops, source/help.c: 1286 remove support for /help files knowing whether you're an 1287 IRC operator or not, and adjust the help files to show the 1288 same information to everyone, but note that some 1289 functionality is likely restricted. updated copyrights, 1290 and add the copyrights for sl.[ch]. 1291 1292Wed Mar 12 16:18:45 PDT 2014 - matthew green <mrg@eterna.com.au> 1293 configure, configure.in, Makefile.in, include/irc.h: 1294 use datarootdir over datadir. move the AIX specific code 1295 into irc.h out of configure, it doesn't need to be a 1296 configure-time test. 1297 1298Wed Mar 12 15:40:33 PDT 2014 - matthew green <mrg@eterna.com.au> 1299 configure, configure.in, include/defs.h.in, include/irc.h, 1300 include/irc_std.h, include/scandir.h, source/aes.c, source/alias.c, 1301 source/crypt.c, source/ctcp.c, source/dcc.c, source/debug.c, 1302 source/edit.c, source/exec.c, source/funny.c, source/getaddrinfo.c, 1303 source/getnameinfo.c, source/help.c, source/hook.c, source/irc.c, 1304 source/ircaux.c, source/ircflush.c, source/ircio.c, source/log.c, 1305 source/mail.c, source/mksiginc.c, source/newio.c, source/notice.c, 1306 source/numbers.c, source/output.c, source/scandir.c, source/server.c, 1307 source/snprintf.c, source/term.c, source/translat.c, source/window.c, 1308 source/wserv.c: 1309 major clean up of old compatibility code: 1310 - don't bother checking for unistd.h, string.h, sys/wait.h 1311 or termios.h as we demand they exist for a while now. 1312 - assume uname(3). 1313 - convert all remaining index/rindex/bcopy/bzero calls into 1314 my_index/memcopy/memset calls, and remove any compat code. 1315 - make the scandir compat code depend upon 'struct dirent' 1316 and stop forcing it to exist for some platforms, and call 1317 it 'irc_scandir' to avoid potential conflicts. 1318 - remove repeated #includes of standard headers. 1319 - assume a standard <sys/stat.h>. 1320 - remove "LYNX_STUFF" code for actions. 1321 - use the right types for scandir functions. 1322 - remove /*VARARGS*/ and unused functions. 1323 - always include SERVERS_FILE support. 1324 - remove last vestigates of _IBMR2 and M_UNIX support, and 1325 BROKEN_SCANF support. 1326 - remove dead code in wserv. 1327 -- remove dead and broken CORECATCH and ALLOC_DEBUG code. 1328 132920140311 1330Wed Mar 12 01:48:44 PDT 2014 - matthew green <mrg@eterna.com.au> 1331 acconfig.h, configure, configure.in, include/defs.h.in, source/irc.c: 1332 convert to autoconf 2.69. use AC_CHECK_TYPES(), and fix the 1333 output path for AC_CONFIG_HEADER(). remove now obsolete 1334 acconfig.h. 1335 1336Wed Mar 12 01:41:39 PDT 2014 - matthew green <mrg@eterna.com.au> 1337 acconfig.h, configure, configure.in, include/defs.h.in: 1338 move the all but 'ssize_t' out of acconfig.h, there 1339 doesn't seem to be an easy way to deal with this for 1340 autoconf-2.6x and 2.13 from the same configure.in. 1341 1342Wed Mar 12 01:28:41 PDT 2014 - matthew green <mrg@eterna.com.au> 1343 acconfig.h, configure, configure.in, include/defs.h.in, include/irc.h, 1344 source/newio.c: 1345 remove unset MAIL_DIR. 1346 assume 'struct linger' exists. 1347 move most configure define descriptions into configure.in 1348 from acconfig.h. 1349 make a comment about using <stdint.h> when forcing c99. 1350 1351Wed Mar 12 01:14:26 PDT 2014 - matthew green <mrg@eterna.com.au> 1352 acconfig.h, configure, configure.in, include/defs.h.in, 1353 include/irc_std.h: 1354 remove several unnecessary #undef lines from acconfig.h. 1355 move description for HAVE_GETADDRINFO, HAVE_GETNAMEINFO, 1356 and HAVE_RFC2553_NETDB into configure.in 1357 move the _AIX / COMPAT_43 definition into irc_std.h. 1358 1359Wed Mar 12 01:03:43 PDT 2014 - matthew green <mrg@eterna.com.au> 1360 acconfig.h, configure, configure.in, include/defs.h.in, 1361 include/icb.h, include/irc.h, include/irc_std.h, source/irc.c, 1362 source/ircsig.c, source/mail.c, source/term.c, source/wserv.c: 1363 remove AMS_MAIL (andrew) support. 1364 remove unused BROKEN_GETPGRP. 1365 assume we always have sigaction() and setsid(). 1366 1367Wed Mar 12 00:30:10 PDT 2014 - matthew green <mrg@eterna.com.au> 1368 acconfig.h, configure, configure.in, include/defs.h.in, include/irc.h: 1369 begin to prepare for modern autoconf. move many define 1370 descriptions into configure.in out of acconfig.h. use 1371 AC_CHECK_FUNCS(). move the non blocking check after the 1372 socks check, as socks turns it off. move the defines for 1373 socks into a socks_compat.h, rather than having things be 1374 mostly hard coded in configure.in and acconfig.h. 1375 1376Wed Mar 12 00:25:34 PDT 2014 - matthew green <mrg@eterna.com.au> 1377 configure, configure.in: 1378 add -Wformat to warning options. 1379 1380Wed Mar 12 00:16:55 PDT 2014 - matthew green <mrg@eterna.com.au> 1381 source/edit.c: 1382 break out the extremely deeply nested parts of load() into 1383 a new load_a_file() function. 1384 1385Wed Mar 12 00:14:01 PDT 2014 - matthew green <mrg@eterna.com.au> 1386 include/hook.h, source/edit.c, source/hook.c, source/screen.c: 1387 convert set_in_on_who() to return the old in_on_who value, 1388 and use this to reduce the number of lines in some other code. 1389 1390Tue Mar 11 23:14:55 PDT 2014 - matthew green <mrg@eterna.com.au> 1391 source/alias.c, source/crypt.c, source/edit.c, source/exec.c, 1392 source/funny.c, source/getnameinfo.c, source/help.c, 1393 source/history.c, source/hook.c, source/if.c, source/ignore.c, 1394 source/input.c, source/irc.c, source/keys.c, source/lastlog.c, 1395 source/notify.c, source/numbers.c, source/output.c, source/parse.c, 1396 source/server.c, source/status.c, source/vars.c, source/whois.c, 1397 source/window.c: 1398 remove /*ARGSUSED*/ markers. 1399 source/edit.c: 1400 turn metaX_hit into an array, and adjust the code to use 1401 this to its advantage. 1402 1403Tue Mar 11 22:59:09 PDT 2014 - matthew green <mrg@eterna.com.au> 1404 include/irc.h, include/server.h, source/alias.c, source/dcc.c, 1405 source/edit.c, source/exec.c, source/help.c, source/hook.c, 1406 source/icb.c, source/irc.c, source/names.c, source/notify.c, 1407 source/numbers.c, source/parse.c, source/screen.c, source/server.c, 1408 source/status.c, source/whois.c, source/window.c: 1409 hide from_server. move 'environ' extern into exec.c. 1410 always call set_from_server() with a timer's server. 1411 fix a missing re-set of from_server in some commented out 1412 code in bind_channel(). 1413 1414Tue Mar 11 04:18:57 PDT 2014 - matthew green <mrg@eterna.com.au> 1415 include/irc.h, source/alias.c, source/ctcp.c, source/dcc.c, 1416 source/edit.c, source/exec.c, source/help.c, source/history.c, 1417 source/hook.c, source/icb.c, source/if.c, source/ignore.c, 1418 source/input.c, source/irc.c, source/ircaux.c, source/keys.c, 1419 source/menu.c, source/names.c, source/notice.c, source/notify.c, 1420 source/numbers.c, source/output.c, source/parse.c, source/queue.c, 1421 source/screen.c, source/server.c, source/status.c, source/term.c, 1422 source/vars.c, source/whois.c, source/window.c: 1423 fix zero[] and one[] to be persistent. convert 1424 empty_string[] into empty_string(). 1425 1426Tue Mar 11 04:15:14 PDT 2014 - matthew green <mrg@eterna.com.au> 1427 include/irc.h, source/alias.c, source/input.c, source/irc.c: 1428 remove use_input global that was always 1. 1429 1430Tue Mar 11 02:38:02 PDT 2014 - matthew green <mrg@eterna.com.au> 1431 include/irc.h, source/edit.c, source/irc.c, source/notice.c: 1432 hide ircrc_file. 1433 1434Tue Mar 11 02:07:54 PDT 2014 - matthew green <mrg@eterna.com.au> 1435 include/irc.h, source/alias.c, source/dcc.c, source/edit.c, 1436 source/irc.c, source/ircaux.c, source/names.c, source/parse.c, 1437 source/window.c: 1438 make zero[] and one[] into zero() and one(). 1439 1440Tue Mar 11 01:59:08 PDT 2014 - matthew green <mrg@eterna.com.au> 1441 include/edit.h, include/irc.h, include/server.h, source/alias.c, 1442 source/dcc.c, source/edit.c, source/exec.c, source/icb.c, 1443 source/irc.c, source/names.c, source/notice.c, source/notify.c, 1444 source/numbers.c, source/parse.c, source/server.c, source/status.c, 1445 source/whois.c, source/window.c: 1446 hide invite_channel, ircquick_file and primary_server. 1447 remove now never non-zero break_io_processing, and export 1448 new break_io_processing() for now hidden irc_io_loop. 1449 1450Tue Mar 11 00:04:38 PDT 2014 - matthew green <mrg@eterna.com.au> 1451 source/cipher-test.c, source/dcc.c, source/debug.c, source/edit.c, 1452 source/help.c, source/if.c, source/ircflush.c, source/ircsig.c, 1453 source/keys.c, source/log.c, source/mail.c, source/menu.c, 1454 source/output.c, source/reg.c, source/term.c, source/translat.c, 1455 source/vars.c, source/wserv.c: 1456 apply static to various variables that are already only 1457 accessed locally. update copyrights. 1458 1459Mon Mar 10 23:39:44 PDT 2014 - matthew green <mrg@eterna.com.au> 1460 doc/ircII.1, include/irc.h, include/server.h, source/alias.c, 1461 source/dcc.c, source/edit.c, source/help.c, source/input.c, 1462 source/irc.c, source/notice.c, source/numbers.c, source/parse.c, 1463 source/screen.c, source/server.c, source/status.c, source/term.c, 1464 source/window.c: 1465 rename "dumb" mode as "non full screen" mode. hide the 1466 old "dumb" variable as term_basic(). make oper_command 1467 a per-server function, allowing multiple concurrent 1468 /oper and server connections to occur. hide args_str() 1469 and nickname. server_[gs]et_who_info() don't need an 1470 "int server" argument. 1471 1472Mon Mar 10 23:38:34 PDT 2014 - matthew green <mrg@eterna.com.au> 1473 include/hook.h, include/irc.h, source/edit.c, source/exec.c, 1474 source/hook.c, source/irc.c: 1475 hide send_text_flag. 1476 1477Mon Mar 10 23:10:41 PDT 2014 - matthew green <mrg@eterna.com.au> 1478 include/server.h, source/alias.c, source/ctcp.c, source/exec.c, 1479 source/funny.c, source/icb.c, source/names.c, source/notice.c, 1480 source/numbers.c, source/parse.c, source/server.c, source/whois.c: 1481 hide parsing_server_index via parsing_server(). 1482 1483Mon Mar 10 12:25:48 PDT 2014 - matthew green <mrg@eterna.com.au> 1484 include/edit.h, include/irc.h, source/alias.c, source/ctcp.c, 1485 source/dcc.c, source/edit.c, source/icb.c, source/input.c, 1486 source/irc.c, source/ircaux.c, source/mail.c, source/numbers.c, 1487 source/parse.c, source/server.c, source/vars.c, source/whois.c: 1488 move alias_buffer() and cut_buffer[] into edit.c and make 1489 cut_buffer static in there. hide hostname[], username[], 1490 realname[], away_set, irc_lib and source_host, send_umode. 1491 move set_realname() into irc.c. delete obsolete do_fork. 1492 mark some previously missed variables static. 1493 1494Sun Mar 9 17:16:26 PDT 2014 - matthew green <mrg@eterna.com.au> 1495 include/irc.h, source/irc.c, source/ircaux.c, source/mail.c: 1496 hide my_path() and add some missing static. 1497 1498Sun Mar 9 01:35:41 PST 2014 - matthew green <mrg@eterna.com.au> 1499 include/edit.h, include/irc.h, include/server.h, source/edit.c, 1500 source/irc.c, source/numbers.c, source/parse.c, source/server.c, 1501 source/term.c: 1502 convert who_mask, who_name, who_host, who_server, who_file, 1503 who_nick, who_real and cannot_open into per-server values 1504 under a WhoInfo structure hidden inside edit.c. move a big 1505 chunk of whoreply() from numbers.c into edit.c. this enables 1506 /who -<options> to work concurrently on multiple servers as 1507 well. hide use_flow_control, tflag, qflag and bflag. fix a 1508 bug in /disconnect where it would cause irc to exit. 1509 1510Thu Mar 6 17:54:55 PST 2014 - matthew green <mrg@eterna.com.au> 1511 include/dcc.h, include/irc.h, include/notify.h, include/server.h, 1512 source/alias.c, source/ctcp.c, source/dcc.c, source/edit.c, 1513 source/irc.c, source/notify.c, source/screen.c, source/server.c, 1514 source/status.c, source/vars.c: 1515 hide irc_version, last_notify_nick, program_name, idle_time, 1516 client_default_icb and dcc_source_host. move set_dcchost() 1517 into dcc.c where it belongs. convert 'waiting' into a 1518 per-server thing with real accessors. 1519 152020140306 1521Thu Mar 6 15:38:13 PST 2014 - matthew green <mrg@eterna.com.au> 1522 source/ircaux.c, source/server.c: 1523 let connect_by_number() keep errno a valid number if it 1524 fails to call socket() or bind(). remove bind_local_addr()'s 1525 unused 2nd argument. support IPv6 addresses and port numbers 1526 in here as well. in connect_to_server_direct(), if 1527 connect_by_number() returns -1, keep errno, and save it around 1528 a ouple of other calls that might reset it. 1529 1530Thu Mar 6 13:46:07 PST 2014 - matthew green <mrg@eterna.com.au> 1531 include/screen.h, source/alias.c, source/ctcp.c, source/dcc.c, 1532 source/edit.c, source/hook.c, source/if.c, source/irc.c, 1533 source/ircaux.c, source/names.c, source/newio.c, source/queue.c, 1534 source/screen.c, source/server.c, source/term.c, source/whois.c, 1535 source/window.c: 1536 hide in_redirect and in_ctcp_flag. remove 'extern' 1537 declarations where they're not needed. 1538 1539 1540Mon Mar 3 10:48:15 PST 2014 - matthew green <mrg@eterna.com.au> 1541 include/alias.h, include/irc.h, include/output.h, include/server.h, 1542 include/window.h, source/alias.c, source/edit.c, source/exec.c, 1543 source/help.c, source/hook.c source/icb.c, source/if.c, source/irc.c, 1544 source/output.c, source/parse.c, source/server.c, source/window.c: 1545 hide joined_nick, public_nick, using_server_process 1546 and window_display. 1547 1548Sun Mar 2 02:47:30 PST 2014 - matthew green <mrg@eterna.com.au> 1549 include/screen.h, source/edit.c, source/help.c, source/input.c, 1550 source/irc.c, source/output.c, source/screen.c, source/server.c, 1551 source/status.c, source/term.c, source/translat.c, source/window.c: 1552 hide to_window, current_screen, main_screen and 1553 last_input_screen. 1554 1555 1556Sat Mar 1 21:42:55 PST 2014 - matthew green <mrg@eterna.com.au> 1557 include/ignore.h, source/icb.c, source/ignore.c, source/notice.c, 1558 source/parse.c, source/whois.c: 1559 hide ignore_usernames and highlight_char. remove code that 1560 assumed that highlight_char was followed by a nul byte. 1561 1562Sat Mar 1 21:27:27 PST 2014 - matthew green <mrg@eterna.com.au> 1563 include/translat.h, include/window.h, source/input.c, source/names.c, 1564 source/output.c, source/screen.c, source/translat.c, source/window.c: 1565 hide irc_encoding, display_encoding, input_encoding, 1566 who_level and who_from. obsolete in_window_command by always 1567 calling update_all_windows() in windowcmd(). 1568 156920140228 1570Fri Feb 28 19:57:13 PST 2014 - matthew green <mrg@eterna.com.au> 1571 include/hook.h, include/parse.h, source/alias.c, source/ctcp.c, 1572 source/edit.c, source/exec.c, source/hook.c, source/icb.c, 1573 source/notice.c, source/parse.c, source/screen.c: 1574 hide in_on_who, FromUserHost and doing_privmsg. 1575 1576Fri Feb 28 17:23:17 PST 2014 - matthew green <mrg@eterna.com.au> 1577 include/edit.h, include/output.h, include/translat.h, include/vars.h, 1578 include/whois.h, source/alias.c, source/ctcp.c, source/dcc.c, 1579 source/edit.c, source/hook.c, source/icb.c, source/irc.c, 1580 source/keys.c, source/log.c, source/notice.c, source/output.c, 1581 source/parse.c, source/screen.c, source/status.c, source/translat.c, 1582 source/vars.c, source/whois.c, source/window.c: 1583 convert loading_global and var_settings into a functions. 1584 move the code to load "global" into its own function called 1585 from two source files. hide irclog_fp, load_depth, 1586 my_echo_set_message_from and beep_on_level. change 1587 add_to_log() to convert fp == NULL internal to set fp equal 1588 irclog_fp, removing the need for it to be public. 1589 remove unnecessary externs for dig_table_*[] and move 1590 DIG_TABLE_SIZE into translat.c itself. 1591 1592Fri Feb 28 15:32:35 PST 2014 - matthew green <mrg@eterna.com.au> 1593 include/irc.h, include/numbers.h, source/alias.c, source/edit.c, 1594 source/funny.c, source/irc.c, source/numbers.c, source/whois.c: 1595 hide background, irc_path, whois_nick and current_numeric. 1596 remove unused whois_nick and move wait_nick into edit.c. 1597 1598Fri Feb 28 02:40:17 PST 2014 - matthew green <mrg@eterna.com.au> 1599 include/ctcp.h, include/ircterm.h, include/output.h, 1600 include/window.h, source/ctcp.c, source/irc.c, source/notice.c, 1601 source/output.c, source/parse.c, source/screen.c, source/term.c, 1602 source/whois.c, source/window.c: 1603 hide ctcp_was_crypted, term_reset_flag, underline, 1604 do_refresh_screen and in_help. remove redirect_nick[]. 1605 convert the term_*() function pointers into real 1606 functions with the pointer variables local to term.c. 1607 1608Fri Feb 28 02:34:02 PST 2014 - matthew green <mrg@eterna.com.au> 1609 source/edit.c: 1610 fix the handling of promptlist insertion in add_wait_prompt(). 1611 1612Fri Feb 28 02:14:10 PST 2014 - matthew green <mrg@eterna.com.au> 1613 source/edit.c: 1614 fix the handling of edit_char() and the promptlist. 1615 1616Thu Feb 27 17:20:23 PST 2014 - matthew green <mrg@eterna.com.au> 1617 include/ctcp.h, include/debug.h, include/exec.h, include/icb.h, 1618 include/irc.h, include/irc_std.h, include/screen.h, include/server.h, 1619 source/alias.c, source/ctcp.c, source/dcc.c, source/debug.c, 1620 source/edit.c, source/exec.c, source/icb.c, source/irc.c, 1621 source/lastlog.c, source/mkmksiginc.pl, source/mksiginc.c, 1622 source/names.c, source/notice.c, source/numbers.c, source/parse.c, 1623 source/screen.c, source/server.c, source/status.c, source/window.c: 1624 hide ctcp_type[], debuglevel, signals[], max_signo, icb_port, 1625 irc_port, screen_list, connected_to_server, and never_connected. 1626 introduce an ARRAY_SIZE() macro and use it in 4 places. some 1627 minor constification. 1628 1629Wed Feb 26 13:42:02 PST 2014 - matthew green <mrg@eterna.com.au> 1630 include/edit.h, include/newio.h, include/server.h, include/status.h, 1631 source/alias.c, source/dcc.c, source/edit.c, source/icb.c, 1632 source/irc.c, source/names.c, source/newio.c, source/numbers.c, 1633 source/parse.c, source/server.c, source/status.c, source/window.c: 1634 convert number_of_servers into a function call. hide 1635 sent_nick, sent_body and recv_nick. move all the processing 1636 around do_status_alarmed into status.c, and rename 1637 real_status_alarmed() as check_status_alarmed(). convert 1638 dgets_errno into a function call. 1639 1640Tue Feb 25 16:59:37 PST 2014 - matthew green <mrg@eterna.com.au> 1641 Makefile.in, configure, configure.in: 1642 add three new configure flags: 1643 --with-debugging[=flags] Build with debugging support. 1644 --with-warnings[=flags] Build with GCC warnings. 1645 --with-warning-errors[=flags] Turn warnings into errors. 1646 that really are just extra CFLAGS, with sane defaults. 1647 1648Tue Feb 25 15:24:14 PST 2014 - matthew green <mrg@eterna.com.au> 1649 include/ircterm.h, include/keys.h, include/translat.h, include/window.h, 1650 source/edit.c, source/keys.c, source/term.c: 1651 convert term macros into real functions, and hide the termcap 1652 values all inside term.c. move the accesses of key_names[], 1653 keys[] and meta[1-8]_keys[] into keys.c directly with a couple 1654 of accessors. remove no longer present variable externs. 1655 put the keys*[] arrays at the start of keys.c where i've always 1656 looked for them, and they're now needed to avoid forward decls. 1657 1658Tue Feb 25 09:59:54 PST 2014 - matthew green <mrg@eterna.com.au> 1659 include/edit.h, include/screen.h, source/alias.c, source/edit.c, 1660 source/funny.c, source/help.c, source/input.c, source/irc.c, 1661 source/menu.c, source/output.c, source/screen.c, source/status.c, 1662 source/term.c, source/translat.c, source/window.c: 1663 hide Screen entirely inside screen.c. move a bunch of 1664 the data inside edit.c as EditInfo, add accessor for 1665 the remaining members: promptlist, next, window_stack, 1666 curosr_window, and size info. remove unused prev member. 1667 replace "screen_get_redirect_token(current_screen)" with 1668 "get_redirect_token()". simplify promptlist handling. 1669 1670Tue Feb 25 02:49:36 PST 2014 - matthew green <mrg@eterna.com.au> 1671 Makefile.in, include/config.h.dist, include/vars.h, source/screen.c, 1672 source/vars.c: 1673 make WSERV_PATH a real variable you can /set. 1674 source/wserv.c: 1675 fix bugs in SIGWINCH handler that no longer exits upon 1676 select(2) returning EINTR. 1677 1678Tue Feb 25 01:46:07 PST 2014 - matthew green <mrg@eterna.com.au> 1679 include/screen.h, include/window.h, source/output.c, source/screen.c, 1680 source/status.c, source/window.c: 1681 hide more of Screen: 1682 - hide current_window, last_window_refnum, cursor_window, 1683 visible_windows, fdin, fpout 1684 - remove fpin, as it is set but unused otherwise 1685 - use number_of_windows() in several places 1686 fix problems with Debug() code since Window was hidden 1687 source/screen.c: 1688 fix a fd leak if accept() fails in /window create. handle 1689 the case of fdopen() fails in /window create (fixes crash.) 1690 set program_name, for when screen/wserv want to use it. 1691 for now, remove the not ready code in wserv.c for screen 1692 that is causing it to crash. 1693 source/irc.c: 1694 add usage info for -DDEBUG compiles as well 1695 1696Mon Feb 24 23:00:39 PST 2014 - matthew green <mrg@eterna.com.au> 1697 include/screen.h, include/window.h, source/alias.c, source/edit.c, 1698 source/help.c, source/input.c, source/irc.c, source/output.c, 1699 source/screen.c, source/window.c: 1700 begin to hide Screen: 1701 - fpin/fdout - already hidden 1702 - renames wservio to wserv_fd and hides it 1703 - redirect_* - already hidden 1704 - hides screennum, current_window, alive, visible_windows, 1705 window_list, window_list_end and inputdata 1706 - make curr_scr_win a macro in front of 1707 screen_get_current_window() and introduce 1708 set_curr_scr_win() macro. 1709 - add window_get_prev() 1710 171120140221 1712Fri Feb 21 05:54:40 PST 2014 - matthew green <mrg@eterna.com.au> 1713 source/server.c: 1714 fix a bug in server_get_whois_stuff() that was 1715 causing crashes. 1716 1717Fri Feb 21 03:53:52 PST 2014 - matthew green <mrg@eterna.com.au> 1718 source/irc.c: 1719 check USER before the password file. it's 2014. 1720 172120140220 1722Fri Feb 21 03:20:42 PST 2014 - matthew green <mrg@eterna.com.au> 1723 include/window.h, source/help.c, source/irc.c, source/names.c, 1724 source/output.c, source/screen.c, source/status.c, source/window.c: 1725 move Window into window.c itself. add missing accessors 1726 for hold_mode, nicks, hold_info and a passthrough for 1727 nicks_has_who_from(). 1728 1729Fri Feb 21 03:05:50 PST 2014 - matthew green <mrg@eterna.com.au> 1730 include/window.h, source/alias.c, source/help.c, source/hold.c, 1731 source/menu.c, source/output.c, source/window.c: 1732 add accessors for Window's top, bottom, cursor, line_cnt, 1733 scroll, display-size, visible and update members. 1734 1735Fri Feb 21 02:17:39 PST 2014 - matthew green <mrg@eterna.com.au> 1736 include/window.h, source/hold.c, source/output.c, source/status.c, 1737 source/window.c: 1738 add accessors for Window's status_line, double_status, 1739 hold_mode, hold_on_next_rite, scrolled_lines and 1740 new_scrolled_lines. 1741 1742Thu Feb 20 17:02:17 PST 2014 - matthew green <mrg@eterna.com.au> 1743 include/irc.h, include/output.h, include/screen.h, include/window.h, 1744 source/output.c, source/screen.c, source/window.c: 1745 move several functions out of screen.c into window.c or 1746 output.c, based upon who structures they operate on. 1747 output.c gains display_highlight(), display_bold(), 1748 display_colours(), and rite(). 1749 window.c gains Display, ShrinkInfo, scroll_window(). 1750 add_to_window(), scrollback_forwards(), scrollback_backwards(), 1751 scrollback_end(), scrollback_start(), redraw_resized(), 1752 recalculate_windows(), clear_window(), clear_all_windows(), 1753 recalculate_window_positions(), redraw_all_windows(), 1754 resize_display(), free_display(), erase_display(), 1755 split_up_line_alloc(), and window_add_display_line(), plus 1756 some other static functions only used by these. 1757 1758Thu Feb 20 15:43:12 PST 2014 - matthew green <mrg@eterna.com.au> 1759 source/lastlog.c: 1760 fix a segv when scrollback back from some contexts. 1761 include/hold.h, include/window.h, source/edit.c, source/hold.c, 1762 source/menu.c, source/screen.c, source/status.c, source/window.c: 1763 move several parts of Window* into HoldInfo* only visible 1764 in hold.c. several new window functions to wrap the new 1765 or changed hold functions are introduced. 1766 1767Thu Feb 20 02:17:09 PST 2014 - matthew green <mrg@eterna.com.au> 1768 include/names.h, include/window.h, source/menu.c, source/names.c, 1769 source/screen.c, source/status.c, source/window.c: 1770 move all window nick list handling into names.c. 1771 add and use accessors for miscflags, current_channel, 1772 window_level and menu members of Window. create a 1773 window_menu_lines() front end to menu_lines(). 1774 source/crypt.c, source/ignore.c, source/names.c, source/notify.c: 1775 remove verbose uses of negative flags for list operations. 1776 just use zero. 1777 1778Thu Feb 20 01:30:12 PST 2014 - matthew green <mrg@eterna.com.au> 1779 include/lastlog.h, include/window.h, source/lastlog.c, 1780 source/screen.c, source/window.c: 1781 encapsulate the lastlog info in Window into a new 1782 LastlogInfo, and hide accesses to it inside lastlog.c. 1783 add new accessors as needed. 1784 1785Thu Feb 20 00:59:27 PST 2014 - matthew green <mrg@eterna.com.au> 1786 include/window.h, source/alias.c, source/lastlog.c, source/screen.c, 1787 source/server.c, source/status.c, source/window.c: 1788 hide Window's name, prev_server, bound_channel, query_nick, 1789 notify_level, and log*. 1790 1791Tue Feb 18 06:51:07 PST 2014 - matthew green <mrg@eterna.com.au> 1792 include/screen.h, include/window.h, source/alias.c, source/names.c, 1793 source/screen.c, source/server.c, source/status.c, source/window.c: 1794 add window_get_refnum(), window_get_sticky(), 1795 window_set_sticky(), window_get_next() and window_get_screen() 1796 accessors, hiding several Window * members. 1797 move new_window() and create_refnum() into window.c. 1798 1799Mon Feb 17 22:34:42 PST 2014 - matthew green <mrg@eterna.com.au> 1800 include/window.h, source/alias.c, source/edit.c, source/exec.c, 1801 source/names.c, source/screen.c, source/server.c, source/status.c, 1802 source/window.c: 1803 begin to hide Window references. add 3 new functions: 1804 window_get_server(), window_get_server_group(), and 1805 window_server_delete() that return this windows server 1806 or server_group, and deal with reallocating server 1807 numbers after one is deleted. 1808 several clean ups: remove unnecessary braces, fit in 1809 80 cols for many places again. 1810 1811Mon Feb 17 18:13:05 PST 2014 - matthew green <mrg@eterna.com.au> 1812 include/server.h, source/alias.c, source/edit.c, source/icb.c, 1813 source/notice.c, source/parse.c, source/server.c, source/whois.c, 1814 source/window.c: 1815 remove ircd 2.5 support. 1816 1817Sat Feb 15 06:04:17 PST 2014 - matthew green <mrg@eterna.com.au> 1818 Makefile.in, include/alias.h, include/edit.h, include/hook.h, 1819 include/irc.h, include/irc_std.h, include/output.h, 1820 include/server.h, include/stack.h, include/whois.h, 1821 source/edit.c, source/hook.c, source/stack.c: 1822 remove stack.c, and its invasive unfinished hooks in to 1823 the rest of the code. 1824 remove unused struct ArgPosTag. 1825 move Hook, HookFunc and NumericList definitions into hook.c. 1826 stop exporting numeric_list and hook_functions. 1827 move load_depth externs into edit.h. 1828 move WhoisQueue/WhoisStuff typedefs, and struct whois_stuff_stru 1829 into whois.h. 1830 move struct hook_stru, hook_func_stru and numeric_list_stru 1831 into hook.c. 1832 remove some old select(), getenv() and errno compat that 1833 was only good for truly ancient platforms we don't support. 1834 1835Sat Feb 15 04:52:47 PST 2014 - matthew green <mrg@eterna.com.au> 1836 include/window.h, source/alias.c, source/names.c, source/screen.c, 1837 source/server.c, source/status.c, source/window.c: 1838 convert all traverse_all_windows() users to 1839 window_traverse() (ie, the recursively OK version). 1840 rename Win_Trav::flag to Win_Traf::init to more properly 1841 reflect what it means. delete traverse_all_windows(). 1842 1843Fri Feb 14 06:06:40 PST 2014 - matthew green <mrg@eterna.com.au> 1844 include/alias.h, include/crypt.h, include/ctcp.h, include/edit.h, 1845 include/hook.h, include/irc.h, include/keys.h, include/server.h, 1846 include/window.h, source/alias.c, source/ctcp.c, source/edit.c, 1847 source/irc.c, source/server.c, source/whois.c: 1848 make Alias structure private to alias.c. make CtcpFlood 1849 structure private to ctcp.c. move TimerTimeout() into 1850 edit.c as timer_timeout() and make TimerList structure 1851 private to edit.c. make WhoisQueue structure private 1852 to whois.c. make SGroup structure private to server.c. 1853 remove "global" WhoisQueue head/tail, and only allow 1854 whois queue actions on a valid server. fix the one 1855 caller of server_get_qhead() that wasn't prepared to 1856 accept NULL return. 1857 185820140205 1859Wed Feb 5 05:57:20 PST 2014 - matthew green <mrg@eterna.com.au> 1860 source/window.c: 1861 fix window_kill_swap(), it already knows that the window 1862 will exist. don't delete_window() the current window if 1863 passed NULL, just ignore it. 1864 1865Tue Feb 4 23:15:00 PST 2014 - matthew green <mrg@eterna.com.au> 1866 include/irc.h, include/notice.h, include/parse.h: 1867 split out the functions in notice.c and parse.c to their 1868 respective headers, creating notice.h in the process. 1869 1870Tue Feb 4 22:44:18 PST 2014 - matthew green <mrg@eterna.com.au> 1871 include/ctcp.h, include/server.h, source/ctcp.c, source/server.c: 1872 move the per-server ctcp flood info into ctcp.c itself 1873 and access it via struct ctcp_flood_stru / CtcpFlood. 1874 move Server type and struct into server.c itself now 1875 that it is only accessed from server.c. 1876 1877Tue Feb 4 19:33:55 PST 2014 - matthew green <mrg@eterna.com.au> 1878 include/parse.h, include/server.h, source/alias.c, source/ctcp.c, 1879 source/dcc.c, source/edit.c, source/funny.c, source/help.c, 1880 source/icb.c, source/irc.c, source/names.c, source/notice.c, 1881 source/notify.c, source/numbers.c, source/parse.c, source/server.c, 1882 source/status.c, source/whois.c, source/window.c: 1883 move almost all accesses of server_list[] into server.c. 1884 move parse_server() into server.c. rename all 1885 [gs]_server_foo() functions as server_[gs]et_foo() and 1886 introduced many more. replace get_server_localaddr() 1887 and get_server_localaddrlen() with new 1888 server_get_local_ip_info(). 1889 1890Tue Feb 4 04:05:16 PST 2014 - matthew green <mrg@eterna.com.au> 1891 Makefile.in, include/irc.h, include/struct.h: 1892 retire struct.h. move the 3 remaining typedefs into irc.h 1893 itself. 1894 1895Tue Feb 4 03:55:06 PST 2014 - matthew green <mrg@eterna.com.au> 1896 include/edit.h, include/hold.h, include/input.h, include/lastlog.h, 1897 include/menu.h, include/screen.h, include/status.h, include/struct.h, 1898 include/window.h: 1899 move Hold, Lastlog, WindowMenu, WindowStack, Prompt, and 1900 ScreenInputData types into their respective headers. 1901 1902Tue Feb 4 03:29:17 PST 2014 - matthew green <mrg@eterna.com.au> 1903 include/screen.h, include/struct.h, include/window.h: 1904 move struct screen_stru and struct window_stru into 1905 screen.h and window.h respectively. 1906 1907Tue Feb 4 03:11:23 PST 2014 - matthew green <mrg@eterna.com.au> 1908 include/names.h, include/struct.h, source/names.c, source/window.c: 1909 convert ChannelList.connected and ChannelList.status types 1910 into new enums ChanListConnected and ChanListStatus. move 1911 realloc_channels() and swap_channels_win_ptr() from window.c 1912 into names.c (the latter as channel_swap_win_ptr().) 1913 move struct channel_stru into names.c itself now it is only 1914 access from names.c directly. 1915 1916Tue Feb 4 02:48:52 PST 2014 - matthew green <mrg@eterna.com.au> 1917 include/names.h, source/edit.c, source/names.c, source/window.c: 1918 rename channel_is_current() to channel_is_current_window(). 1919 move a big chunk of is_current_channel() into names.c 1920 as channel_is_on_window(). move two chunks of 1921 window_set_server() into names.c as 1922 channels_move_server_simple() and 1923 channels_move_server_complex(). move win_list_channels() 1924 into names.c as window_list_channels(). 1925 1926Tue Feb 4 01:42:19 PST 2014 - matthew green <mrg@eterna.com.au> 1927 include/names.h, source/edit.c, source/names.c, source/screen.c: 1928 move ChannelList handling from do_channel() and 1929 add_to_screen() into names.c, using 2 new functions 1930 channel_window() and channel_is_current(). 1931 1932Tue Feb 4 01:09:19 PST 2014 - matthew green <mrg@eterna.com.au> 1933 include/names.h, source/funny.c, source/names.c, source/numbers.c: 1934 move lookup/set for ChannelList status into names.c, with 1935 new channel_mode_lookup(). 1936 1937Tue Feb 4 00:12:41 PST 2014 - matthew green <mrg@eterna.com.au> 1938 include/screen.h, include/struct.h, source/window.c: 1939 move ShrinkInfo into screen.h. move WindowStack 1940 into window.c. 1941 1942Mon Feb 3 23:54:53 PST 2014 - matthew green <mrg@eterna.com.au> 1943 include/names.h, include/struct.h, source/alias.c, source/menu.c, 1944 source/names.c, source/screen.c, source/whois.c, source/window.c: 1945 move NickList handling all into names.c. add new 1946 display_nicks_info(), nicks_add_to_window(), and 1947 nicks_remove_from_window(), and move free_nicks() 1948 and function_chanusers() into names.c. 1949 rename some struct names to standardise them. 1950 source/window.c: 1951 remove the code in set_query_nick() that tries to 1952 change the current window nick list based up on /query. 1953 it was redundant and would remove users after a 1954 /query nick, /query <nothing> sequence. 1955 1956Mon Feb 3 22:42:02 PST 2014 - matthew green <mrg@eterna.com.au> 1957 include/hold.h, include/list.h, include/struct.h, source/hold.c, 1958 source/screen.c, source/window.c: 1959 move Hold definition into hold.c, with free_hold(). 1960 move List definition into list.h. document it a little. 1961 1962Mon Feb 3 22:24:42 PST 2014 - matthew green <mrg@eterna.com.au> 1963 source/cast.c: 1964 keep encryption/decryption state per-key and clear 1965 it when we don't need it. clean up a little. 1966 1967Mon Feb 3 21:29:49 PST 2014 - matthew green <mrg@eterna.com.au> 1968 include/struct.h, source/ctcp.c: 1969 move struct _ctcp_entry into ctcp.c itself as 1970 struct ctcp_stru, as it is already only used here. 1971 1972Mon Feb 3 20:59:22 PST 2014 - matthew green <mrg@eterna.com.au> 1973 include/edit.h, include/struct.h, source/edit.c, source/input.c, 1974 source/screen.c: 1975 move the prompt list handling all into edit.c, including 1976 the renamed struct prompt_list definition, leaving just 1977 pointers around for the per-screen entry. consolidate 1978 the processing of an input prompt into the new 1979 prompt_check_input(). move add_wait_prompt() to edit.c, 1980 and export new prompt_current_prompt() and 1981 prompt_active_count() functions. 1982 clean up input_do_check_prompt() a little. 1983 1984Mon Feb 3 06:35:45 PST 2014 - matthew green <mrg@eterna.com.au> 1985 include/dcc.h, include/struct.h, source/alias.c, source/dcc.c: 1986 move DCC_list internal to dcc.c, including ClientList. 1987 move the guts of both function_dcclist() and 1988 function_chatpeers() into dcc.c as new functions 1989 dcc_list_func() and dcc_chatpeers_func(). 1990 make dcc_searchlist() and dcc erase() static. 1991 make many function_*() functions static. 1992 1993Sat Feb 1 20:19:00 PST 2014 - matthew green <mrg@eterna.com.au> 1994 include/menu.h, include/struct.h, include/window.h, source/menu.c, 1995 source/screen.c, source/window.c: 1996 move struct MenuOptionTag, MenuOption, struct MenuTag, 1997 Menu, and struct WindowMenuTag into menu.c itself, and 1998 only export MenuWindow * type externally. convert uses 1999 to interfaces exported by menu.c. 2000 update DISPLAY_AFTER_SCROLL code to be less ugly. 2001 200220140201 2003Sat Feb 1 18:51:26 PST 2014 - matthew green <mrg@eterna.com.au> 2004 source/input.c: 2005 compare input position with cursor_x not cursor_y. 2006 2007Fri Jan 31 04:30:13 PST 2014 - matthew green <mrg@eterna.com.au> 2008 include/ircaux.h, source/aes.c, source/alias.c, source/cast.c, 2009 source/cipher-test.c, source/crypt.c, source/ctcp.c, source/dcc.c, 2010 source/edit.c, source/exec.c, source/flood.c, source/funny.c, 2011 source/history.c, source/hold.c, source/hook.c, source/icb.c, 2012 source/ignore.c, source/input.c, source/irc.c, source/ircaux.c, 2013 source/ircio.c, source/lastlog.c, source/menu.c, source/names.c, 2014 source/newio.c, source/notify.c, source/parse.c, source/queue.c, 2015 source/scandir.c, source/screen.c, source/server.c, source/stack.c, 2016 source/whois.c, source/window.c: 2017 convert new_malloc(), new_realloc() and new_free() to return 2018 and take void * instead of u_char *. update all the callers 2019 to not cast the return value, and also use sizeof(*var) over 2020 sizeof(type). 2021 2022Thu Jan 30 22:42:27 PST 2014 - matthew green <mrg@eterna.com.au> 2023 include/input.h, include/screen.h, include/struct.h, source/input.c, 2024 source/screen.c: 2025 move ScreenInputBufferData and ScreenInputData inside 2026 input.c directly, and only access them in input.c. 2027 change Screen to take a pointer to an opaque type (it's 2028 already all setup and accessed in input.c.) 2029 2030Thu Jan 30 21:02:05 PST 2014 - matthew green <mrg@eterna.com.au> 2031 source/input.c, source/screen.c, source/window.c: 2032 if iconv(3) returns an error, always be sure to end 2033 processing, regardless of errno itself. fixes hangs 2034 when a conversion fails in some cases. when unsetting 2035 any of the utf-8 variables, set them to latin1. fixes 2036 segv with eg, /set -display_encoding. 2037 203820140130 2039Thu Jan 30 03:23:16 PST 2014 - matthew green <mrg@eterna.com.au> 2040 source/input.c: 2041 rename a variable to better reflect its use. 2042 2043Thu Jan 30 02:08:16 PST 2014 - matthew green <mrg@eterna.com.au> 2044 source/input.c, source/screen.c, source/window.c: 2045 don't call cursor_to_input() before calling 2046 update_input(). it's useless and moves the cursor. 2047 source/input.c: 2048 set old_cursor_pos to 0 if it's ahead of cursor_y. 2049 fixes input line scrolling issues. 2050 2051Sat Jan 11 12:30:12 PST 2014 - matthew green <mrg@eterna.com.au> 2052 source/edit.c, source/help.c, source/names.c, source/screen.c, 2053 source/translat.c: 2054 remove set but unused variables. 2055 2056Sat Jan 11 22:51:01 PST 2014 - matthew green <mrg@eterna.com.au> 2057 include/buffer.h, source/alias.c, source/crypt.c, source/dcc.c, 2058 source/edit.c, source/exec.c, source/history.c, source/ircaux.c, 2059 source/ircflush.c, source/ircio.c, source/screen.c, source/server.c, 2060 source/wserv.c: 2061 fix various issues found by newer GCC on ubuntu. 2062 206320131230 2064Mon Dec 30 05:16:19 PST 2013 - matthew green <mrg@eterna.com.au> 2065 source/input.c: 2066 cursor_to_input() should only operate on the current 2067 screen. copy old behaviour of update_input() and 2068 only write the new part of the display with 2069 UPDATE_FROM_CURSOR calls. 2070 source/screen.c: 2071 fix a merge error with utf-8 patch. 2072 2073Sun Dec 29 20:08:54 PST 2013 - matthew green <mrg@eterna.com.au> 2074 source/lastlog.c 2075 notice when the screen width changes and 2076 recalculate the per-line array. 2077 source/term.c: 2078 use the current screen's lines/colums in 2079 copy_window_size(). now lastlog notices screen 2080 size changes. 2081 2082Sun Dec 29 19:53:31 PST 2013 - matthew green <mrg@eterna.com.au> 2083 include/lastlog.h, include/struct.c, source/lastlog.c, 2084 source/screen.c: 2085 make lastlog_stru only visible in lastlog.c. 2086 move next_line_back() into lastlog.c and call 2087 it lastlog_line_back(). 2088 2089Sun Dec 29 19:40:03 PST 2013 - matthew green <mrg@eterna.com.au> 2090 source/lastlog.c: 2091 fix the pointer type in free_lastlog_entry(). 2092 2093Sun Dec 29 19:41:33 PST 2013 - matthew green <mrg@eterna.com.au> 2094 Makefile.in, acconfig.h, configure, configure.in, 2095 help/set/display_encoding, help/set/input_encoding, 2096 help/set/irc_encoding, help/set/translation, include/config.h.dist, 2097 include/defs.h.in, include/input.h, include/irc.h, include/ircterm.h, 2098 include/screen.h, include/struct.h, include/translat.h, include/vars.h, 2099 source/alias.c, source/edit.c, source/exec.c, source/input.c, 2100 source/irc.c, source/screen.c, source/status.c, source/term.c, 2101 source/translat.c, source/vars.c: 2102 reapply the UTF-8 patch. original description: 2103 2104 Wed Sep 21 08:49:58 EST 2005 - Joel Yliluoma <bisqwit@iki.fi> 2105 Replaced the ancient TRANSLATION feature 2106 and the hackish japanese support features 2107 and all the hardcoded latin1-related stuff 2108 with iconv-based full character set support 2109 for input, output and display. Supports all 2110 the singlebyte and multibyte encodings supported 2111 by iconv, with or without shift codes. 2112 As a consequence, the following settings are 2113 no longer used: TRANSLATION, ISO2022_SUPPORT 2114 Instead, INPUT_ENCODING, DISPLAY_ENCODING 2115 and IRC_ENCODING are used for input, terminal 2116 and network encodings respectively. 2117 All conversions are done transparently. 2118 If the system does not have iconv library, 2119 only ISO-8859-1 is supported (built-in). 2120 Note that if EIGHT_BIT_CHARACTERS is not set, 2121 all 7th bits of bytes will be stripped. (Why??) 2122 2123Sun Dec 29 17:48:35 PST 2013 - matthew green <mrg@eterna.com.au> 2124 source/input.c: 2125 fix DEBUG build. 2126 source/screen.c: 2127 outputline(): avoid modifying strings just so strlen() 2128 will work when we already have the length handy. 2129 split_up_line_alloc(): alloc space for NULL, too. 2130 next_line_back(): remove static ScreenLines[] since we 2131 can now use the lastlog entry's. 2132 2133Sun Dec 29 06:46:11 PST 2013 - matthew green <mrg@eterna.com.au> 2134 include/lastlog.h, source/lastlog.c, source/screen.c: 2135 make add_to_lastlog() return the u_char ** it split 2136 up, if it happened to do that. fix comments in it 2137 that have been wrong for over 20 years. 2138 make split_up_line_alloc() NULL terminate the list. 2139 use the pre-split list in add_to_window(). 2140 2141Sun Dec 29 06:05:06 PST 2013 - matthew green <mrg@eterna.com.au> 2142 include/lastlog.h, include/screen.h, include/struct.h, 2143 source/lastlog.c, source/screen.c, source/window.c: 2144 begin to store split up messages in the lastlog. 2145 move free_lastlog() to lastlog.c. and move the 2146 main guts of it into free_lastlog_entry(), that 2147 is reused during normal scrolling. 2148 add a new split_up_line_alloc() that has the same 2149 signature as split_up_line(), but returns a 2150 dynamically allocated array of pointers, and 2151 clears the pointers from split_up_line()'s static 2152 array. 2153 source/term.c: 2154 make copy_window_size() cope with NULL inputs. 2155 2156Sun Dec 29 03:59:03 PST 2013 - matthew green <mrg@eterna.com.au> 2157 include/screen.h, include/struct.h, include/window.h, 2158 source/screen.c, source/window.c: 2159 make the definition of Display local to screen.c. 2160 216120131228 2162Sat Dec 28 18:16:39 PST 2013 - matthew green <mrg@eterna.com.au> 2163 doc/ircII.1: 2164 update to describe -l option. 2165 source/screen.c: 2166 use macros not magic numbers. 2167 source/window.c: 2168 clean up, and fix a bug in bind_channel(). 2169 2170Sat Dec 28 18:23:03 PST 2013 - matthew green <mrg@eterna.com.au> 2171 source/lastlog.c, source/parse.c: 2172 avoid leaking FILE *'s. 2173 source/server.c: 2174 avoid leaking memory. 2175 source/dcc.c, source/exec.c, source/irc.c, source/ircio.c, 2176 source/mail.c, source/newio.c, source/screen.c, 2177 source/server.c: 2178 remove the unused 4th parameter to dgets() and 2179 cleanup dgets() itself for this. 2180 2181Thu Feb 21 14:01:23 PST 2013 - matthew green <mrg@eterna.com.au> 2182 configure.in, configure: 2183 avoid re-setting libexecdir if it is set on the 2184 command line. 2185 218620111115 2187Tue Nov 15 01:25:01 PST 2011 - matthew green <mrg@eterna.com.au> 2188 source/irc.c: 2189 properly bump version. 2190 219120111114 2192Mon Nov 14 15:12:09 PST 2011 - matthew green <mrg@eterna.com.au> 2193 source/edit.c, help/nuser: 2194 add a /NUSER command to change your irc and user names. 2195 largely from Hendrix/zDm via tMH. 2196 doc/ircii.spec: 2197 rpm-style spec file, contributed by lukem 2198 source/edit.c: 2199 disable "TZ" hack, it fails weirdly with multitime. 2200 2201Sat Jul 9 22:58:33 PDT 2011 - matthew green <mrg@eterna.com.au> 2202 configure, configure.ac, Makefile.in, ...: 2203 install ircio and wserv into libexec dir. 2204 220520110428 2206Thu Apr 28 15:13:02 PDT 2011 - matthew green <mrg@eterna.com.au> 2207 source/mkmksiginc.pl, source/mksiginc.c: 2208 adjust the C/CPP for each signal to allow eg SIGRTMAX 2209 to be a C expression not just a CPP one. fixes a 2210 problem on modern centos reported by rob windsor. 2211 221220110228 2213Tue Feb 1 02:57:58 PST 2011 - matthew green <mrg@eterna.com.au> 2214 source/screen.c: 2215 avoid trying to print high-bit unprintable chars 2216 source/window.c: 2217 avoid implicit int 2218 include/ignore.h, source/ignore.c, source/edit.c: 2219 add /SAVE -IGNORE support 2220 2221Tue Jan 26 20:59:24 PST 2010 - matthew green <mrg@eterna.com.au> 2222 source/edit.c: 2223 match "TZ" not "TV". ooops. 2224 222520090520 2226Wed May 20 22:17:27 PDT 2009 - matthew green <mrg@eterna.com.au> 2227 source/exec.c, source/crypt.c: 2228 order alarm/signal correctly to avoid spurious SIGALRM 2229 causing irc to exit. 2230 2231Fri May 1 17:56:12 PDT 2009 - matthew green <mrg@eterna.com.au> 2232 configure, configure.in: 2233 check for getaddrinfo/getnameinfo in -lmedia, for qnx. 2234 2235Fri May 1 00:35:38 PDT 2009 - matthew green <mrg@eterna.com.au> 2236 include/cast_sbox.h: 2237 remove K&R C support. 2238 include/keys.h, include/hook.h, include/vars.h: 2239 remove trailing , from enum lists. 2240 2241Mon Apr 27 19:02:10 PDT 2009 - matthew green <mrg@eterna.com.au> 2242 include/irc.h, source/irc.c, source/term.c, source/wserv.c: 2243 add a new MY_SIGNAL_REINIT() that expands to 2244 nothing on BSD platforms. 2245 2246Mon Apr 27 18:26:02 PDT 2009 - matthew green <mrg@eterna.com.au> 2247 acconfig.h, configure, configure.in, include/defs.h.in, 2248 include/exec.h, include/irc.h, include/ircterm.h, 2249 include/scandir.h, source/exec.c, source/irc.c, source/ircaux.c, 2250 source/scandir.c, source/term.c, source/wserv.c: 2251 remove support the following systems: 2252 DGUX, Interactive UNIX 2/3, UNICOS, AIX 3, 2253 MUNIX/M_UNIX, NeXT, SVR3, ULTRIX, Dynix/ptx, 2254 HPUX7, HPUX8 2255 remove support for the follow features: 2256 <sgtty.h>, <termio.h>, non POSIX wait, 2257 non POSIX nonblocking 2258 2259Sun Apr 26 01:30:12 PDT 2009 - matthew green <mrg@eterna.com.au> 2260 source/ircaux.c: 2261 if bind_local_addr() fails, notify the user that 2262 IRCHOST is probably wrong 2263 226420081115 2265Sun Nov 16 00:18:05 PST 2008 - matthew green <mrg@eterna.com.au> 2266 translation/* 2267 re-add these, missed in 20080314 2268 2269Tue Oct 28 09:21:11 PDT 2008 - matthew green <mrg@eterna.com.au> 2270 include/config.h.dist: 2271 bump the default lastlog size to 440 2272 227320080414 2274Mon Apr 14 14:45:10 PDT 2008 - matthew green <mrg@eterna.com.au> 2275 sourec/icb.c: 2276 maintain the channel list for icb as well. this makes 2277 /on nickname, /on channel_nick, $chanusers() and 2278 $onchannel() work for icb. 2279 228020080314 2281Fri Mar 14 10:06:58 PDT 2008 - matthew green <mrg@eterna.com.au> 2282 Makefile.in, acconfig.h, configure, configure.in, 2283 help/set/display_encoding, help/set/input_encoding, 2284 help/set/irc_encoding, help/set/translation, include/config.h.dist, 2285 include/defs.h.in, include/input.h, include/irc.h, 2286 include/ircterm.h, include/screen.h, include/struct.h, 2287 include/translat.h, include/vars.h, source/alias.c, source/edit.c, 2288 source/exec.c, source/input.c, source/irc.c, source/newio.c, 2289 source/screen.c, source/status.c, source/term.c, source/translat.c, 2290 source/vars.c: 2291 revert the utf-8 changes. they cause way too much 2292 cpu time / slowness when lastlog gets large. there 2293 should be a re-implementation coming in the future. 2294 2295Tue Jun 26 13:31:29 EST 2007 - matthew green <mrg@eterna.com.au> 2296 help/on/icb_who: 2297 describe /on icb_who, not something else 2298 script/icb: 2299 understand /annoy 2300 2301Wed Jun 20 13:14:31 PDT 2007 - matthew green <mrg@eterna.com.au> 2302 source/names.c: 2303 fix a bug in walk_channels() i introduced in late 93. 2304 symptom was /on channel_signoff not working. 2305Mon Mar 12 13:20:59 PDT 2007 - matthew green <mrg@eterna.com.au> 2306 source/exec.c: 2307 rename _child_died to waitpid_child_died. 2308 2309Tue Jan 30 12:17:30 EST 2007 - matthew green <mrg@eterna.com.au> 2310 source/icb.c: 2311 in icb_put_public(), split the line at a space boundary 2312 if it exists within the last 10 characters. 2313 2314Wed Sep 27 17:26:35 EST 2006 - matthew green <mrg@eterna.com.au> 2315 source/server.c: 2316 in connect_to_server_direct() reorder some code to avoid 2317 using from_server when it is -1. mostly from Bernd 2318 Eckenfels <ecki@lina.inka.de>. 2319 include/ircterm.h, source/crypt.c, source/dcc.c, source/log.c, 2320 source/newio.c, source/server.c: 2321 remove final remaining _Windows code. 2322 2323Sat Sep 2 12:12:20 PDT 2006 - matthew green <mrg@eterna.com.au> 2324 source/input.c: 2325 don't reduce the screen zone by WIDTH twice. this fixes 2326 a problem where the input line would scroll to the next 2327 part at 20 chars before the end of line. 2328 2329Mon Aug 28 12:51:32 PDT 2006 - matthew green <mrg@eterna.com.au> 2330 Makefile.in, source/wterm.c: 2331 make wterm.c be a real file that defines STTY_ONLY and 2332 then includes term.c. 2333 2334Sun Aug 27 16:04:39 PDT 2006 - matthew green <mrg@eterna.com.au> 2335 include/buffer.h, include/irc.h, include/irc_std.h, source/alias.c, 2336 source/ctcp.c, source/edit.c, source/help.c, source/hook.c, 2337 source/irc.c, source/ircaux.c, source/keys.c, source/output.c: 2338 remove all windows and msdos code, and some other unused 2339 things as well. 2340 234120060821 2342Tue Aug 22 05:57:18 EST 2006 - matthew green <mrg@eterna.com.au> 2343 source/edit.c: disallow these commands in ICB mode: 2344 ADMIN CONNECT CTCC CTCP DCC DEOP DIE HASH HOST ISONLUSERS 2345 NOTE NOTICE OPER REDIRECT REHASH REQUEST RESTART USERHOST 2346 WALL WALLOPS WHOWAS. 2347 source/hook.c: 2348 be much safer about access the hook_functions[] list and 2349 bounds check it in several places. note via XXX a place 2350 where ircii will fail when when more than 2048 hooks are 2351 installed for a particular lists. re-factor some code to 2352 avoid deep indentation. 2353 source/parse.c: 2354 as the XXX comment said over 10 years ago, only pass 2355 numbered commands from 1 to 999 to numbered_command(). 2356 2357Tue Aug 8 18:13:21 EST 2006 - matthew green <mrg@eterna.com.au> 2358 source/vars.c, source/input.c: 2359 rework the input prompt bug fix, based on work from flier. 2360 source/input.c: 2361 fix update_input() when term_echo is not set. from flier. 2362 2363Fri Aug 4 10:24:39 EST 2006 - matthew green <mrg@eterna.com.au> 2364 script/icb: 2365 for /ping on ICB, use /msg server ping. 2366 236720060725 2368Tue Jul 25 19:03:57 PDT 2006 - matthew green <mrg@eterna.com.au> 2369 script/listidle: 2370 update this from http://tris.net/software/listidle.irc 2371 2372Tue Jul 25 03:52:10 PDT 2006 - matthew green <mrg@eterna.com.au> 2373 Makefile.in, include/Makefile.in, include/config.h.dist, 2374 include/hook.h, include/hook.h.proto, include/keys.h, 2375 include/keys.h.proto, include/vars.h, include/vars.h.proto, 2376 incldue/count.l, source/vars.c: 2377 add a new check in init_variables() to ensure that the 2378 irc_variable[] table is properly sorted. we still depend 2379 on the list on vars.h to also be sorted, but this is at 2380 least one step better. sort the entries that were not 2381 properly sorted. delete include/*.h.proto, 2382 include/count.l, include/Makefile.in and convert the 2383 generated lists into enum's. no longer require lex to 2384 build. remove LEX and LEXLIB. 2385 configure, configure.in: 2386 remove AC_PROG_LEX and don't output include/Makefile. 2387 help/set/use_old_msg: 2388 delete USE_OLD_MSG variable as the support for it has not 2389 been available for some time. 2390 help/set/iso2022_support: 2391 delete, was an empty file. 2392 2393Tue Jul 25 02:42:19 PDT 2006 - matthew green <mrg@eterna.com.au> 2394 configure.in, configure: 2395 adjust the iconv "const" check to match more cases. 2396 2397Sun Jul 23 03:00:53 PDT 2006 - matthew green <mrg@eterna.com.au> 2398 help/digraph, help/bind/enter_digraph, help/set/eight_bit_characters: 2399 replace references to /set translation with updated ones 2400 source/vars.c: 2401 properly reorder irc_encoding and irchost. 2402 240320060721 2404Fri Jul 21 19:25:30 PDT 2006 - matthew green <mrg@eterna.com.au> 2405 include/config.h.dist, include/vars.h.proto, include/vars.h, 2406 source/vars.c: 2407 add defaults for STATUS_SCROLLED and STATUS_SCROLLED_LINES 2408 variables. add %P%s to the default status format. 2409 source/status.c: 2410 add two new status format functions: %P for STATUS_SCROLLED 2411 and %s for STATUS_SCROLLED_LINES. increase MAX_FUNCTIONS 2412 (really should fix this properly.) clean up some obsolete 2413 code. 2414 source/screen.c: 2415 update the status bar when scrolling. 2416 help/set/status_scrolled, help/set/status_scrolled_lines, 2417 help/set/status_format: 2418 document the new status features. 2419 help/set/status_hold_lines: 2420 fix a typo. 2421 242220060718 2423Tue Jul 18 21:46:59 PDT 2006 - matthew green <mrg@eterna.com.au> 2424 source/edit.c: 2425 call set_input_raw() from get_history(), not set_input(). 2426 now ^V/^B/etc work properly from history. 2427 source/irc.c: 2428 fix a sign issue in the DEBUG code. 2429 2430Tue Jul 18 17:54:29 EST 2006 - matthew green <mrg@eterna.com.au> 2431 script/redirx: 2432 update this to v1.3 from http://tris.net/software/redirx.irc. 2433 243420060705 2435Wed Jul 5 16:34:25 PDT 2006 - matthew green <mrg@eterna.com.au> 2436 include/hook.h, include/hook.h.proto, source/alias.c, source/cast.c, 2437 source/hook.c, source/input.c, source/names.c, source/screen.c, 2438 source/server.c, source/stack.c, source/translat.c, source/whois.c, 2439 source/window.c: 2440 change a few variables type to properly match their usage. 2441 remove a whole bunch of casts, and, unfortunately add a few 2442 more. 2443 244420060704 2445Tue Jul 4 18:05:48 PDT 2006 - matthew green <mrg@eterna.com.au> 2446 source/input.c, source/vars.c: 2447 ensure that the INPUT_PROMPT is properly initialised 2448 otherwise a default empty INPUT_PROMPT will cause 2449 temporary input prompts (such as "Help?") to become 2450 the input prompt. 2451 2452Thu Sep 22 08:14:11 EST 2005 - matthew green <mrg@eterna.com.au> 2453 source/alias.c, source/crypt.c, source/dcc.c, source/edit.c, 2454 source/exec.c, source/help.c, source/icb.c, source/ignore.c, 2455 source/input.c, source/irc.c, source/ircaux.c, source/mail.c, 2456 source/names.c, source/notice.c, source/screen.c, source/server.c, 2457 source/status.c, source/term.c, source/translat.c, source/vars.c, 2458 source/window.c: 2459 fix signed verses unsigned problems. fix int verses 2460 socklen_t problems. 2461 2462Thu Sep 22 06:16:06 EST 2005 - matthew green <mrg@eterna.com.au> 2463 configure, configure.in, source/translat.c, source/input.c, 2464 source/screen.c, include/irc.h: 2465 add a test to see whether the 2nd argument to iconv() 2466 is const or not, rather than hard coding it cost for 2467 NetBSD and not for everything else. 2468 246920050921 2470Wed Sep 21 08:49:58 EST 2005 - Joel Yliluoma <bisqwit@iki.fi> 2471 Makefile.in, configure.in, include/defs.h.in, 2472 include/config.h.dist, 2473 help/set/display_encoding, help/set/irc_encoding, 2474 help/set/input_encoding, help/set/translation, 2475 help/set/iso2022_support, 2476 include/input.h, include/irc.h, include/screen.h, 2477 include/struct.h, include/translat.h, include/ircterm.h, 2478 include/vars.h.proto, include/vars.h, 2479 source/alias.c, source/edit.c, 2480 source/input.c, source/screen.c, source/status.c, 2481 source/term.c, source/translat.c, source/vars.c, 2482 translation/*, ChangeLog: 2483 Replaced the ancient TRANSLATION feature 2484 and the hackish japanese support features 2485 and all the hardcoded latin1-related stuff 2486 with iconv-based full character set support 2487 for input, output and display. Supports all 2488 the singlebyte and multibyte encodings supported 2489 by iconv, with or without shift codes. 2490 As a consequence, the following settings are 2491 no longer used: TRANSLATION, ISO2022_SUPPORT 2492 Instead, INPUT_ENCODING, DISPLAY_ENCODING 2493 and IRC_ENCODING are used for input, terminal 2494 and network encodings respectively. 2495 All conversions are done transparently. 2496 If the system does not have iconv library, 2497 only ISO-8859-1 is supported (built-in). 2498 Note that if EIGHT_BIT_CHARACTERS is not set, 2499 all 7th bits of bytes will be stripped. (Why??) 2500 source/exec.c: 2501 include unistd.h if exists 2502 - compiles cleaner with -Wall 2503 source/keys.c: 2504 ^U mapped to ERASE_TO_BEG_OF_LINE instead 2505 of ERASE_LINE - now analogous to how ^K works; 2506 bash does the same. 2507 2508Fri Jul 8 18:55:06 EST 2005 - matthew green <mrg@eterna.com.au> 2509 configure, configure.in: 2510 don't pass -Xc to sunpro on solaris. from grant@netbsd.org. 2511 2512Sat Jan 22 23:11:12 EST 2005 - matthew green <mrg@eterna.com.au> 2513 source/lastlog.c: 2514 in bits_to_lastlog_level(), add spaces before all but 2515 the first level, not after each of them. 2516 2517Mon Jan 3 22:13:47 EST 2005 - matthew green <mrg@eterna.com.au> 2518 source/names.c: 2519 call set_channel_by_refnum() in rename_channel(), so that 2520 the window->current_channel changes as well. 2521 252220050101 2523Sat Jan 1 18:29:46 EST 2005 - matthew green <mrg@eterna.com.au> 2524 include/server.h: 2525 add comments to describe the difference between 2526 from_server and parsing_server_index variables. 2527 source/keys.c, source/edit.c, include/keys.h.proto, include/keys.h: 2528 change the function echo() to echocmd(), mirroring most other 2529 commands being foocmd(). 2530 source/status.c: 2531 change a type to u_char to avoid a warning. 2532 source/server.c, doc/ircII.1: 2533 add support for $IRCSERVERSFILE, that replaces the 2534 default LIBDIR/ircII.servers. 2535 source/edit.c, source/server.c, help/msg: 2536 add a -server flag to /msg, to allow one to send a 2537 message to a server in a different window. 2538 source/icb.c, source/names.c, source/names.h: 2539 add a new rename_channel() instead of abusing the 2540 add_channel() interface, for when ICB groups are 2541 renamed. 2542 source/server.c: 2543 in get_server_localaddrlen() and get_server_localaddr() 2544 properly bounds check against number_of_servers. 2545 254620040820 2547Fri Aug 20 12:16:35 EST 2004 - matthew green <mrg@eterna.com.au> 2548 include/config.h.dist: 2549 include status_user[123] in DEFAULT_STATUS_FORMAT. 2550 255120040711 2552Sun Jul 11 03:06:51 EST 2004 - matthew green <mrg@eterna.com.au> 2553 source/icb.c: 2554 be sure to save the ICB group status for reconnection time. 2555 2556Thu Jul 8 23:19:03 EST 2004 - matthew green <mrg@eterna.com.au> 2557 source/edit.c: 2558 set sent_nick in ICB mode as well. makes /msg . work for ICB. 2559 2560Sun Jul 4 00:53:46 EST 2004 - matthew green <mrg@eterna.com.au> 2561 source/ctcp.c: 2562 in do_ctcp() don't skip leading ':' like we used to long ago. 2563 256420040703 2565Sat Jul 3 20:23:17 EST 2004 - matthew green <mrg@eterna.com.au> 2566 configure.in, configure: 2567 add a comment. ircio needs snprintf* too 2568 include/irc_std.h: 2569 fix a prototype. 2570 configure.in, configure, Makefile.in: 2571 fix pax -s call: it takes BRE's not ERE's. should remove a 2572 NetBSD pkgsrc patch.. 2573 include/ircaux.h, source/ircaux.c, source/term.c: 2574 remove "new_stty()". 2575 2576Wed Apr 14 23:59:40 EST 2004 - matthew green <mrg@eterna.com.au> 2577 script/listidle: 2578 make sort-of work. partially from tristan. 2579 2580Mon Feb 16 21:01:16 EST 2004 - matthew green <mrg@eterna.com.au> 2581 source/mkmksiginc.pl, source/mksiginc.c, source/exec.c, source/exec.h: 2582 remove (most) uses of NSIG - auto generate the array max size 2583 instead. should fix solaris builds. 2584 help/topic, script/default: 2585 document ICB topic support, and make the default /topic work. 2586 258720040216 2588Mon Feb 9 22:43:03 EST 2004 - matthew green <mrg@eterna.com.au> 2589 help/expressions: 2590 document A++ and A-- binary operators 2591 help/foreach: 2592 begin to document /for 2593 source/alias.c: 2594 remove OLD_ALIAS_ALLOC method 2595 259620040106 2597Tue Jan 6 19:08:39 EST 2004 - matthew green <mrg@eterna.com.au> 2598 acconfig.h, configure, configure.in, include/buffer.h, include/ctcp.h, 2599 include/debug.h, include/defs.h.in, include/hook.h, 2600 include/hook.h.proto, include/irc.h, include/output.h, include/server.h, 2601 include/whois.h, source/crypt.c, source/ctcp.c, source/debug.c, 2602 source/help.c, source/hook.c, source/if.c, source/ignore.c, 2603 source/menu.c, source/notify.c, source/output.c, source/server.c, 2604 source/stack.c, source/whois.c, INSTALL: 2605 remove any non-<stdarg.h> style varadic function support. 2606 ircii now require an ANSI C compiler. 2607 2608Tue Jan 6 00:53:50 EST 2004 - matthew green <mrg@eterna.com.au> 2609 include/vars.h.proto, include/vars.h, include/config.h.dist, 2610 source/names.c, source/vars.c: 2611 add new /SET SWITCH_TO_QUIET_CHANNELS that allows 2612 SWITCH_CHANNELS binding to ignore "quiet" channels. 2613 from Magnus Tjernstrom <d92-mtm@ludd.luth.se>. 2614 2615Wed Dec 17 01:33:29 EST 2003 - matthew green <mrg@eterna.com.au> 2616 source/irc.c: 2617 set ircquick_file not ircrc_file, if $IRCQUICK is set. 2618 source/server.c: 2619 fix a few bugs with server process code, partially 2620 inspired by PR#647. 2621 source/window.c: 2622 don't send PART to ICB servers. 2623 262420031208 2625Mon Dec 8 21:30:39 EST 2003 - matthew green <mrg@eterna.com.au> 2626 source/newio.c: 2627 be defensive about accessing rec_io[] out of bounds. 2628 should stop PR#643. 2629 2630Mon Dec 8 18:39:13 EST 2003 - matthew green <mrg@eterna.com.au> 2631 source/ircio.c: 2632 initialise res. from mats@snowbee.dyns.cx in PR#647. 2633 source/screen.c: 2634 turn back on bold/highlight/underline if any of them 2635 are toggled, as termcap may turn off everything. idea 2636 from Rado Smiljanic <am3a035@math.uni-hamburg.de> in PR#609. 2637 2638Mon Dec 8 12:51:51 EST 2003 - matthew green <mrg@eterna.com.au> 2639 source/server.c: 2640 remove \n from a say(). 2641 acconfig.h, configure, configure.in, include/defs.h.in, 2642 source/edit.c: 2643 look for tzset(3), and use it when setting/unsetting 2644 the TZ environment variable. 2645 script/icb: 2646 add a /hush alias. 2647 configure, configure.in: 2648 don't always enable emacs meta keys, from sec@42.org 2649 in PR#683. 2650 source/edit.c: 2651 reapply a change from march 1997 that got lost in 2002: 2652 don't send "NAMES" for hostmasked channels (eg, 2653 #foo:*.edu). fixes PR#187 2654 fixes PR#675. 2655 script/redirx: 2656 new script from tristan@ethereal.net. automatically 2657 shortens urls seen on channel. 2658 source/term.c: 2659 do nothing if (dumb) in set_term_eight_bit(). PR#651 2660 help/assign, help/echo, help/exec, help/server, help/squit, help/wait, 2661 help/alias/functions, help/load/edit, help/load/netsplit, 2662 help/load/repeat, help/on/on, help/set/full_status_line, 2663 help/set/help_pager, script/compl.mods, script/imap, script/netsplit, 2664 script/nocolour, source/ctcp.c, source/exec.c, source/status.c, 2665 source/term.c, source/window.c: 2666 fix spelling of "its" vs "it's". from splite@purdue.edu 2667 in PR#654. 2668 2669Tue Dec 2 16:38:08 EST 2003 - matthew green <mrg@eterna.com.au> 2670 script/multichan: 2671 add an example script for maintaining multiple server 2672 and channel configurations. 2673 2674Wed Oct 22 11:12:20 EST 2003 - matthew green <mrg@eterna.com.au> 2675 source/cast.c, source/crypt.c, source/aes.c, include/crypt.h: 2676 change crypt functions to take size_t not int. 2677 script/icb: 2678 add an icb /away frontend. 2679 2680Wed Jul 16 15:22:47 EST 2003 - matthew green <mrg@eterna.com.au> 2681 help/on/icb_cmdout, help/on/icb_motd, include/hook.h, 2682 include/hook.h.proto source/hook.c source/icb.c: 2683 rename /on icb_motd to icb_cmdout and also make sure that 2684 if the hook fires, we don't print a spurious not understood 2685 message. 2686 2687Wed Jul 16 09:23:00 EST 2003 - matthew green <mrg@eterna.com.au> 2688 source/icb.c: 2689 add /on TOPIC support. 2690 2691Sun Jul 13 05:25:02 EST 2003 - matthew green <mrg@eterna.com.au> 2692 aclocal.m4, configure, configure.in: 2693 check if we can use "-Xc" on solaris.. 2694 2695Sat Jul 12 16:55:41 EST 2003 - matthew green <mrg@eterna.com.au> 2696 source/cast.c: 2697 don't regenerate the key for every message. 2698 Makefile.in, include/crypt.h, source/aes.c, source/cipher-test.c, 2699 source/crypt.c, source/ctcp.c, source/rijndael.c: 2700 rename rijndael cipher to AES. 2701 2702Sat Jul 12 16:45:17 EST 2003 - matthew green <mrg@eterna.com.au> 2703 Makefile.in, doc/crypto, help/encrypt, include/ctcp.h, 2704 source/cipher-test.c, source/crypt.c, source/ctcp.c, source/irc.c, 2705 source/notice.c, source/parse.c, source/sed.c, source/whois.c: 2706 remove "SED" cipher support entirely.. 2707 2708Sat Jul 12 14:41:59 EST 2003 - matthew green <mrg@eterna.com.au> 2709 include/irc_std.h, source/cast.c, source/rijndael.c, source/sed.c: 2710 add a new IRCII_RCSID_NAMED() macro that can set the name 2711 of the rcsid string. redefined IRCII_RCSID in terms of 2712 this, and use the new one in the included sources files. 2713 Makefile.in, source/cipher-test.c: 2714 add a new test-rig for the /crypt ciphers.. 2715 2716Sat Jul 12 14:25:23 EST 2003 - matthew green <mrg@eterna.com.au> 2717 include/irc.h, include/status.h, source/irc.c, source/status.c, 2718 source/vars.c: 2719 avoid the final gcc warning by splitting the variable 2720 list functions into two classes. 2721 2722Sat Jul 12 05:18:58 EST 2003 - matthew green <mrg@eterna.com.au> 2723 configure, configure.in: 2724 add -lnsl -lsocket unconditionally on solaris. 2725 272620030709 2727Wed Jul 9 13:43:35 EST 2003 - matthew green <mrg@eterna.com.au> 2728 source/names.c: 2729 avoid using -1 as an array index. fixes some 2730 core dumps pointed out by bisqwit. 2731 2732Wed Jul 9 02:30:34 EST 2003 - Joel Yliluoma <bisqwit@iki.fi> 2733 include/vars.h.proto, include/vars.h, source/vars.c, 2734 include/config.h.proto, include/config.h, source/dcc.c, 2735 help/set/bind_local_dcchost, help/set/dcchost: 2736 Add /set bind_local_dcchost feature to select 2737 whether outgoing dcc requests should be bound 2738 to a local net interface. 2739 2740Wed Jul 9 02:16:16 EST 2003 - matthew green <mrg@eterna.com.au> 2741 source/edit.c: 2742 /DCC does not require a server (/dcc raw) 2743 2744Wed Jul 9 01:03:28 EST 2003 - Joel Yliluoma <bisqwit@iki.fi> 2745 include/vars.h.proto, include/vars.h, source/vars.c, 2746 include/config.h.proto, include/config.h, source/dcc.c, 2747 help/set/dccport, help/set/dcchost: 2748 Added /set dccport feature to select the 2749 TCP port to use in dcc requests. 2750 source/newio.c 2751 Enabled SO_REUSEADDR, which makes it faster to 2752 regain access to a previously listened port. 2753 help/timer: 2754 expand. 2755 275620030706 2757Mon Jul 7 01:28:08 EST 2003 - matthew green <mrg@eterna.com.au> 2758 include/irc.h, source/irc.c, source/term.c: 2759 turn on_signal_occured into an array and stack 2760 signals up (overflow at 16 signals; it should be 2761 enough and avoids any soft of malloc in signal 2762 handlers..) 2763 2764Mon Jul 7 00:31:31 EST 2003 - matthew green <mrg@eterna.com.au> 2765 source/mkmksiginc.pl, source/mksiginc.c, Makefile.in, 2766 configure, configure.in: 2767 add a perl program to generate a C program that we 2768 compile and run on the target to generate a list of 2769 valid signal names. this replaces the generation 2770 of sig.inc in configure. 2771 source/exec.c: 2772 reverse test of SIGCLD/SIGCHLD. this code needsa 2773 an enema... we should de-support old systems... 2774 2775Sun Jul 6 19:16:16 EST 2003 - matthew green <mrg@eterna.com.au> 2776 source/irc.c: 2777 move a big chunk of irc_io() into a new function to 2778 process one screen irc_do_a_screen(). 2779 source/screen.c: 2780 actually avoid dumping core in an error condition, not 2781 just have a comment that says /* error */. 2782 2783Sun Jul 6 18:49:42 EST 2003 - matthew green <mrg@eterna.com.au> 2784 help/on/os_signal: 2785 new documentation. 2786 2787Sun Jul 6 18:40:22 EST 2003 - matthew green <mrg@eterna.com.au> 2788 configure, configure.in: 2789 also try looking in /usr/include/asm/signal.h. fixes 2790 problems on linux. from jorgenam@ifi.uio.no. 2791 include/hook.h, include/hook.h.in, source/hook.c, source/irc.c, 2792 source/status.c: 2793 add support for /on OS_SIGNAL_LIST. from jorgenam@ifi.uio.no. 2794 include/irc.h, source/irc.c: 2795 various clean ups. 2796 include/irc_std.h, include/ircterm.h, source/crypt.c, source/irc.c, 2797 source/ircflush.c, source/status.c, source/term.c, source/wserv.c: 2798 change sigfunc from void (func *)(void) to void (func *)(int) 2799 and change all signal-handler functions accordingly. 2800 2801Thu Mar 27 15:14:47 EST 2003 - matthew green <mrg@eterna.com.au> 2802 source/icb.c: 2803 fix long messages in /msg. 2804 2805Tue Mar 18 18:07:06 EST 2003 - matthew green <mrg@eterna.com.au> 2806 source/icb.c: 2807 implement/honour /set beep_on_msg in ICB. 2808 2809Sun Mar 16 15:36:00 EST 2003 - matthew green <mrg@eterna.com.au> 2810 configure, configure.in: 2811 turn off emacs meta keys by default, it hurts non-english 2812 speakers too much. 2813 source/keys.c: 2814 fix the emacs meta key bindings for M-b and M-d. 2815 281620030315 2817Sat Mar 15 16:25:09 EST 2003 - matthew green <mrg@eterna.com.au> 2818 source/status.c: 2819 more new bugs - status_make_printable() over the entire 2820 string, not all but the last 3 chars. process the removal 2821 of \f for right justification even if we have filled the 2822 status bar width already. 2823 2824Sat Mar 15 01:10:00 EST 2003 - matthew green <mrg@eterna.com.au> 2825 source/names.c: 2826 fix another error from recreate_modes(). 2827 282820030314 2829Fri Mar 14 23:09:29 EST 2003 - matthew green <mrg@eterna.com.au> 2830 source/status.c: 2831 fix some errors introduced recently. 2832 2833Fri Mar 14 10:45:53 EST 2003 - matthew green <mrg@eterna.com.au> 2834 source/status.c: 2835 clean up make_status(); split it the guts into a 2836 make_status_one(). 2837 source/names.c: 2838 fix an error introduced in recreate_modes(). 2839 284020030313 2841Thu Mar 13 21:52:42 EST 2003 2842 source/ircaux.c: 2843 don't strcpy the empty_string; just assign a nul. 2844 source/alias.c, source/dcc.c, source/edit.c, source/help.c, 2845 source/ignore.c, source/names, source/notify.c, source/numbers.c, 2846 source/server.c, source/whois.c: 2847 avoid potential buffer overflows by using the 2848 nul-terminating my_strm*() routines. 2849 source/names.c: 2850 rewrite recreate_mode() to be more friendly. 2851 source/ctcp.c: 2852 source/status.c: 2853 avoid buffer overflows in ctcp and status buffers. 2854 noted by Timo Sirainen <tss@iki.fi> in PR#617. 2855 2856Thu Mar 06 13:49:30 EST 2003 - matthew green <mrg@eterna.com.au> 2857 source/alias.c: 2858 next_unit(): '|' should use C '|' not '||'. from ?. 2859 source/edit.c: 2860 use \ as a quote character to /msg, so that one can 2861 /msg \/oink and avoid the /oink alias. 2862 2863Sun Feb 16 13:13:20 EST 2003 - matthew green <mrg@eterna.com.au> 2864 help/@: 2865 add missing help file. PR#605 2866 source/server.c: 2867 don't remove fake entries, it causes trouble! 2868 286920030106 2870Tue Jan 7 04:39:05 EST 2003 - matthew green <mrg@eterna.com.au> 2871 source/reg.c: 2872 just call it "my_tolower" and be done with it. 2873 source/exec.c: 2874 for EXEC -OUT, make sure that public messages are treated 2875 like public (not private) messages. fixes exec -out on ICB. 2876 287720021226 2878Thu Dec 26 20:06:59 EST 2002 - matthew green <mrg@eterna.com.au> 2879 source/keys.c: 2880 don't bind char 231 to EMACS_FORWARD_CHAR but to 2881 SELF_INSERT, noted by moof. 2882 source/edit.c: 2883 don't look for comma's in ICB group or usernames as they 2884 are legal. PR#602. don't reset the command to "NOTICE" 2885 before ICB may want to check it for being "PRIVMSG". 2886 source/edit.c, help/msg: 2887 if we are doing a /msg, don't check if the channel name is 2888 the same as the target, but instead send a message, as they 2889 have separate name spaces. 2890 2891Sun Dec 8 13:57:31 EST 2002 - matthew green <mrg@eterna.com.au> 2892 contrib/japanese_support, contrib/README: 2893 the japanese (iso2022) support has been integrated, 2894 so remove the patch. 2895 2896Sat Dec 7 22:08:17 EST 2002 - matthew green <mrg@eterna.com.au> 2897 source/server.c: 2898 fix a bug in /on raw_send, from bisqwit. 2899 source/numbers.c: 2900 reset_nickname() doens't need a ArgList argument. 2901 PargsArgs() for 432, 433 and 437 numbers. 2902 290320021207 2904Sat Dec 7 02:08:54 EST 2002 - matthew green <mrg@eterna.com.au> 2905 source/edit.c: 2906 make timers run in level crap by default 2907 source/parse.c: 2908 make the final /notify output level crap by default, 2909 this and the above are part of PR#563. 2910 2911Sat Dec 7 01:26:42 EST 2002 - matthew green <mrg@eterna.com.au> 2912 source/window.c: 2913 use the server.h API for get_server_nickname(). 2914 source/numbers.c: 2915 remove nickname_in_use(). move the broken functionality 2916 to reset_nickname() and fix it. should fix PR#588. 2917 source/notice.c: 2918 reset attempting_to_connect to 0, don't decrememnt it. 2919 source/server.c: 2920 add new reconnect_to_server(server, prev_server) function 2921 and use it. in connect_to_server(), don't overwrite the 2922 server_index value with the return value from 2923 connect_to_server_{direct,process}(). avoids a potential 2924 data segment smashing bug. 2925 2926Fri Dec 6 19:32:30 EST 2002 - matthew green <mrg@eterna.com.au> 2927 source/dcc.c: 2928 dcc_raw_connect(): ipv4 sockaddr is 'struct sockaddr_in', 2929 not 'struct in_addr'. initialise "res". both from bisqwit. 2930 2931Sun Nov 17 22:46:43 EST 2002 - matthew green <mrg@eterna.com.au> 2932 configure.in, configure: 2933 also look for tgetent() in -lncurses. 2934 293520021117 2936Sun Nov 17 18:30:30 EST 2002 - matthew green <mrg@eterna.com.au> 2937 source/dcc.c, include/dcc.h: 2938 re-sync the dcc_types[] array and the DCC_TYPES defines, 2939 fixing PR#597. 2940 2941Sun Nov 17 13:20:24 EST 2002 - matthew green <mrg@eterna.com.au> 2942 source/ircaux.c: 2943 fix -h. don't listen() always! PR#598 & PR#600. 2944 294520021103 2946Sun Nov 3 01:01:15 EST 2002 - matthew green <mrg@eterna.com.au> 2947 source/mail.c: 2948 back out removal of message_from(.., LOG_CURRENT). mail 2949 stuff should probably go there anyway. 2950 295120021101 2952Thu Oct 31 23:05:10 EST 2002 - matthew green <mrg@eterna.com.au> 2953 source/edit.c: 2954 disable KICK, KILL, LEAVE, LINKS, PART, SERVLIST, SQUERY, 2955 STATS, SUMMON, TIME, TRACE and USERS for ICB. 2956 2957Thu Oct 31 15:00:55 EST 2002 - matthew green <mrg@eterna.com.au> 2958 source/icb.c: 2959 notice the new style icb group name change message. PR#596. 2960 296120021031 2962Thu Oct 31 01:21:46 EST 2002 - matthew green <mrg@eterna.com.au> 2963 help/on/icb_who, help/on/icb_motd: 2964 new help pages 2965 source/hook.c, source/icb.c: 2966 rework /on icb_who so that it actually works and is useful. 2967 Makefile: 2968 actually build sl.c 2969 2970Thu Oct 31 00:55:20 EST 2002 - matthew green <mrg@eterna.com.au> 2971 help/on/icb_error, help/on/icb_status: 2972 these document the right hook, not /help on notice. 2973 include/hook.h, include/hook.h.proto, source/hook.c, source/icb.c: 2974 implement /on icb_who and /on /icb_motd. 2975 297620021012 2977Sat Oct 12 22:09:05 EST 2002 - matthew green <mrg@eterna.com.au> 2978 source/screen.c, source/status.c, source/term.c: 2979 filter a few more chars that affect terminal output. PR#593. 2980 2981Fri Oct 4 15:30:36 EST 2002 - matthew green <mrg@eterna.com.au> 2982 source/edit.c: 2983 reset & check meta[5678]_hit if we use them, just like 2984 everything else except meta4_hit. 2985 2986Fri Oct 4 14:46:35 EST 2002 - matthew green <mrg@eterna.com.au> 2987 source/sl.c, include/sl.h: 2988 stringlist handling functions, from netbsd-current. 2989 source/help.c: 2990 replace help_paused_lines with a stringlist. this not only 2991 stops core dumps for non-standard terminal sizes (as reported 2992 in debian PR#66446), but also reduces memory usage. 2993 299420020912 2995Fri Sep 13 05:22:38 EST 2002 - matthew green <mrg@eterna.com.au> 2996 source/cast.c, source/screen.c: 2997 fix a couple more portability bogons. 2998 2999Thu Sep 12 16:23:02 EST 2002 - matthew green <mrg@eterna.com.au> 3000 include/cast_sbox.h: 3001 make this build with K&R C again. 3002 source/exec.c: 3003 don't redefine killpg(). 3004 source/getaddrinfo.c: 3005 remove ANSI-only C code. 3006 source/getnameinfo.c: 3007 fix an error in the function header. 3008 source/window.c: 3009 avoid redefining MAXINT. 3010 3011Tue Sep 10 21:49:57 EST 2002 - matthew green <mrg@eterna.com.au> 3012 include/irc_std.h: 3013 protect prototypes on new functions. 3014 include/cast_sbox.h: 3015 force all the constants to unsigned. 3016 source/irc.c, source/getaddrinfo.c, source/getnameinfo.c, 3017 source/inet_pton.c, source/inet_ntop.c, include/irc_std.h, 3018 source/hook.c, source/screen.c, source/icb.c: 3019 convert ANSI-only C to portable code. 3020 3021Tue Sep 10 20:32:07 EST 2002 - matthew green <mrg@eterna.com.au> 3022 Makefile.in: 3023 fix a few spurious issues picked up by IRIX make. 3024 302520020908 3026Sun Sep 8 22:38:47 EST 2002 - matthew green <mrg@eterna.com.au> 3027 source/dcc.c: 3028 remove one use of getnameinfo(). just convert the 32 bit 3029 value into a "a.b.c.d" IP address and let getaddrinfo() 3030 deal with it later.. dcc works again now. 3031 3032Sun Sep 8 22:09:29 EST 2002 - matthew green <mrg@eterna.com.au> 3033 source/dcc.c: 3034 fix a 64-bit problem with dcc. 3035 3036Sun Sep 8 16:03:37 EST 2002 - matthew green <mrg@eterna.com.au> 3037 script/icb, source/edit.c, source/icb.c: 3038 support IBC /join -invite and /join -force. 3039 3040Sun Sep 8 15:08:27 EST 2002 - matthew green <mrg@eterna.com.au> 3041 configure, configure.in: 3042 fix an informative message that was listed as an error. 3043 source/icb.c, source/edit.c, include/edit.h: 3044 make do_channel() public, not static. in icb_put_group(), 3045 call do_channel() before randomly sending a join to the 3046 server. should check for -force. 3047 source/dcc.c: 3048 more type clean up in register_dcc_offer(). 3049 305020020907 3051Sat Sep 7 17:16:11 EST 2002 - matthew green <mrg@eterna.com.au> 3052 source/edit.c, source/mail.c, source/numbers.c, source/window.c: 3053 remove message_from(..., LOG_CURRENT) in a few places. remove 3054 some comments that say to remove a couple of other instances 3055 of these as well. inspired by PR#563 (not fixed.) 3056 3057Sat Sep 7 16:59:55 EST 2002 - matthew green <mrg@eterna.com.au> 3058 source/screen.c: 3059 don't be smart when parsing screen bold, underline, inverse 3060 or "off" markers - it doesn't work. fixes PR#519. 3061 3062Sat Sep 7 09:26:25 EST 2002 - matthew green <mrg@eterna.com.au> 3063 source/dcc.c: 3064 clean up register_dcc_offer() some. properly set 3065 Client->remname so that dcc works properly. 3066 306720020906 3068Sat Sep 7 01:44:49 EST 2002 - matthew green <mrg@eterna.com.au> 3069 configure.in, configure: 3070 accept --with-non-blocking=none. 3071 include/irc.h, include/irc_std.h: 3072 move the RFC2553 / addrinfo / etc code to irc_std.h. add new 3073 source_host and dcc_source_host extern u_char *'s. define a 3074 SOCKADDR_STORAGE and SS_FAMILY define, based on INET6. 3075 include/server.h: 3076 remove local_addr from Server struct. add a SOCKADDR_STORAGE 3077 and int length. change get_server_localaddr() to return this, 3078 and add a get_server_localaddrlen(). 3079 include/struct.h: 3080 remove struct in_addr remote and replace it with a u_char 3081 *remname that we lookup when necessary. 3082 include/vars.h.proto, include/vars.h, source/vars.c, source/irc.c, 3083 help/set/dcchost: 3084 add /set dcchost. changes what "irc -H" set. 3085 source/dcc.c, source/irc.c, source/ircaux.c, source/server.c: 3086 remove MyHostName, MyHostAddr, forced_ip_addr and 3087 forced_ip_addr_storage. add dcc_source_host. remove 3088 process_hostname(). defer "irc -H" lookup until later. 3089 cleanup lots of INET6. store the full sockaddr in the 3090 server_list[] rather than just the IP address. remove any 3091 DCC means IPv4 code. simplify connect_by_number() and 3092 bind_local_addr() now that they don't do DCC listens. 3093 source/dcc.c: 3094 add a new dcc_sockname() to dcc.c and use it to print the IP & 3095 port for a given connection. add new listen_dcc() to handle 3096 dcc send/chat initiation. change dcc_open() drastically to 3097 suite. handle a failure to accept() in process_incoming_chat(). 3098 lots of little cleanup. we can now support IPv6 DCC. 3099 3100Thu Sep 5 14:09:35 EST 2002 - matthew green <mrg@eterna.com.au> 3101 acconfig.h, configure, configure.in, include/defs.h.in, include/irc.h: 3102 always provide a socklen_t. 3103 3104Thu Sep 5 13:16:21 EST 2002 - matthew green <mrg@eterna.com.au> 3105 acconfig.h, configure, configure.in, include/defs.h.in, 3106 source/inet_pton.c, source/inet_ntop.c: 3107 always provide inet_pton(3) and inet_ntop(3). 3108 source/ircaux.c: 3109 fix struct sockaddr_storage vs. INET6 build problem. 3110 3111Thu Sep 5 12:12:03 EST 2002 - matthew green <mrg@eterna.com.au> 3112 Makefile.in: 3113 let ircio get at getaddrinfo.o. 3114 acconfig.h, configure.in, configure, incldue/defs.h.in: 3115 don't bother looking for gethostbyname() in -lresolv anymore. 3116 look for gethostbyname2() for our getaddrinfo(). 3117 source/getaddrinfo.c, source/getnameinfo.c: 3118 define our own "myoffsetof" macro. 3119 source/ircaux.c: 3120 only set sockaddr.sa_len if it exsists... 3121 312220020904 3123Thu Sep 5 02:35:28 EST 2002 - matthew green <mrg@eterna.com.au> 3124 Makefile.in: 3125 regen depends. 3126 acconfig.h, aclocal.m4, configure, configure.in, source/getaddrinfo.c, 3127 source/getnameinfo.c, include/irc.h, include/defs.h.in, source/dcc.c: 3128 restructure ipv6 & getaddrinfo() tests. always provide a 3129 version of getaddrinfo() and getnameinfo(), and use these 3130 everywhere. a lot of the configure work was taken from 3131 lukemftp. 3132 help/alias/functions, help/dcc/talk help/dcc/tmsg, include/dcc.h, 3133 include/struct.h, include/talkd.h, script/tabkey, source/alias.c, 3134 source/dcc.c, source/edit.c: 3135 remove /dcc talk, /dcc tmsg and /dcc summon. 3136 include/ircaux.h, source/ircaux.c, source/irc.c, source/server.c: 3137 now we have getaddrinfo always, switch to a single 3138 connect_by_number() implementation. 3139 314020020903 3141Tue Sep 3 11:44:58 EST 2002 - matthew green <mrg@eterna.com.au> 3142 help/on/ctcp_reply, help/on/flood, help/on/notice, include/flood.h, 3143 script/bigcheese, script/columns, script/default, script/mudlike, 3144 script/oldping, script/service, script/traces, source/ctcp.c, 3145 source/flood.c, source/icb.c, source/notice.c, source/parse.c, 3146 source/whois.c: 3147 change /on flood, /on ctcp_reply, /on notice and /on 3148 encrypted_notice to all show the "target" as $1. this is 3149 a backwards incompatible change but sripts can use 3150 "if (V > 20020902)" to check for the changed interface. 3151 update all scripts to cope. fixes PR#587. 3152 315320020902 3154Mon Sep 2 12:20:30 EST 2002 - matthew green <mrg@eterna.com.au> 3155 source/edit.c 3156 reset new my_echo_set_who_level hack variable at the end 3157 of my_echo(). 3158 configure.in, configure: 3159 don't look for -lresolv on *bsd. fix --with-non-blocking. 3160 316120020830 3162Fri Aug 30 15:44:13 EST 2002 - matthew green <mrg@eterna.com.au> 3163 source/window.c: 3164 reset who_level to LOG_CRAP not 0. 3165 source/screen.c, source/edit.c, include/edit.h: 3166 GC some unused code. in add_to_screen(), if who_level was set by 3167 my_echo(), use it in preference to who_from, so that xecho -level 3168 works for channel data as well. fixes PR#575. 3169 source/parse.c: 3170 call message_from() with the right log level, not LOG_MSG always. 3171 3172Fri Aug 30 14:21:02 EST 2002 - matthew green <mrg@eterna.com.au> 3173 source/term.c: 3174 only decrement screen->co for the main screen; the value given 3175 to us by wserv for non-main screen's is already adjusted and 3176 was being decreased once per refresh_screen() call. 3177 3178Fri Aug 30 12:50:40 EST 2002 - matthew green <mrg@eterna.com.au> 3179 acconfig.h, include/defs.h.in: 3180 add #undef WITH_EMACS_META_KEYS 3181 configure.in, configure: 3182 add a --with-emacs-meta-keys switch to enable meta key support 3183 source/keys.c: 3184 support --with-emacs-meta-keys. 3185 3186Fri Aug 30 11:21:33 EST 2002 - matthew green <mrg@eterna.com.au> 3187 configure.in, configure: 3188 add an "int" return type to a main() test program. warn about 3189 non blocking in one missing case. 3190 include/ircaux.h: 3191 add connect_by_number2() in INET6 case. move SA_LEN compat here. 3192 include/server.h: 3193 add "struct addrinfo *res, *res0" elements in INET6 case. 3194 source/irc.c: 3195 cleanup INET6 code. 3196 source/ircaux.c: 3197 restructure INET6 version connect_by_number() into 3198 connect_by_number2(), and make the former call the new function. 3199 the new function takes pointers to struct addrinfo pointers for 3200 the res0 and current res0. this allows non blocking connects to 3201 work with multi-homed servers that do not listen on all interfaces 3202 or network protocols (IPv4/IPv6). fixes PR#533. 3203 source/server.c: 3204 pass a server_index to connect_to_server_{process,direct}() and 3205 use this to determine if we already have a res/res0 for this 3206 server, and pass these to connect_by_number2() appropriately. 3207 in do_server(), fix a INET6 getpeername() issue. also, if we 3208 lose connection to a server we haven't logged into, and we have 3209 res/res0, call connect_to_server() again directly. initialise/clean 3210 up the res0 in add_to_server_list(), remove_from_server_list() 3211 and in new login_to_server_nonnblocking(). INET6/nonblocking 3212 code clean up. 3213 3214Thu Aug 29 21:31:55 EST 2002 - matthew green <mrg@eterna.com.au> 3215 acconfig.h, configure, configure.in, include/defs.h.in, source/edit.c: 3216 look for setenv(3) and unsetenv(3) and add ircii commands 3217 /setenv and /unsetenv if they exist. 3218 source/alias.c, include/status.h, source/status.c: 3219 add a new format_clock() that contains part of the guts of 3220 update_clock(), which now uses format_clock(). call format_clock() 3221 instead of update_clock() in alias_date() ($Z). 3222 322320020829 3224Thu Aug 29 19:49:28 EST 2002 - matthew green <mrg@eterna.com.au> 3225 source/ircaux.c: 3226 split connect_by_number() into new/old socket API versions 3227 (#ifdef INET6), and remove the ESIX crap from the new one. 3228 fix a bug in the multiple-host records case where we would 3229 not notice a connection had succeeded but try everything 3230 and report success or failure for the last. 3231 include/log.h, source/log.c, source/window.c: 3232 change the signature on do_log() so that the passed in FILE * 3233 becomes a FILE ** we can modify, rather than return. fixes 3234 core dumps when using /log. from flier <flier@scrollz.com>. 3235 source/server.c: 3236 avoid from_server overflows (Matt Dunford <zoot@zotikos.com>) 3237 help/on/ctcp, help/on/dcc_raw, help/on/exec, help/on/exec_errors, 3238 help/on/exec_exit, help/on/exec_prompt, help/on/flood, help/on/hook, 3239 help/on/notify_signoff, help/on/notify_signon: 3240 fixes from Matt Dunford <zoot@zotikos.com>, with a couple of 3241 minor touchups by myself. 3242 3243Tue Aug 27 20:46:14 EST 2002 - matthew green <mrg@eterna.com.au> 3244 configure.in, configure: 3245 detect linux /usr/include/ncurses earlier so that 3246 we actually find <termcap.h>. 3247 3248Tue Aug 27 00:06:01 EST 2002 - matthew green <mrg@eterna.com.au> 3249 help/basics, help/cat, help/commands, help/connect: 3250 minor fixes from Matt Dunford <zoot@zotikos.com>. 3251 325220020822 3253Thu Aug 22 23:12:10 EST 2002 - matthew green <mrg@eterna.com.au> 3254 source/names.c: 3255 fix !channel handling. fixes PR#571. 3256 3257Thu Aug 22 16:59:10 EST 2002 - matthew green <mrg@eterna.com.au> 3258 configure.in, configure: 3259 don't check for v?snprintf twice. 3260 Makefile.in: 3261 don't build rijndael library (yet). 3262 source/server.c: 3263 fix some pedantic C issues picked up by the HPUX C compiler. 3264 script/fkeys: 3265 new script to make function keys work. it's gross but it 3266 works. from Stefan `Sec` Zehl <sec@42.org> in PR#574. 3267 script/2.8script, script/default, script/newaway 3268 unify & backwards compat-ify alias "n.o". from "Mario 3269 'BitKoenig' Holbe" <Mario.Holbe@RZ.TU-Ilmenau.DE> in PR#580. 3270 source/irc.c: 3271 avoid core dumps with "irc --- nick". from Oleg Drokin 3272 <green@linuxhacker.ru> in PR#576. 3273 3274Thu Aug 22 04:04:38 EST 2002 - matthew green <mrg@eterna.com.au> 3275 source/icb.c: 3276 split up the message properly; we were not including the 3277 length of our nickname. 3278 3279Fri Jun 21 11:40:10 EST 2002 - matthew green <mrg@eterna.com.au> 3280 source/irc.c, doc/ircII.1: 3281 irc -t is now the default. use -T to get ti/te sequences. 3282 328320020403 3284Wed Apr 3 16:37:16 EST 2002 - matthew green <mrg@eterna.com.au> 3285 help/cat: 3286 change literal ^_ and ^B into control chars. from William 3287 Katz <druid@dorsai.org>. 3288 328920020402 3290Tue Apr 2 19:10:57 EST 2002 - matthew green <mrg@eterna.com.au> 3291 source/dcc.c: 3292 use the size of the buffer, not sizeof (char *). fixes PR#569. 3293 3294Tue Apr 2 17:42:06 EST 2002 - matthew green <mrg@eterna.com.au> 3295 include/status.h, source/alias.c, source/irc.c, source/status.c: 3296 back out most of the previous; redo it via adding a new 3297 UPDATE_TIME flag for update_clock(); only when this is 3298 passed do we update the local min/hour and check for timers 3299 going off, etc. 3300 include/hook.h.proto, include/hook.h, source/dcc.c, help/on/dcc_list: 3301 add new /on dcc_list, ala window_list. 3302 3303Thu Mar 28 23:52:17 EST 2002 - matthew green <mrg@eterna.com.au> 3304 source/window.c: 3305 don't call add_channel() with a key of "". 3306 source/names.c: 3307 don't create a mode if we just have an empty key. 3308 source/server.c: 3309 fix a warning from no nonblocking connects. 3310 331120020328 3312Thu Mar 28 01:59:34 EST 2002 - matthew green <mrg@eterna.com.au> 3313 include/status.h, source/alias.c, source/irc.c, source/status.c: 3314 move the static int hour/min from update_clock() to irc_io(), 3315 and add a pair of int * arguments to update_clock() to pass 3316 them in. use these only if provided. update all callers. 3317 i believe this fixes the status-clock-does-not-update bug. 3318 3319Thu Mar 28 01:06:55 EST 2002 - matthew green <mrg@eterna.com.au> 3320 configure.in, configure: 3321 add a --enable-non-blocking=[no|posix|bsd|sysv] to force the 3322 type of non blocking connects used, or to disable it entirely. 3323 3324Thu Mar 28 00:15:39 EST 2002 - matthew green <mrg@eterna.com.au> 3325 script/autoquery, help/load/autoquery: 3326 new script from Friedrich Delgado Friedrichs 3327 <friedel@nomaden.org> that causes ircII to create 3328 new /query windows for each nick involved in /msg. 3329 include/strsep.h, source/strsep.c, Makefile.in, source/edit.c, 3330 source/irc.c, source/numbers.c, source/screen.c, source/window.c: 3331 copy netbsd libc/strsep.c and borg it into my_strsep(). 3332 use this to replace using strtok() everywhere, except for 3333 a few places next_arg() fit instead. 3334 source/ircaux.c: 3335 look for EAI_FAMILY if EAI_ADDRFAMILY is missing. BSD/OS, 3336 from PR#566. 3337 include/names.h, source/names.c, source/window.c, source/edit.c, 3338 source/icb.c, source/irc.c, source/parse.c, source/window.c: 3339 add a u_char *key argument to add_channel() and use it in 3340 /window channel. 3341 source/window.c: 3342 fix /set xterm_options/screen_options. 3343 3344Tue Mar 26 04:44:56 EST 2002 - matthew green <mrg@eterna.com.au> 3345 source/icb.c: 3346 call message_from() for the icb group, in the default case 3347 of an info message, so that they go to the group. 3348 3349Mon Mar 25 15:47:26 EST 2002 - matthew green <mrg@eterna.com.au> 3350 source/window.c: 3351 set default nick and port in window_get_connected() before 3352 we call add_to_server_list(). fixes core dump in /window 3353 server new.server. 3354 335520020325 3356Mon Mar 25 01:47:38 EST 2002 - matthew green <mrg@eterna.com.au> 3357 include/server.h, source/server.c, source/window.c: 3358 add a new "fake server" concept that new servers are 3359 added as, until connect_to_server_*() returns some sort 3360 of success and enters the server. after these return, 3361 we garbage collect all fake server entries. this keeps 3362 the server list as clean as before. 3363 3364Mon Mar 25 00:57:07 EST 2002 - matthew green <mrg@eterna.com.au> 3365 include/alias.h, include/dcc.h, include/hook.h.proto, 3366 include/hook.h, include/input.h, include/whois.c: 3367 remove unused extern globals. XXX mark some others. 3368 source/edit.c: 3369 fix /whois for ICB. 3370 source/server.c: 3371 fix "irc -icb nick icb.server.com" again. 3372 3373Mon Mar 25 00:13:12 EST 2002 - matthew green <mrg@eterna.com.au> 3374 include/server.h, include/window.h, source/edit.c, source/notice.c, 3375 source/numbers.c, source/server.c, source/window.c: 3376 move `int attempting_to_connect;' inside the server_list[] 3377 and maintain it on a per-server basis. remove the 3378 connect_next_nick, connect_next_password, 3379 connect_next_icbgroup, connect_next_icbmode, 3380 connect_next_server_group, connect_next_as_icb and 3381 connect_next_as_irc globals. to keep the functionality always 3382 add /server entries to the server list when processing them so 3383 we can store this information there from the start. modify 3384 CHOOSE_PORT to take a server argument as a version. make 3385 /window server pay attention to multiple -flags. 3386 3387Sun Mar 24 21:26:42 EST 2002 - matthew green <mrg@eterna.com.au> 3388 help/window/where: 3389 very old missing help file. 3390 3391Sat Mar 23 16:25:34 EST 2002 - matthew green <mrg@eterna.com.au> 3392 include/window.h, source/server.c, source/window.c: 3393 add a new window_set_prev_server(int server) function, that 3394 sets the prev_server for every window whose server is the 3395 same as "server". call this from login_to_server(). 3396 3397Sat Mar 23 15:24:33 EST 2002 - glen mccready <gkm@pobox.com> 3398 include/server.h, source/server.c, source/window.c: 3399 unstatic add_server_to_server_group(). implement 3400 `/window server .'. still doesn't quite work as the 3401 prev_server isn't set properly yet. 3402 340320020322 3404Fri Mar 22 02:48:54 EST 2002 - matthew green <mrg@eterna.com.au> 3405 source/alias.c: 3406 revert change from Tue Mar 19 00:28:36 EST 2002 to: 3407 alias_server_version(), function_querynick(), 3408 function_winserver(), function_winservergroup(), 3409 function_winvisible(), function_winnum(), function_winnam(), 3410 function_winrows(), function_wincols() and function_channels(). 3411 341220020321 3413Thu Mar 21 14:16:01 EST 2002 - matthew green <mrg@eterna.com.au> 3414 doc/ircII.1: 3415 document server server groups, and expand the examples. 3416 3417Thu Mar 21 14:03:10 EST 2002 - matthew green <mrg@eterna.com.au> 3418 source/edit.c: 3419 ensure that "/save -all" works. PR#559. 3420 3421Thu Mar 21 13:48:02 EST 2002 - matthew green <mrg@eterna.com.au> 3422 source/alias.c, include/defs.h.in, configure, configure.in: 3423 look for and include <crypt.h> for crypt(3) prototype. 3424 include/window.h, include/server.h, source/window.c, source/server.c: 3425 integrate server groups more tightly. allow one to express 3426 them in the $IRCSERVER format as ``:group:'' before the 3427 server name. eg, IRC/:group:server.name:port. 3428 3429Thu Mar 21 03:58:58 EST 2002 - matthew green <mrg@eterna.com.au> 3430 source/edit.c: 3431 add a new NOICB command flag and reject any such commands 3432 attempted on an ICB server. don't send an info command 3433 to the ICB server, but do still allow it locally. 3434 3435Thu Mar 21 02:36:54 EST 2002 - matthew green <mrg@eterna.com.au> 3436 source/names.c: 3437 in both lookup_channel() and has_voice(), verify that our 3438 arguments are sane, and return failure if they aren't. PR#560. 3439 3440Thu Mar 21 00:38:27 EST 2002 - matthew green <mrg@eterna.com.au> 3441 help/server, source/server.c, include/server.h: 3442 implement /server -group <group> <server>, which sets the 3443 server group for the name <server> to <group>. <group> is 3444 handled just as window server groups, and infact uses the 3445 same data structures. 3446 help/window/addgroup: 3447 reference help/window/delgroup. 3448 source/ircaux.c: 3449 minor optimisations for malloc_str*(). 3450 source/ircflush.c, source/ircio.c, source/wserv.c: 3451 add prototypes for main() so we get no warnings. 3452 source/server.c, source/whois.c: 3453 work around -Wuninitalised breakage. 3454 3455Wed Mar 20 03:20:08 EST 2002 - matthew green <mrg@eterna.com.au> 3456 script/tabkey: 3457 fix $tk.followadd(). from Mario.Holbe@RZ.TU-Ilmenau.DE 3458 in PR#565. 3459 3460Tue Mar 19 00:28:36 EST 2002 - matthew green <mrg@eterna.com.au> 3461 source/alias.c: 3462 fix alias_chanop(), alias_modes() (from PR#562), 3463 alias_server_version(), function_querynick(), 3464 function_winserver(), function_winservergroup(), 3465 function_winvisible(), function_winnum(), function_winnam(), 3466 function_winrows(), function_wincols() and function_channels() 3467 to use the correct server, not the current windows server. 3468 include/ignore.h, source/ignore.c, help/alias/functions: 3469 new ignore_list_string() function. rearrange ignore_list(), 3470 add a new external ignore_list_string(), and update 3471 ignore_list() callers. document. 3472 3473Mon Mar 18 23:52:11 EST 2002 - matthew green <mrg@eterna.com.au> 3474 source/ircaux.c, include/ircaux.c: 3475 add malloc_strncpy() and malloc_strncat() functions that 3476 have an "size_t extra" parameter, indicating how much 3477 extra space to allocate for this string. useful for 3478 replacing two calls to malloc_str*() with one and a 3479 call to my_str*(), and avoiding the extra malloc. 3480 3481Mon Mar 18 01:16:42 EST 2002 - matthew green <mrg@eterna.com.au> 3482 help/set/tab, help/set/decrypt_program, help/set/show_stars, 3483 help/set/iso2022_support: 3484 add missing help docs. PR#558. 3485 help/set/pause_after_motd help/set/status_dquery: 3486 remove obsolete docs. PR#558. 3487 incldue/alias.h: 3488 remove unused alias_illegals extern. 3489 3490Mon Mar 11 23:50:42 EST 2002 - matthew green <mrg@eterna.com.au> 3491 help/on/window_list, include/hook.h, include/hook.h.proto, 3492 source/hook.c, source/window.c: 3493 add a new /on window_list that hooks into the output of 3494 /window list. part of PR#551. 3495 3496Mon Mar 11 20:25:46 EST 2002 - matthew green <mrg@eterna.com.au> 3497 source/screen.c, source/window.c, include/window.h: 3498 change create_additional_screen() to take an "int" arg of the 3499 screen type (ST_xxx), and to use this when determining the 3500 type of screen to create.. change /window create to look for 3501 either a -xterm or -screen option to force one or the other. 3502 add some more debug output. now one can open new xterm's from 3503 a screen session. 3504 3505Mon Mar 11 01:00:41 EST 2002 - matthew green <mrg@eterna.com.au> 3506 help/expressions: 3507 add a note warning about the dangers of ircII expression 3508 evaluation, and to use ( and ) to properly force the correct 3509 association. 3510 source/icb.c: 3511 add /on flood support to ICB. PR#524. 3512 351320020310 3514Sun Mar 10 20:10:51 EST 2002 - matthew green <mrg@eterna.com.au> 3515 source/numbers.c: 3516 password_sendline: server index is in data not line: PR#547. 3517 source/server.c: 3518 add_to_server_list: be careful not to clear valid passwords: 3519 PR#547. 3520 3521Sun Mar 10 19:14:11 EST 2002 - matthew green <mrg@eterna.com.au> 3522 configure.in, configure: 3523 if we don't find gethostbyname in -lresolv, try -lnsl. PR#537. 3524 3525Sun Mar 10 18:16:23 EST 2002 - matthew green <mrg@eterna.com.au> 3526 source/notice.c: 3527 fix a bug from 8 years ago: don't send flooded notices as 3528 public notices. fixes PR#549. 3529 source/edit.c: 3530 display sub-second timer information, from flier in PR#554. 3531 source/numbers.c: 3532 add a hack to fix PR#552: set the nick on numeric 001 if 3533 it is wrong. 3534 3535Sun Mar 10 01:55:57 EST 2002 - matthew green <mrg@eterna.com.au> 3536 source/hook.c: 3537 add fuzzy matching so that, eg, "/on send" will show all the 3538 current hooks starting with "send". idea from poxaV. 3539 354020020309 3541Sat Mar 9 02:34:44 EST 2002 - matthew green <mrg@eterna.com.au> 3542 source/ctcp.c, source/dcc.c: 3543 add some beep support, if beep_on_level has CTCP or 3544 DCC. from dive@endersgame.net. 3545 Makefile.in: 3546 regen depends. 3547 3548Sat Mar 9 02:05:25 EST 2002 - matthew green <mrg@eterna.com.au> 3549 source/irc.c, source/input.c, source/screen.c: 3550 add some debug code. in input_update() don't overwrite 3551 buffer_pos or str_start on resize. use set_current_screen(), 3552 don't set current_screen manually. clean up 3553 screen_wserv_message() some. 3554 355520020306 3556Wed Mar 6 21:18:30 EST 2002 - matthew green <mrg@eterna.com.au> 3557 source/irc.c: 3558 fix a Debug(). 3559 source/term.c: 3560 restructure term_resize() slightly. 3561 source/screen.c: 3562 add some debugging to create_additional_screen(). clean up unix 3563 sockets. default screen size from the master, not 80x24. 3564 call recalculate_windows after getting a wserv message. 3565 source/wserv.c: 3566 remove ircIIpid and related code, obsolete. include some more 3567 headers so we find TIOCGWINSZ where it can be. fix got_sigwinch() 3568 bugs. fixed arg checking bugs. fixed control socket path bug. 3569 don't perror with our tty. call got_sigwinch() at startup. 3570 3571Tue Jan 22 20:24:56 EST 2002 - matthew green <mrg@eterna.com.au> 3572 source/vars.c: 3573 set the default IRCHOST variable. from flier. 3574 3575Tue Jan 22 13:46:53 EST 2002 - matthew green <mrg@eterna.com.au> 3576 script/autoop: 3577 fix from Bernd Eckenfels <ecki@lina.inka.de> for nicks 3578 ending in backslash. 3579 help/alias/special: 3580 fix an example. from David Murn <davey@doa.org> in 3581 debian PR#113884. 3582 3583Tue Jan 22 03:05:27 EST 2002 - matthew green <mrg@eterna.com.au> 3584 source/irc.c: 3585 only look at wservin for non-main screen's. 3586 source/screen.c: 3587 implement screen_wserv_message(). 3588 source/term.c: 3589 modify term_resize() to cope with wserv messages. 3590 3591Tue Jan 22 01:15:29 EST 2002 - matthew green <mrg@eterna.com.au> 3592 Makefile.in: 3593 link ircII.1 to irc.1, finally. 3594 include/screen.h, include/struct.h, source/irc.c, source/wserv.c, 3595 source/screen.c: 3596 add a new control socket for WSERV sessions, for coping with 3597 screen size changes. 3598 include/config.h.dist, include/var.h, include/var.h.proto, 3599 include/hook.h, include/hook.h.proto, include/keys.h, 3600 include/keys.h.proto, source/crypto.c, source/vars.c: 3601 add a new /set decrypt_program. from flier. 3602 source/icb.c: 3603 clear the ICB $userhost() when it isn't known. 3604 3605Wed Jan 16 00:33:45 EST 2002 - matthew green <mrg@eterna.com.au> 3606 source/crypt.c: 3607 put a newline between crypto key & text for external programs. 3608 noticed by flier <flier@scrollz.com>. 3609 3610Wed Dec 19 00:54:04 EST 2001 - matthew green <mrg@eterna.com.au> 3611 source/icb.c: 3612 don't wipe out the current channel in icb_put_action(). 3613 source/server.c: 3614 rework logic on what server to choose next to avoid skipping 3615 one accidentally. 3616 3617Wed Dec 19 00:11:03 EST 2001 - matthew green <mrg@eterna.com.au> 3618 source/icb.c, source/edit.c, include/icb.h: 3619 new icb_put_action() function. make icb_put_public() 3620 obey window_display. 3621 include/ircterm.h, include/struct.h, source/alias.c, source/funny.c, 3622 source/help.c, source/input.c, source/menu.c, source/output.c, 3623 source/screen.c, source/status.c, source/term.c, source/window.c: 3624 move lower_mark, upper_mark, input_line, str_start, zone 3625 and cursor from screen.c into the per-screen struct. also 3626 move the static lines & columns variables from input.c and 3627 term.c here as well. this handles the input prompt on other 3628 screen's properly. move the CO and LI variables from term.c 3629 into the per-screen struct as well. call new_window() at 3630 the top of init_screen() to setup the master screen structure 3631 earlier. TODO: have some way of wserv telling the master 3632 ircii about screen changes. but at least for now the input 3633 prompt should work much better. 3634 3635Tue Dec 18 17:34:06 EST 2001 - matthew green <mrg@eterna.com.au> 3636 include/irc_std.h: 3637 add UPP and CPP macros for char ** conversions. 3638 3639Mon Dec 17 22:17:22 EST 2001 - Joel Yliluoma <bisqwit@iki.fi> 3640 source/edit.c, source/irc.c, include/edit.h: 3641 Added support for microsecond resolution in /TIMER. 3642 Todo: Add named timers some day. 3643 source/dcc.c: 3644 Fixed crashing when closing DCC RAW_LISTEN socket. 3645 help/exec: 3646 Updated the documentation (found a flaw). 3647 3648Mon Dec 17 21:55:24 EST 2001 - matthew green <mrg@eterna.com.au> 3649 source/alias.c, help/alias/functions: 3650 new $filestat($file) that returns size, uid, gid, mode, 3651 filename of passed in $file. inspired by a change in 3652 the debian bug database. 3653 365420011210 3655Fri Nov 30 10:03:10 EST 2001 - matthew green <mrg@eterna.com.au> 3656 script/times: 3657 add a public_other /on as well 3658 source/irc.c: 3659 call check_wait_status until it returns < 0. from bisqwit. 3660 3661Tue Sep 18 11:37:03 EST 2001 - matthew green <mrg@eterna.com.au> 3662 source/alias.c: 3663 fix $mid(0, ...). from tristan in private email. 3664 3665Fri Sep 7 02:49:55 EST 2001 - Joel Yliluoma <bisqwit@iki.fi> 3666 help/exec, source/alias.c, source/exec.c, include/exec.h, 3667 include/alias.h: 3668 Added -FILTER switch to /EXEC, and documented it, 3669 Now external programs can be scripted to select 3670 recipients on multiple servers. 3671 3672Fri Sep 7 02:49:52 EST 2001 - Joel Yliluoma <bisqwit@iki.fi> 3673 source/server.c, include/hook.h, include/hook.h.proto, source/hook.c, 3674 help/on/raw_send: 3675 RAW_SEND -list support had vanished from my last 3676 update, added it back. 3677 source/screen.c: 3678 mIRC-colour codes work better now. 3679 Rewritten the indent code, colour codes 3680 now work in CONTINUED_LINE too. 3681 help/on/msg: 3682 Updated the documentation of /msg. 3683 source/screen.c, source/edit.c, source/edit.h: 3684 Allow multiple different target redirection. 3685 368620010807 3687Tue Aug 7 21:08:32 EST 2001 - matthew green <mrg@eterna.com.au> 3688 source/window.c, source/screen.c: 3689 set connect_next_as_irc/connect_next_as_icb before calling 3690 connect_to_server() always. 3691 source/alias.c, source/crypt.c, source/ctcp.c, source/dcc.c, 3692 source/edit.c, source/exec.c, source/funny.c, source/help.c, 3693 source/hook.c, source/icb.c, source/ignore.c, source/ircaux.c, 3694 source/ircflush.c, source/ircio.c, source/mail.c, source/names.c, 3695 source/numbers.c, source/parse.c, source/rijndael.c, source/screen.c, 3696 source/server.c, source/stack.c, source/status.c, source/translat.c, 3697 source/vars.c, source/whois.c, source/window.c: 3698 convert sprintf() to snprintf() now that we have that always. 3699 3700Tue Aug 7 15:42:19 EST 2001 - matthew green <mrg@eterna.com.au> 3701 help/icb: 3702 add a link to http://www.icb.net/ 3703 source/output.c: 3704 avoid core dumps on empty MOTD lines. from Bernd Eckenfels 3705 <ecki@lina.inka.de>. 3706 include/buffer.h, source/output.c, source/hook.c: 3707 move PUTBUF macros into new buffer.h, and use them in do_hook. 3708 configure.in, configure: 3709 look for sendmail in /usr/sbin first. 3710 source/output.c: 3711 use snprintf() everywhere here. 3712 3713Fri Jul 27 01:19:04 EST 2001 - matthew green <mrg@eterna.com.au> 3714 source/input.c: 3715 in update_input(), add some sanity checking on lower_mark, 3716 upper_mark & str_start. 3717 source/alias.c: 3718 fix an underrun in $mid(). pointed out by jnelson@epicsol.org 3719 in PR#536. 3720 372120010720 3722Fri Jul 20 10:49:26 EST 2001 - matthew green <mrg@eterna.com.au> 3723 source/screen.c: 3724 in output_line(), don't fwrite() in the CHARSET & COLOUR tag 3725 cases, unless we have a greater than zero length. 3726 3727Fri Jul 20 06:57:28 EST 2001 - matthew green <mrg@eterna.com.au> 3728 source/screen.c: 3729 in output_line(), don't blindly step through the string to 3730 decode the colour or charset tags, make sure we don't step 3731 past the nul. 3732 source/lastlog.c: 3733 in bits_to_lastlog_level(), the max length of the levels is 3734 closer to 120 than 80.. adjust a buffer size. 3735 373620010612 3737Tue Jun 12 23:12:34 EST 2001 - matthew green <mrg@eterna.com.au> 3738 source/irc.c, source/window.c, source/server.c: 3739 provide no default quit message anywere. 3740 source/parse.c: 3741 fix is_channel() for ICB. 3742 3743Sun May 20 06:48:11 EST 2001 - Joel Yliluoma <bisqwit@iki.fi> 3744 include/vars.h.proto, include/vars.h, include/irc.h, 3745 include/config.h.dist, source/screen.c, source/vars.c: 3746 applied the japanese patch (from galibert@mines.u-nancy.fr), 3747 which also fixes the ^V/^B/^_/color handling over broken lines. 3748 source/dcc.c, source/irc.c: 3749 dcc working with masquerades (new -H switch; IPv4 only) 3750 source/notice.c, source/server.c: 3751 fixed -q again (prevent also .ircquick) 3752 source/alias.c, help/alias/functions: 3753 added new functions: SHELLFIX, URLENCODE functions. 3754 Makefile.in: 3755 remove rijndael-alg-ref.c, rijndael-api-ref.c and config.h on 3756 make distclean. 3757 3758Mon Feb 12 23:53:22 EST 2001 - matthew green <mrg@eterna.com.au> 3759 include/server.h, source/funny.c, source/status.c: 3760 add usermode `z' support. 3761 doc/ircII.1: document the ircII.servers & ircII.motd files. 3762 3763Mon Feb 12 23:42:30 EST 2001 - matthew green <mrg@eterna.com.au> 3764 source/snprintf.c, Makefile.in, acconfig.h, configure, configure.in: 3765 look for snprintf() and vsnprintf() and provide replacements if 3766 they do not exist. nothing uses this (yet). 3767 3768Tue Jan 2 22:26:14 EST 2001 - matthew green <mrg@eterna.com.au> 3769 source/server.c: 3770 don't call get_connected() but just call window_set_server() for 3771 the relevant windows, if we fail to connect. fixes PR#227. 3772 3773Tue Jan 2 17:09:21 EST 2001 - matthew green <mrg@eterna.com.au> 3774 help/alias/functions, include/ignore.h, include/notify.h, 3775 source/alias.c, source/ignore.c, source/notify.c: 3776 4 new functions, inspired by PR#66: 3777 IGNORED(NICK TYPE) Returns "ignored", "highlighted", "dont" 3778 or "0", depending on what ignore action 3779 will be applied to this NICK and TYPE of 3780 ignorance. TYPE must be one of MSGS, 3781 PUBLIC, WALLS, WALLOPS, INVITES, 3782 NOTICES, NOTES, CTCP or CRAP. 3783 NOTIFY(TYPE) Returns either the TYPE "here", "gone" 3784 or "all" lists, default being "here". 3785 SCREENS() Returns a list of the current screen. 3786 WINDOWS() Returns a list of the current windows. 3787 inspired by PR#66. 3788 include/vars.h.proto, include/vars.h, include/config.h.dist, 3789 source/output.c, source/vars.c, help/set/star_prefix: 3790 new /set star_prefix variable that replaces the hard coded 3791 "*** " prefix from many messages, and replaces it with the 3792 expanded value of this variable, so that /set star_prefix $Z 3793 works. inspired by PR#48. 3794 source/numbers.c: 3795 be saner in reset_nickname(). deal with various bugs here. 3796 inspired by PR#287. 3797 3798Tue Jan 2 11:50:23 EST 2001 - matthew green <mrg@eterna.com.au> 3799 include/vars.h.proto, include/vars.h, include/config.h.dist, 3800 include/names.h, source/alias.c, source/names.c, source/status.c, 3801 source/vars.c, help/set/status_voice: 3802 add new /set status_voice and %v status_format modifier, 3803 part of PR#11. 3804 380520010101 3806Mon Jan 1 22:07:31 EST 2001 - matthew green <mrg@eterna.com.au> 3807 source/notice.c, irc.c: 3808 load "global" before .ircrc, when using -b. fixes PR#498. 3809 source/window.c: 3810 avoid a core dump when re-binding a channel. fixes PR#497. 3811 script/listidle, help/load/listidle: 3812 new listidle script from tristan in PR#466. 3813 source/numbers.c: 3814 re-do numeric 437 processing. fixes PR#500. 3815 source/edit.c: 3816 handle /me for ICB. fixes PR#492. 3817 source/whois.c: 3818 kill some debug messages. 3819 source/term.c: 3820 kill some "#ifdef mips" lossage. 3821 3822Mon Jan 1 12:34:26 EST 2001 - matthew green <mrg@eterna.com.au> 3823 acconfig.h, configure, configure.in, include/defs.h.in, 3824 include/ircterm.h, source/term.c: 3825 check for fwrite/fputc and only redefine them if they are 3826 not already present (and if "mips", like it was). make the 3827 fake macros more robust and correct. 3828 382920001231 3830Tue Dec 19 16:25:55 EST 2000 - matthew green <mrg@eterna.com.au> 3831 source/menu.c: 3832 fix a core dump, noted by "David O'Shea" 3833 <s341595@student.uq.edu.au> in PR#503. 3834 source/term.c: 3835 give cygwin a 2K buffer. 3836 3837Mon Dec 4 21:34:19 EST 2000 - matthew green <mrg@eterna.com.au> 3838 source/edit.c: 3839 apply patch from <jnelson@acronet.net> to avoid sending 3840 "NAMES " to the server in cases it was not meant. PR#501. 3841 384220001120 3843Mon Nov 20 00:07:40 EST 2000 - matthew green <mrg@eterna.com.au> 3844 source/edit.c: 3845 in send_text(), don't do dcc chat/talk or command expansion 3846 if the target is actually the current channel. stops things 3847 like groups named `/quit' from being obnoxious. 3848 3849Mon Nov 6 02:00:46 EST 2000 - matthew green <mrg@eterna.com.au> 3850 configure, configure.in: 3851 add a `--with-efence' option to include the Electric Fence 3852 malloc debugging library. 3853 include/ircterm.h: 3854 support ncurses tputs(3) variant. 3855 3856Wed Oct 25 08:35:55 EST 2000 - matthew green <mrg@eterna.com.au> 3857 source/output.c: 3858 s/buf/putbuf/ in !stdarh.h code. PR#496 from Andreas Ley 3859 <andy@rz.uni-karlsruhe.de>. 3860 386120001024 3862Tue Oct 24 12:52:46 EST 2000 - matthew green <mrg@eterna.com.au> 3863 source/names.c: 3864 in mark_not_connected(), clear the channel status. fixes 3865 PR#495. 3866 3867Fri Oct 13 22:18:52 EST 2000 - matthew green <mrg@eterna.com.au> 3868 include/crypt.h, source/cast.c, source/crypt.c, source/rijndael.c, 3869 source/sed.c: 3870 toss the generic CBC code for now. make cast.c like it was, 3871 and use the built-in rijndael CBC code. generate a 32-byte 3872 IV for the start of the connection. disable the rijndael 3873 code while it doesn't work. 3874 source/irc.c: 3875 call srandom() when we start. 3876 387720001009 3878Mon Oct 9 02:13:16 EST 2000 - matthew green <mrg@eterna.com.au> 3879 Makefile.in: 3880 regenerate dependancies 3881 3882Mon Oct 9 02:04:32 EST 2000 - matthew green <mrg@eterna.com.au> 3883 source/rijndael.c, source/cast.c, source/crypt.c, source/sed.c, 3884 include/crypt.h: 3885 further crypto handling simplification. complete the rijndael 3886 cipher (using the new generic CBC-mode handling code). 3887 3888Sun Oct 8 08:47:31 EST 2000 - matthew green <mrg@eterna.com.au> 3889 source/rijndael/: 3890 add Rijndael reference source 2.1. 3891 Makefile.in: 3892 update for Rijndael support. clean up some things. 3893 configure.in, configure: 3894 remove --with-cast. crypto is always there now. 3895 include/crypt.h, source/ctcp.c: 3896 simplify ctcp crypto handling. 3897 389820001007 3899Sat Oct 7 21:58:27 EST 2000 - matthew green <mrg@eterna.com.au> 3900 source/edit.c, source/alias.c, source/irc.c, include/irc.h: 3901 remove internal_version, and make irc_version be this YYYYMMDD 3902 string instead. 3903 3904Sat Oct 7 16:36:19 EST 2000 - matthew green <mrg@eterna.com.au> 3905 source/edit.c, source/alias.c: 3906 PR#482 & #483 from maximum entropy <entropy@zippy.bernstein.com> 3907 fix off-by-one error calling getcwd. 3908 source/irc.c: 3909 fix some typos 3910 source/screen.c: 3911 more robust mIRC code from PR#480 from 3912 <wiz@danbala.tuwien.ac.at>. 3913 source/ircaux.c: 3914 pr#488 from ecki@lina.inka.de: fix off-by-one overflow in 3915 strmcpy(). 3916 configure.in, configure: 3917 Reimplemented gethostbyname() check from Arkadiusz Miskiewicz 3918 <misiek@pld.org.pl> in PR#486. 3919 3920Tue Sep 19 02:45:35 EST 2000 - matthew green <mrg@eterna.com.au> 3921 doc/ircII.1, include/irc.h, source/irc.c, source/term.c: 3922 add new -t command line argument to make ircII not use the 3923 termcap "ti" and "te" sequences. fixes PR#484. add -T to 3924 turn them on (if present) for completeness. 3925 39264.4Z 3927Thu Aug 31 22:19:55 EST 2000 - matthew green <mrg@eterna.com.au> 3928 source/window.c: 3929 fix "/window new move -3". patch from 3930 <jnelson@epicsol.org> in PR#477. 3931 source/flood.c: 3932 apply forcer's hack-patch to work around the problem 3933 described in PR#471. 3934 source/names.c: 3935 avoid using CHAN_LIMBO as a bit flag, cuz it isn't. part 3936 of PR#472. 3937 3938Thu Aug 10 10:50:23 EST 2000 - matthew green <mrg@eterna.com.au> 3939 source/edit.c: 3940 allocate enough space in the ICB /whois for the string to 3941 be written. found by moof/libefence. 3942 39434.4Y 3944Sat Aug 5 22:19:20 EST 2000 - matthew green <mrg@eterna.com.au> 3945 source/window.c, source/server.c, include/window.h: 3946 in window_get_connected(), don't kill the current window's 3947 version of current_channel. if that is going to happen, 3948 window_set_server() will do it. fixes my PR#442. 3949 3950Sat Aug 5 15:12:39 EST 2000 - matthew green <mrg@eterna.com.au> 3951 source/window.c, help/window/nostatus: 3952 implement /window nostatus to entirely disable the 3953 status line. can be confusing with mulitle visible windows 3954 with nostatus! inspired by PR#455. 3955 3956Sat Aug 5 14:36:58 EST 2000 - matthew green <mrg@eterna.com.au> 3957 source/ircaux.c: 3958 set "err" in all cases, so we know when we have actually 3959 succeeded. fixes connections to the local machine. 3960 3961Fri Aug 4 17:42:13 EST 2000 - matthew green <mrg@eterna.com.au> 3962 include/config.h.dist, include/vars.h, include/vars.h.proto, 3963 source/names.c, source/vars.c: 3964 add /set hide_channel_keys {on|off}, inspired by PR#467 3965 (whose patch was based on over 5 year old code). 3966 39674.4X 3968Fri Aug 4 12:18:10 EST 2000 - matthew green <mrg@eterna.com.au> 3969 source/irc.c: 3970 use a local static "buffer", fixes lossage. 3971 39724.4V 3973Wed Aug 2 18:41:22 EST 2000 - matthew green <mrg@eterna.com.au> 3974 source/icb.c: 3975 don't ignore empty fields, fill them in as normal. 3976 3977Wed Jul 19 03:12:37 EST 2000 - matthew green <mrg@eterna.com.au> 3978 include/irc.h, source/alias.c, source/ctcp.c, source/edit.c, 3979 source/exec.c, source/help.c, source/history.c, source/ignore.c, 3980 source/irc.c, source/lastlog.c, source/mail.c, source/menu.c, 3981 source/names.c, source/notice.c, source/numbers.c, source/screen.c, 3982 source/server.c, source/translat.c, source/window.c: 3983 remove all uses of the global buffer, and delete it. 3984 3985Sun Jul 16 14:23:48 EST 2000 - matthew green <mrg@eterna.com.au> 3986 source/names.c: 3987 don't use the global "buffer". 3988 3989Thu Jul 13 13:15:08 EST 2000 - matthew green <mrg@eterna.com.au> 3990 help/on/icb_status, help/on/icb_error: 3991 document the recently added icb_status and icb_error hooks. 3992 source/edit.c: 3993 fix `/join -' dumping core, PR#458. 3994 3995Sun Jun 11 17:39:05 EST 2000 - matthew green <mrg@eterna.com.au> 3996 source/icb.c: 3997 fix my PR#444: moderator sign off message wrongly parsed. 3998 3999Sun Jun 11 17:17:21 EST 2000 - matthew green <mrg@eterna.com.au> 4000 include/config.h.dist, include/vars.h, include/vars.h.prot, 4001 source/irc.c, source/screen.c, source/vars.c 4002 help/set/foreground_colour, help/set/background_colour: 4003 add two new /set variables: foreground_colour and 4004 background_colour, and use these. add new -r switch to 4005 reverse the default values. from forcer@mindless.com, 4006 and is the best fix for his PR#446. 4007 help/set/colour: 4008 document this recent variable. 4009 4010Sun Jun 11 17:03:16 EST 2000 - matthew green <mrg@eterna.com.au> 4011 source/term.c, include/ircterm.h: 4012 use termcap 'ti' and 'te' sequences when starting and leaving 4013 (or when suspending). should fix colour reset problems as 4014 seen in PR#429. 4015 include/config.h.lynx: 4016 kill. 4017 4018Mon May 29 00:35:44 EST 2000 - matthew green <mrg@eterna.com.au> 4019 help/set/xterm_geomoptstr, help/set/xterm_options, help/set/xterm_path, 4020 include/config.h.lynx, include/config.h.dist, include/vars.h.proto, 4021 source/screen.c, source/vars.c, include/vars.h: 4022 add new /set xterm_geomoptstr variable to change the "-geom" 4023 option to the xterm program, necessary for, eg, rvxt. fixes 4024 PR#449 from <jmf@digitalexp.com>. 4025 include/struct.h, source/names.c: 4026 remove the 'cached' mode string. it was getting wrong with 4027 channel keys and it seems useless now anyway. 4028 40294.4U 4030Thu May 11 13:04:07 EST 2000 - matthew green <mrg@eterna.com.au> 4031 source/server.c: 4032 make /disconnect * work. 4033 source/dcc.c, source/newio.c, source/server.c, source/screen.c, 4034 source/window.c: 4035 rename refresh and timeout functions/variables as these 4036 are defined in most <curses.h> files. 4037 source/translat.c: 4038 fopen() likes "r" not "R". 4039 source/notify.c: 4040 in do_notify(), don't change from_server and leave it 4041 changed if we have an ICB server for primary. 4042 source/edit.c: 4043 don't send IRC PRIVMSG to ICB servers. 4044 help/disconnect: 4045 document this command. 4046 4047Sat Apr 15 04:57:21 PDT 2000 - matthew green <mrg@eterna.com.au> 4048 help/lastlog: 4049 document /lastlog <pattern> <count> <start> support. 4050 source/edit.c: 4051 fix ICB /topic. apply patch from Roman Gollent 4052 <roman@babe.pobox.com> to make /topic * work. 4053 4054Tue Apr 11 00:24:12 EST 2000 - matthew green <mrg@eterna.com.au> 4055 source/names.c: 4056 fix a problem found by forcer: in remove_channel(), if we can 4057 work out the refnum of the window this channel is on, pass it 4058 to is_current_channel(), rather than always passing -1. 4059 source/output.c: 4060 do not use a static buffer for vasprintf(). put_it() and 4061 friends are sometimes re-entrant. picked up by forcer and 4062 electric fence. 4063 configure.in, configure: 4064 explicitly test for struct sockaddr's "sa_len" member. 4065 source/alias.c: 4066 fix off-by-one malloc error. 4067 40684.4T 4069Mon Apr 3 17:43:02 EST 2000 - matthew green <mrg@eterna.com.au> 4070 Makefile.in, source/irc.c, source/ircaux.c, source/ircio.c, 4071 source/file.c: 4072 remove dated, unused and definately insecure PRIV_PORT code. 4073 include/irc_std.h: 4074 introduce my_str{len,cpy,ncpy}() macros that (char *)ifiy 4075 the correct arguments, to avoid warnings from u_char *'s. 4076 source/alias.c: 4077 use my_str{len,cpy,ncpy}(). 4078 include/config.h.dist, include/config.h.lynx: 4079 enable EIGHT_BIT_CHARACTERS by default. 4080 4081Sat Apr 1 18:10:33 EST 2000 - matthew green <mrg@eterna.com.au> 4082 include/count.l, include/hook.h, include/hook.h.proto, include/keys.h, 4083 include/keys.h.proto, include/vars.h, include/vars.h.proto: 4084 make count preserve $Id strings that are in .proto files, and 4085 add additional $Id strings for the generated .h files. 4086 4087Sat Apr 1 17:31:35 EST 2000 - matthew green <mrg@eterna.com.au> 4088 configure, configure.in, include/alias.h, include/crypt.h, 4089 include/ctcp.h, include/dcc.h, include/edit.h, include/exec.h, 4090 include/flood.h, include/funny.h, include/help.h, include/history.h, 4091 include/hold.h, include/hook.h, include/hook.h.proto, include/icb.h, 4092 include/if.h, include/ignore.h, include/input.h, include/irc.h, 4093 include/ircaux.h, include/ircterm.h, include/keys.h, 4094 include/keys.h.proto, include/lastlog.h, include/list.h, include/mail.h, 4095 include/menu.h, include/names.h, include/notify.h, include/numbers.h, 4096 include/output.h, include/parse.h, include/queue.h, include/screen.h, 4097 include/server.h, include/stack.h, include/status.h, include/struct.h, 4098 include/translat.h, include/vars.h, include/vars.h.proto, 4099 include/whois.h, include/window.h, source/alias.c, source/cast.c, 4100 source/crypt.c, source/ctcp.c, source/dcc.c, source/edit.c, 4101 source/empty_metakeys.inc, source/exec.c, source/flood.c, 4102 source/funny.c, source/help.c, source/history.c, source/hold.c, 4103 source/hook.c, source/icb.c, source/if.c, source/ignore.c, 4104 source/input.c, source/irc.c, source/ircaux.c, source/keys.c, 4105 source/lastlog.c, source/list.c, source/mail.c, source/menu.c, 4106 source/names.c, source/notice.c, source/notify.c, source/numbers.c, 4107 source/output.c, source/parse.c, source/queue.c, source/reg.c, 4108 source/screen.c, source/sed.c, source/server.c, source/stack.c, 4109 source/status.c, source/term.c, source/translat.c, source/vars.c, 4110 source/whois.c, source/window.c: 4111 convert from char to u_char for everything that can be. 4112 4113Fri Mar 31 23:49:42 EST 2000 - matthew green <mrg@eterna.com.au> 4114 Makefile.in: 4115 remove $DESTDIR from exec_prefix; it is already in the prefix. 4116 4117Tue Mar 28 10:31:13 EST 2000 - glen mccready <gkm@pobox.com> 4118 source/server.c: 4119 clean up server handling a bit. fix false "Connected" message. 4120 should consider removing server_list[].connected in favor of a 4121 flag and add more status tracking flags. 4122 4123Sun Mar 26 02:37:03 EST 2000 - matthew green <mrg@eterna.com.au> 4124 source/screen.c: 4125 when scrolling backwards, check how many lines in the 4126 lastlog we have and then make sure we don't scroll 4127 beyond that. fixes PR#430. rewrite a recent fix to 4128 part of the split_up_window() function. 4129 source/server.c: 4130 in /server -delete, call close_server(). 4131 4132Thu Mar 23 17:13:51 EST 2000 - matthew green <mrg@eterna.com.au> 4133 help/exec, help/set/exec_protection: 4134 add a reference to /set exec_protection in /help exec, noted 4135 by matthewa@materna.nl in PR#431. 4136 script/columns, script/times: 4137 add an evil hack to let these two be loaded together. fixes 4138 PR#425 from Hubert Feyrer <feyrer@rfhs8012.fh-regensburg.de>. 4139 4140Tue Mar 21 11:08:26 EST 2000 - matthew green <mrg@eterna.com.au> 4141 configure.in, configure: 4142 a fix IPv4-only nodes that have getaddrinfo(), from 4143 Jun-ichiro itojun Hagino <itojun@iijlab.net>. 4144 41454.4S 4146Fri Mar 17 15:07:25 EST 2000 - matthew green <mrg@eterna.com.au> 4147 source/edit.c: 4148 properly fix the terrible bug in send_text(). 4149 41504.4R 4151Fri Mar 17 02:19:20 EST 2000 - matthew green <mrg@eterna.com.au> 4152 source/edit.c: 4153 fix a terrible bug in send_text(). 4154 41554.4Q 4156Thu Mar 16 23:58:40 EST 2000 - matthew green <mrg@eterna.com.au> 4157 source/ctcp.c: 4158 avoid using %ld as an argument to send_ctcp_reply(). 4159 4160Thu Mar 16 22:55:12 EST 2000 - matthew green <mrg@eterna.com.au> 4161 configure, configure.in, Makefile.in: 4162 use a find & chmod chain to ensure the permissions 4163 of the installed help files is correct. 4164 4165Sun Mar 5 08:04:22 EET 2000 - Joel Yliluoma <bisqwit@iki.fi> 4166 configure, configure.in, acconfig.h: 4167 add $crypt() function. 4168 source/screen.c: 4169 fixed the mirc colour support again. 4170 (something had broken it) 4171 help/cat: 4172 add help file for this. 4173 4174Wed Feb 23 00:06:05 EET 2000 - Joel Yliluoma <bisqwit@iki.fi> 4175 source/alias.c, help/alias/functions: 4176 added crypt() support and help files. 4177 4178Thu Mar 16 12:36:40 EST 2000 - matthew green <mrg@eterna.com.au> 4179 source/edit.c: 4180 deal with /join, /invite, /who, /nick and /topic again. 4181 4182Wed Mar 15 14:18:30 EST 2000 - glen mccready <gkm@pobox.com> 4183 include/ircterm.h, source/term.c, source/irc.c, source/screen.c: 4184 streamline term.c fp handling. use term_flush() 4185 where appropriate rather than calling fflush() 4186 directly. there's a div by zero work around, too. 4187 41884.4P 4189Wed Mar 15 17:51:07 EST 2000 - matthew green <mrg@eterna.com.au> 4190 source/screen.c, source/irc.c, include/irc.h: 4191 in add_to_window(), don't add something to the end 4192 of a string, but allocate our own buffer to do this, 4193 and then add the ALL_OFF char. eliminte the char [] 4194 `global_all_off'. fixes off-by-one errors caused 4195 by vasprintf() support for output.c. 4196 source/irc.c: 4197 fix PR#428: /set -irchost dumps core. 4198 4199Sat Mar 11 17:31:43 EST 2000 - matthew green <mrg@eterna.com.au> 4200 help/encrypt, source/crypt.c: 4201 unless the new -showkeys option is specified to the 4202 /encrypt command, do not show the keys for each user. 4203 4204Sat Mar 11 15:33:06 EST 2000 - matthew green <mrg@eterna.com.au> 4205 help/set/lastlog_level, include/lastlog.h, script/screen, 4206 source/lastlog.c, source/output.c: 4207 add lastlog level HELP, that is where all HELP 4208 messages are sent to. 4209 4210Fri Mar 3 20:38:59 EST 2000 - matthew green <mrg@eterna.com.au> 4211 include/status.h source/alias.c source/irc.c source/status.c: 4212 change update_clock() to take a buffer and a length to 4213 write a string to, rather than using a static buffer. 4214 source/screen.c: 4215 in rite(), do not increase new_scrolled_lines if we 4216 are redrawing. 4217 source/screen.c: 4218 in split_up_lines(), if we get a string that seems to 4219 be empty, don't pass it to malloc_strcpy() because we 4220 don't have a handle on the owner of the string. in 4221 this case, we copy " " and then free it later. 4222 4223Fri Mar 3 12:24:59 EST 2000 - matthew green <mrg@eterna.com.au> 4224 configure, configure.in, include/crypt.h, include/defs.h.in, 4225 include/edit.h, include/irc.h, include/ircterm.h, source/alias.c, 4226 source/cast.c, source/crypt.c, source/edit.c, source/icb.c, 4227 source/irc.c, source/ircsig.c, source/log.c, source/notify.c, 4228 source/parse.c, source/screen.c, source/sed.c, source/status.c: 4229 remove solaris warnings. part of this changed meant going 4230 to more unsigned char uses in alias.c. ideally, we should 4231 use unsigned chars everywhere but calling stdlib functions 4232 will cause warnings. 4233 source/help.c: 4234 manage the opening and closing of FILE *help_fp in a much 4235 saner way to stop it ever being used in an unstable fashion. 4236 4237Fri Mar 3 02:29:06 EST 2000 - matthew green <mrg@eterna.com.au> 4238 help/bind/meta5_character, help/bind/meta6_character, help/bind/keys, 4239 help/bind/meta7_character, help/bind/meta8_character, include/edit.h, 4240 include/keys.h, include/keys.h.proto, include/struct.h, source/edit.c, 4241 source/empty_metakeys.inc, source/keys.c, source/screen.c: 4242 add meta[5678]_character /bindings. we split the 4243 initialiser for meta[35678] out into empty_makekeys.inc 4244 because we use it 5 times. 4245 4246Fri Mar 3 00:59:01 EST 2000 - matthew green <mrg@eterna.com.au> 4247 source/screen.c: 4248 in redraw_window(), if we have scrolled lines, lets 4249 redraw all of the displayed lines, rather than skipping 4250 the last line. in scrollback_end(), reset 4251 new_scrolled_lines to 0 as well. in scrollback_start(), 4252 call a series of next_line_back() calls to find out how 4253 many (output) lines there are in the last log (as opposed 4254 to individual lastlog entries, which may span several 4255 output lines), so that scrollback_start() can actually 4256 work correctly now. 4257 42584.4O 4259Thu Mar 2 23:15:18 EST 2000 - matthew green <mrg@eterna.com.au> 4260 source/debug.c: 4261 fflush(stderr); at the end of debug() -- just to make 4262 sure debug messages get written out in a timely fashion. 4263 include/screen.h, source/screen.c: 4264 make redraw_window() static to screen.c; it was the only 4265 user anyway. 4266 source/screen.c: 4267 modify redraw_window() to take an additional "backscroll" 4268 parameter and pass true in this parameter when calling the 4269 function from back/forward scrolling functions, and false 4270 elsewhere. remove the "int skip" parameter from the 4271 next_line_back() function. it causes the function to skip 4272 lines for what appears to be no good reason, and this is, 4273 in addition to the above change to redraw_window() have 4274 cause the majority of scroll bugs. 4275 4276Thu Mar 2 00:17:18 EST 2000 - matthew green <mrg@eterna.com.au> 4277 source/server.c: 4278 add support for [server]:port addreses, including 4279 [IP:v6] style ones, so that one can use IPv6 addresses 4280 as well as ports, nicks, etc. 4281 include/irc.h, include/vars.h.proto, include/vars.h, source/irc.c, 4282 source/vars.c: 4283 implement /set irchost; from <tristan@ethereal.net> 4284 help/set/irchost: 4285 add documentation for above. 4286 include/config.h.dist, include/config.h.lynx, include/vars.h, 4287 include/vars.h.proto, source/numbers.c, source/vars.c, 4288 help/set/no_ask_nickname: 4289 implement /set no_ask_password on; stops reset_nickname() 4290 in numbers.c from prompting the user for a password, so 4291 that a script can take care of the error instead. 4292 include/output.h, include/status.h, source/irc.c, 4293 source/output.c, source/screen.c, source/status.c: 4294 convert all signal handlers (except for coredump()) to 4295 the `set a variable, return, and let someone else perform 4296 the task we want' style. ie, don't be unsafe in signal 4297 handlers and call things like stdio and malloc! 4298 source/icb.c: 4299 handle many /ignore requests. 4300 4301Wed Mar 1 21:17:19 EST 2000 - matthew green <mrg@eterna.com.au> 4302 Makefile.in, configure, configure.in: 4303 ignore CVS dirs when installing things more 4304 carefully. support `$DESTDIR' in Makefile.in 4305 (this from Arkadiusz Miskiewicz <misiek@pld.org.pl>), 4306 and use @libdir@ and @mandir@ rather than using 4307 ${prefix}/foo for these. 4308 source/ircaux.c: 4309 use index(foo, ' '); over sindex(foo, " "); from 4310 Mark Mielke <mark@mielke.cc>. 4311 source/edit.c, help/exec.c: 4312 fix typos; from Mark Mielke <mark@mielke.cc>. 4313 source/status.c: 4314 remove the uses of the global "buffer" from status.c. 4315 inspired by a PR from Mark Mielke <mark@mielke.cc> 4316 source/edit.c, source/screen.c: 4317 make sure we translate everything, even in dumb mode, 4318 everywhere. from: Alexander Trump <assa@assa.tlt.ru>. 4319 source/edit.c: 4320 fix /set auto_unmark_away variable; it has been broken 4321 for at least 5 years. fixes PR#377. 4322 source/alias.c, help/alias/functions: 4323 implement wincols() and winrows() functions that return 4324 the number of columns and rows (respectively) in the 4325 current window, or -1. 4326 source/wserv.c, configure.in, configure, acconfig.h: 4327 fix AIX support. mostly from Graovac 4328 <ddavid@lamar.ColoState.EDU>. 4329 source/server.c, source/window.c: 4330 server_itsname() return "<None>" for no server name. 4331 source/edit.c: 4332 yell() not say() when we don't load an executable file. 4333 script/2.8script: 4334 remove some damage. 4335 source/names.c: 4336 avoid adding channel "0" to the channel list. PR#277 4337 source/exec.c: 4338 /exec output is level crap by default; make it so. 4339 source/dcc.c: 4340 if a /dcc get fails because we couldn't create the 4341 local file, _don't_ delete the offer from our list! 4342 source/queue.c: 4343 for `/queue' when no queue commands have ever been 4344 run, we used to dump core from calling toupper("Top"). 4345 call toupper() on the copied string rather than on 4346 the passed in string.h, and then copying. PR#403 4347 source/names.c, include/names.h: 4348 add support for +c (colourless) and +R (registered 4349 users only) channel modes. from jim efaw in PR#420. 4350 source/names.c: 4351 add support to properly join !channels. 4352 source/crypt.c: 4353 fix /encrypt -sed when cast support also enabled. 4354 from Jim Efaw <jimefaw@eggroll.com>. 4355 4356Tue Feb 29 19:52:50 EST 2000 - matthew green <mrg@eterna.com.au> 4357 acconfig.h, configure, configure.in, include/defs.h.in, 4358 source/output.c: 4359 add checks for vasprintf(3), vsnprintf(3) and 4360 snprintf(3) (the latter not used in the ircII 4361 yet?). rework the screen output routines (yell(), 4362 say(), put_it() and help_put_it() to use vasprintf() 4363 if it exists, then fallback vsnprintf() and finally 4364 back to vsprintf() like the old code. this should 4365 allow lines with extremely large output (such as 4366 many-kilobyte aliases) to be displayed correctly 4367 (vasprintf()) or at least truncated (vsnprintf()) 4368 and not dumping core. 4369 4370Mon Feb 28 12:09:24 EST 2000 - matthew green <mrg@eterna.com.au> 4371 include/alias.h, source/alias.c, source/irc.c: 4372 malloc_str*() the space for char *command_line, 4373 rather than having a buffer in bss. 4374 include/ircaux.h, source/ircaux.c: 4375 add a malloc_strcat_ue() that unescapes backslashes 4376 (like strmcat_ue()). 4377 source/alias.c: 4378 modify expander_addition() and alias_special_char() 4379 to take a malloc() maintained buffer, rather than a 4380 BIG_BUFFER_SIZE one, by replacing str*() calls with 4381 malloc_str*() calls in many places. remove a hack 4382 that would try to stop core dumps when this buffer 4383 became overflowed that now should never happen. 4384 modify alias_expand() to use the changed functions 4385 from above, including malloc_strcat_ue(). also, 4386 remove BIG_BUFFER_SIZE from the rest of alias.c: 4387 alias_currdir(), function_strip(), function_encode(), 4388 function_decode(), function_dcclist(), 4389 function_chatpeers(), function_chanusers(), 4390 note: function_pid(), function_ppid() and 4391 function_idle() all use the global "buffer" still. 4392 source/edit.c: 4393 remove a dependancy on BIG_BUFFER_SIZE in parse_line(). 4394 note all the uses of BIG_BUFFER_SIZE and the global 4395 "buffer". yes, it is time to get rid of the global 4396 buffer and the BIG_BUFFER_SIZE define. 4397 4398 4399Sun Feb 27 18:46:01 EST 2000 - matthew green <mrg@eterna.com.au> 4400 source/window.c, include/window.h: 4401 add a 'Win_Trav' that we use in window_traverse() 4402 now, as our status of where we are in traversal. 4403 note that we have to set: 4404 Win_Trav stuff; 4405 stuff.flag = 1; 4406 before calling window_traverse initially. 4407 include/vars.h.proto, include/vars.h, source/screen.c, 4408 source/vars.c, help/set/xterm_path: 4409 add /set xterm_path <path> 4410 4411Sun Feb 27 18:02:08 EST 2000 - matthew green <mrg@eterna.com.au> 4412 source/window.c: 4413 fix window_get_connected() to note the nick to use 4414 once a server is found, if the nick isn't already 4415 specified. fixes problem with multiple server:port 4416 combinations with different nicks. 4417 44184.4N 4419Sun Feb 27 12:36:35 EST 2000 - matthew green <mrg@eterna.com.au> 4420 include/window.h, source/server.c, source/window.c: 4421 rename set_window_server() to window_set_server(). 4422 source/window.c, source/server,c. source/notice.c, 4423 source/irc.c, source/numbers.c, include/server.h: 4424 retire WIN_OLDCONN flag. this means we can revert 4425 get_connected() to take only one argument. in 4426 window_set_server(), always transfer the channels 4427 to the new server if WIN_TRANSFER, because 4428 WIN_OLDCONN is now gone. 4429 4430Sat Feb 26 13:41:31 EST 2000 - matthew green <mrg@eterna.com.au> 4431 script/icb, source/edit.c: 4432 deal with /join, /invite, /who, /nick and /topic in 4433 the script. 4434 source/parse.c: 4435 give all static functions a `p_' prefix like about 4436 1/2 of them already have. 4437 4438Sun Feb 13 03:00:37 EST 2000 - matthew green <mrg@eterna.com.au> 4439 include/hook.h, include/hook.h.proto, source/hook.c, 4440 source/window.c, help/on/window_swap: 4441 add new hook WINDOW_SWAP that is triggered when ever 4442 a window is swapped. 4443 include/struct.h, source/edit.c, source/names.c, source/screen.c, 4444 source/window.c: 4445 revert /window bind to original behavior: property of 4446 a window, not a channel. 4447 4448Tue Feb 1 16:40:18 EST 2000 - matthew green <mrg@eterna.com.au> 4449 source/icb.c: 4450 deal with the fact that ICB groups can be renamed. 4451 4452Mon Jan 31 15:01:41 EST 2000 - matthew green <mrg@eterna.com.au> 4453 source/icb.c, source/edit.c: 4454 change icb_put_msg2() to honour window_dislay, and 4455 using this implement /whois for ICB mode (as 4456 "/m server whereis"). 4457 44584.4M 4459Fri Jan 7 09:55:29 EST 2000 - matthew green <mrg@eterna.com.au> 4460 acconfig.h, configure, configure.in, include/defs.h.in, 4461 source/irc.c, source/ircaux.c, source/server.c: 4462 add IPv6 support from Arkadiusz Miskiewicz 4463 <misiek@misiek.eu.org> as given in PR#402. 4464 source/icb.c: 4465 make SHOW_CHANNEL_NAMES work on ICB. 4466 4467Tue Dec 21 02:38:00 EET 1999 - Joel Yliluoma <bisqwit@iki.fi> 4468 source/edit.c, help/cat: 4469 added /CAT command to easify avoiding security 4470 risks when otherwise /exec cat would be used. 4471 /CAT adds a line to specified file (to end). 4472 4473Sat Dec 18 22:32:18 EST 1999 - matthew green <mrg@eterna.com.au> 4474 help/icb: 4475 fix some typoes from <kleink@serpens.swb.de> in 4476 PR#395. 4477 Makefile.in: 4478 regenerate dependancies after adding ircflush.c 4479 to the list of them. this fixes PR#396. 4480 configure.in: 4481 s/PREFIX/prefix/ so that it it works. 4482 ircbug.in: 4483 automatically determine how to suppress newlines, 4484 fixing PR#398. 4485 source/edit.c: 4486 re-set from_level correctly in my_echo; fixes PR#387, 4487 #399 and #412 (patch supplied in this one from Hans 4488 Hasselaar <hansh@ircnet.dk>). 4489 4490Thu Dec 9 21:42:41 EST 1999 - matthew green <mrg@eterna.com.au> 4491 script/default: 4492 new script that is a suggested default `.ircrc' 4493 for people to use. 4494 script/times: 4495 new script that adds times to msgs, dcc and channel 4496 traffic. 4497 script/otherstatus: 4498 new script to let you have a bold or underlined 4499 status bar. 4500 all the above are derived from parts of mrg's setup. 4501 4502Thu Dec 9 15:08:09 EST 1999 - matthew green <mrg@eterna.com.au> 4503 soruce/icb.c: 4504 one can now send long lines and have them broken 4505 up correctly. 4506 4507Sat Oct 23 06:10:21 EEST 1999 - Joel Yliluoma <bisqwit@iki.fi> 4508 source/screen.c: 4509 fixed the mirc colour support, did not work correctly. 4510 help/set/make_notice_msg: 4511 described MAKE_NOTICE_MSG 4512 4513Wed Oct 20 21:11:56 EST 1999 - matthew green <mrg@eterna.com.au> 4514 help/load/screen, help/load/tabkey, scripts/tabkey, 4515 scripts/screen: 4516 move default ^X^X binding to `screen' script, and 4517 make it swap scripts, like screen(1) does. 4518 4519Wed Sep 8 03:07:24 EEST 1999 - Joel Yliluoma <bisqwit@iki.fi> 4520 source/parse.c, source/vars.c, include/vars.h.proto 4521 added boolean set MAKE_NOTICE_MSG 4522 4523Sat Sep 4 19:03:22 EEST 1999 - Joel Yliluoma <bisqwit@iki.fi> 4524 help/alias/functions 4525 described the hasvoice() and dcclist() functions. 4526 described the chatpeers() function. 4527 source/alias.c 4528 added chatpeers() function. 4529 4530Sun Jul 25 05:50:15 EEST 1999 - Joel Yliluoma <bisqwit@iki.fi> 4531 source/alias.c, source/names.c, source/irc.c 4532 added .ircquick file support. 4533 added hasvoice() and dcclist() functions. 4534 45354.4L 4536Mon Aug 23 21:43:51 EST 1999 - matthew green <mrg@eterna.com.au> 4537 configure.in, configure, source/ircaux.c, include/config.h.dist, 4538 include/config.h.lynx, include/defs.h.in: 4539 fix up ZCAT/ZSUFFIX auto-finding support to work and 4540 be used. 4541 Makefile.in: 4542 set help & translation paths properly when building 4543 both help.c and translation.c. 4544 4545Mon Aug 23 19:52:26 EST 1999 - matthew green <mrg@eterna.com.au> 4546 configure.in, configure, acconfig.h, include/defs.h.in: 4547 add SOCKS version 5 support (from agc@netbsd.org). 4548 Makefile.in: 4549 fix some more $(srcdir) lossage with autoconf 4550 and autoheader runs. 4551 source/server.c: 4552 make sure varaiable is not uninitialised (from 4553 agc@netbsd.org). 4554 4555Mon Aug 23 12:30:29 EST 1999 - matthew green <mrg@eterna.com.au> 4556 configure.in, configure, Makefile.in, include/Makefile.in, 4557 include/config.h, source/Makefile.in: 4558 add support for building outside of the source 4559 tree, largely from glen. config.h.dist is copied 4560 to the build tree now. neat. 4561 45624.4K 4563Sun Aug 22 04:07:03 EST 1999 - matthew green <mrg@eterna.com.au> 4564 source/irc.c: 4565 fix usage string to be a real C string again. 4566 source/icb.c: 4567 fix an off by one error in long msg handling. 4568 4569Sun Aug 22 01:32:35 EST 1999 - matthew green <mrg@eterna.com.au> 4570 INSTALL, configure, configure.in, include/irc.h, source/help.c, 4571 source/mail.c, source/wserv.c: 4572 add patches from Gerben_Wierda@RnA.nl to fix NeXT 4573 support. 4574 source/window.c: 4575 apply PR#378 from forcer: WINDOW KILL_OTHERS crashes 4576 with more than 2 windows. 4577 source/ircaux.c: 4578 do not copy a string onto itself. it fails. fixes 4579 several PRs: 379, 380, 381, 385, 386, 388 and 390. 4580 include/ircterm.h 4581 FreeBSD uses int/int for tputs function too. maybe 4582 ncurses does? 4583 acconfig.h, configure, configure.in, include/defs.h.in: 4584 apply patch from Tod McQuillin <devin@lm.com> in 4585 PR#382 to fake a `ssize_t' for older systems. 4586 source/window.c: 4587 deal with CHANNEL_NAME_WIDTH == 0. fixes PR#384. 4588 configure, configure.in: 4589 --datadir is now used and sets where $IRCLIB exists 4590 (as ${datadir}/irc). fixes PR#383. 4591 4592Wed Jul 21 09:48:45 EST 1999 - matthew green <mrg@eterna.com.au> 4593 source/edit.c, help/brick: 4594 add `/brick channel nick' command. 4595 45964.4J 4597Thu Jul 15 12:18:44 EST 1999 - matthew green <mrg@eterna.com.au> 4598 help/load/icb, script/icb: 4599 add `/register' 4600 include/config.h*, include/server.h, include/icb.h, 4601 source/irc.c, source/server.c, doc/ircII.1: 4602 add -P switch to set deafult ICB port. have a 4603 define `ICB_PORT' (that is 7326) for the default. 4604 source/cast.c, source/dcc.c, include/irc_std.h, 4605 include/cast_sbox.h: 4606 replace 'cast_t' with 'castkey' and 'u_32int_t' 4607 with 'u_32int' as _t is not my name space. 4608 source/cast.c: 4609 fix several bugs noted by Michael Katzenmayer 4610 <katzenmayer@erfnet.com>: castkey had u_char instead 4611 of u_int, and some packaging problems introduced since 4612 the CBC changes. 4613 4614Thu Jun 17 16:38:34 EST 1999 - matthew green <mrg@eterna.com.au> 4615 source/alias.c, help/alias/functions: 4616 new $SERVERTYPE() function that returns either 4617 `IRC2.X' (X between 5 and 11 so far), or `ICB'. 4618 idea from tristan@ethereal.net. 4619 46204.4I 4621Sat May 22 00:00:11 EST 1999 - matthew green <mrg@eterna.com.au> 4622 include/crypt.h: 4623 rename CAST128ED to CAST128ED-CBC so that newer 4624 implementations will fail to operate with prior 4625 versions, rather than attempt to work and lose. 4626 4627Fri May 21 18:29:15 EST 1999 - matthew green <mrg@eterna.com.au> 4628 configure, configure.in, acconfig.h, include/defs.h.in, 4629 source/crypt.c: 4630 use /dev/urandom if possible. avoid using the 4631 implementation namespace a bit... 4632 source/wserv.c: 4633 fix this for unix domain 4.4BSD machines. 4634 source/term.c: 4635 ensure we catch all ESC aliases... 4636 source/parse.c: 4637 let older /on join's work again. 4638 source/icb.c: 4639 make sure we properly disconnect a server. for 4640 public and private messages, be sure not to overflow 4641 the 255 byte ICB limit. 4642 source/exec.c: 4643 for /exec's that have output elsewhere, make sure 4644 that they go to the right server. 4645 source/cast.c: 4646 change CAST-128 implmentation from EBC mode to CBC 4647 mode. this is incompatible with previous versions 4648 but as EBC is less secure, too bad. 4649 4650Mon Mar 8 14:13:54 EST 1999 - matthew green <mrg@eterna.com.au> 4651 configure, configure.in, acconfig.h, include/defs.h.in, 4652 source/cast.c, source/crypt.c: 4653 look for and, if we find it, use /dev/random as 4654 a source of randomness for crypto code. 4655 source/icb.c, source/edit.c, include/icb.h: 4656 add a new icb_put_funny_stuff() that handles doing 4657 irc-like /names and /list. 4658 script/global: 4659 load tabkey & icb by default. 4660 4661Fri Mar 5 15:24:11 EST 1999 - matthew green <mrg@eterna.com.au> 4662 include/server.h, script/icb, source/edit.c, source/icb.c, 4663 source/irc.c, source/parse.c, source/server.c, 4664 source/whois.c source/window.c: 4665 add an extra argument to the parse_server_info() 4666 stuff, that returns anything beyond the nick. 4667 this is used by the ICB code to set default group 4668 and mode. you can specify that a server is ICB 4669 in the IRCSERVER and related lists by prepending 4670 it with IRC/. eg set IRCSERVER to: 4671 `ICB/icb.network.net:7326::mynick:channel'. 4672 46734.4H 4674Thu Mar 4 19:42:31 EST 1999 - matthew green <mrg@eterna.com.au> 4675 include/server.h, source/numbers.c, source/server.c, 4676 source/window.c: 4677 connect_to_server() and find_in_server_list() both 4678 take a "nick" argument now. server lists are unique 4679 now only if the nickname is the same. 4680 source/icb.c: 4681 parse status messages for signon/signoff/arrive/depart 4682 and convert them to join/leave hooks. 4683 source/screen.c: 4684 deal with no current_screen. helps with output 4685 functions run during client startup not dumping core. 4686 update fwrite() tests to be consistent. 4687 4688Thu Mar 4 18:54:08 EST 1999 - matthew green <mrg@eterna.com.au> 4689 include/hook.h, include/hook.h.proto, source/edit.c, 4690 source/hook.c, source/icb.c, source/irc.c, source/server.c: 4691 add hooks for ICB stuff. implement two new hooks 4692 for ICB only stuff: ICB_STATUS and ICB_ERROR, for 4693 icb status and error messages. all others go via 4694 server_notice, msg, public, send_msg, send_public 4695 which exist. more to come. 4696 4697Thu Mar 4 17:56:26 EST 1999 - matthew green <mrg@eterna.com.au> 4698 source/irc.c, source/icb.c, source/server.c, 4699 include/server.h: 4700 fix -irc/-icb args to skip the rc/cb bit. add 4701 a icb group concept, separate to the irc channels. 4702 4703Thu Mar 4 14:24:25 EST 1999 - matthew green <mrg@eterna.com.au> 4704 include/irc.h, include/server.h, source/irc.c, 4705 source/server.c, source/window.c: 4706 if run as "icb", default to icb. add -irc/-icb 4707 switch to the command line, and -irc to both 4708 /window server and /server. 4709 4710Thu Mar 4 13:10:41 EST 1999 - matthew green <mrg@eterna.com.au> 4711 source/ctcp.c: 4712 dcc actions to the right window. from forcer. 4713 configure, configure.in: 4714 cast recv() address argument to (struct sockaddr *) 4715 to let it compile, and let the nonblock test have a 4716 chance at working. from forcer. 4717 source/numbers.c: 4718 print a channel not available message even if we 4719 don't understand it properly, so that the user gets 4720 the message anyway. 4721 contrib/README, (removed contrib/colour and contrib/colour.orig), 4722 include/config.h*, include/irc.h include/vars.h.proto, 4723 include/vars.h, source/screen.c, source/vars.c: 4724 add a /set colour to mimic mIRC-style colours. it 4725 does not use termcap colour stuff, as no one uses 4726 those anyway. at least on IRC. this is sarayans 4727 original patch as maintained by forcer, and what 4728 was originally in the contrib directory. 4729 source/dcc.c: 4730 print ip:port for dcc send. from forcer. 4731 4732Wed Mar 3 18:06:17 EST 1999 - matthew green <mrg@eterna.com.au> 4733 source/newio.c, include/newio.h: 4734 add a "dgets_separator" that lets you change the 4735 "end of line" charater. this is useful for ICB 4736 where it is a nul, not a newline. 4737 help/icb, include/icb.h, include/server.h, script/icb, 4738 source/Makefile.in, source/edit.c, source/icb.c, source/irc.c, 4739 source/notify.c, source/server.c, source/window.c: 4740 add elementary ICB support. /server -icb host port 4741 should do the right thing, and let you join channels, 4742 see messages, send then. a new /icb command lets you 4743 have access to all the icb commands, and most IRC 4744 commands that make sense in this context (/nick, 4745 /topic, /version, /msg, /join, etc) have been modified 4746 to know the are talking to an ICB server and pass the 4747 users request off to the icb code to handle. this 4748 uses the new dgets_separator() for ICB server 4749 connection processing. 4750 this is missing hooks and stuff, but it should be at 4751 least usable for now. i expect to add hooks and stuff 4752 shortly. the script adds aliases for icb commands 4753 (/group, /boot, /pass, etc.), and the help file is 4754 fairly useless... 4755 47564.4G 4757Sun Feb 28 13:37:48 EST 1999 - matthew green <mrg@eterna.com.au> 4758 source/screen.c: 4759 use ssize_t for the length, and cast it to size_t 4760 where needed, to avoid it overflowing. 4761 various: 4762 use __SVR4 as the canonical SVR4 preprocessor 4763 define, as it is. 4764 source/hook.c, include/hook.h.proto, include/hook.h, help/on/join: 4765 /on join takes 3 args. 4766 configure.in, acconfig.h, source/dcc.c: 4767 add writev & <sys/uio.h> check and use it if possible. 4768 doc/ircII.1: 4769 document the -b flag. 4770 source/server.c: 4771 call the right parse_server() routine in all cases. 4772 source/ctcp.c: 4773 be saner about PARANOID. 4774 source/dcc.c, source/ctcp.c, source/crypt.c, source/cast.c, 4775 source/edit.c, include/crypt.h: 4776 convert to a "crypt_key" type for crypto keys, rather 4777 than passing around char *'s. this lets the key be 4778 opaque and let the crypto engine hide in here. 4779 source/ctcp.c, source/crypt.c, source/cast.c source/sed.c, 4780 include/crypt.h, include/ctcp.h, help/encrypt: 4781 split SED code into sed.c. allow more than one type 4782 of crypto system to be compiled in. currently there 4783 is only support for SED and CAST-128. 4784 47854.4F 4786Tue Feb 9 21:30:37 EST 1999 - matthew green <mrg@eterna.com.au> 4787 source/crypt.c, source/ctcp.c, source/dcc.c: 4788 various bug fixes to crypto code. 4789 4790Tue Feb 02 03:45:58 est 1999 - glen mccready <glen@qnx.com> 4791 source/exec.c, help/exec: 4792 add /exec -target. 4793 4794Sun Jan 03 20:19:54 est 1999 - glen mccready <glen@qnx.com> 4795 source/alias.c: 4796 more functions, winsrvr() and winsrvrgrp() to return 4797 the windows server and server_group. 4798 source/window.c: 4799 make "window query" work like "query". 4800 4801Sun Jan 03 17:21:02 est 1999 - glen mccready <glen@qnx.com> 4802 source/alias.c: 4803 add a couple of useful functions. one, winvis(), to 4804 tell you if a window is visible. another, querynick(), 4805 to tell you what nick, if any, a window is queried to. 4806 4807Sun Jan 03 12:42:44 est 1999 - glen mccready <glen@qnx.com> 4808 source/window.c: 4809 allow "window channel #chan,key" to work. 4810 48114.4E 4812Sun Nov 8 16:23:19 EST 1998 - matthew green <mrg@eterna.com.au> 4813 source/cast.c: 4814 be defensive about putting the final nul back in 4815 to the string: it can never be >7 as the blocksize 4816 is 8... 4817 source/ctcp.c: 4818 quote ':' with a standard quote character in 4819 ctcp_quote_it() as do_ctcp() treats : specially (if 4820 it is the first char of a string). the avoids 4821 accidentally losing the first character of a string. 4822 4823Fri Nov 6 19:33:31 EST 1998 - matthew green <mrg@eterna.com.au> 4824 acconfig.h, configure, configure.in, include/alias.h, 4825 include/ctcp.h, include/dcc.h, include/defs.h.in, include/edit.h, 4826 include/hold.h, include/hook.h, include/if.h, include/input.h, 4827 include/irc.h, include/irc_std.h, include/ircaux.h, 4828 include/ircterm.h, include/keys.h, include/keys.h.proto, 4829 include/menu.h, include/names.h, include/output.h, 4830 include/screen.h, include/server.h, include/translat.h, 4831 include/vars.h, include/window.h, source/alias.c, source/cast.c, 4832 source/crypt.c, source/ctcp.c, source/dcc.c, source/debug.c, 4833 source/edit.c, source/exec.c, source/file.c, source/flood.c, 4834 source/funny.c, source/help.c, source/history.c, source/hold.c, 4835 source/hook.c, source/if.c, source/ignore.c, source/input.c, 4836 source/irc.c, source/ircaux.c, source/ircflush.c, source/ircio.c, 4837 source/ircsig.c, source/keys.c, source/lastlog.c, source/list.c, 4838 source/log.c, source/mail.c, source/menu.c, source/names.c, 4839 source/newio.c, source/notice.c, source/notify.c, 4840 source/numbers.c, source/output.c, source/parse.c, source/queue.c, 4841 source/reg.c, source/scandir.c, source/screen.c, source/server.c, 4842 source/stack.c, source/status.c, source/term.c, source/translat.c, 4843 source/vars.c, source/whois.c, source/window.c, source/wserv.c: 4844 make (almost) compile with quite anal gcc flags under 4845 NetBSD 1.3H, quietly. this adds support for finding 4846 a locally delcared "errno", and also removes a bunch of 4847 the old STDC crap with passing char's to functions. 4848 also fixed a few bugs that were found! 4849 48504.4D 4851Fri Nov 6 02:38:34 EST 1998 - matthew green <mrg@eterna.com.au> 4852 source/dcc.c: 4853 add untested code for using writev if available. 4854 also, fix dcc chat encryption. 4855 source/irc.c, source/notice.c, source/parse.c, source/whois.c: 4856 clean up "int sed;" processing. 4857 4858Wed Oct 28 12:11:10 EST 1998 - matthew green <mrg@eterna.com.au> 4859 source/dcc.c, source/flood.c, source/irc.c, source/ircaux.c, 4860 source/numbers.c, source/parse.c, source/server.c, 4861 source/window.c, include/irc.h: 4862 remove NICKNAME_LEN. make nicks dynamically allocated. 4863 this is so ircII works on blundernet. 4864 source/dcc.c: 4865 fix some problems with encrypted dcc chat. still not 4866 totally working... 4867 48684.4C 4869Sun Sep 27 12:18:08 EST 1998 - matthew green <mrg@eterna.com.au> 4870 source/screen.c: 4871 fix flash-style attacks, by checking for characters 4872 0-32 with the high-bit set (128->160) and performing 4873 the same alternation on those. 4874 contrib/README, contrib/colour, contrib/colour.orig: 4875 add the new colour patch from PR#332, moving the old 4876 one to colour.orig. from forcer. 4877 source/alias.c: 4878 use the current server for $A and $N expansion, not 4879 the current window. from flier@globecom.netin pr 300. 4880 4881Sun Sep 27 02:28:08 EST 1998 - matthew green <mrg@eterna.com.au> 4882 translation/POLISH, translation/POLISH_NOPL: 4883 fixed polish translation tables, from Piotr Kucharski 4884 <chopin@sgh.waw.pl> in pr#344. 4885 source/edit.c, include/edit.h: 4886 make /timer server-aware. from flier in pr#295. 4887 4888Sat Sep 26 12:36:02 EST 1998 - matthew green <mrg@eterna.com.au> 4889 source/alias.c: 4890 fix $rindex(), using patch in pr335 from Tristan Horn 4891 <tristan@ethereal.net>. 4892 source/numbers.c: 4893 if we get end of motd, and we haven't seen a 002 or 4894 version notice, fake one up... 4895 4896Sat Sep 26 03:58:30 EST 1998 - matthew green <mrg@eterna.com.au> 4897 source/server.c, source/window.c, source/numbers.c, 4898 source/help.c, source/dcc.c: 4899 change {save,restore}_message_from() into a queue so 4900 that now that we use them for every message_from(), 4901 info is not by too save_ callers before a restore_. 4902 fix some of the callers of these functions to work 4903 properly in the presence of a queue. 4904 4905Wed Sep 23 00:51:22 EST 1998 - matthew green <mrg@eterna.com.au> 4906 source/notice.c: 4907 allow server notices to see the 1st parameter as it 4908 comes from the server, as it may be a channel. from 4909 galibert@iria.mines.u-nancy.fr (Olivier Galibert) in 4910 pr#239. 4911 script/2.9script: 4912 deal with PR#217 sanely now we have the above. 4913 configure, configure.in: 4914 check for gcc on QNX (from glen). 4915 source/numbers.c: 4916 deal with number 405. fixes pr#336. 4917 source/alias.c: 4918 fix overflow in eval echo [3232235777/255]. 4919 configure, configure.in: source/exec.c: 4920 don't go past the end of the signals array. 4921 source/log.c: 4922 fix core dump through nulref from flier in pr#334. 4923 4924Tue Sep 22 20:38:16 EST 1998 - matthew green <mrg@eterna.com.au> 4925 source/alias.c, source/ctcp.c, source/dcc.c, source/edit.c, 4926 source/funny.c, source/help.c, source/lastlog.c, source/mail.c, 4927 source/names.c, source/notice.c, source/notify.c, source/numbers.c, 4928 source/parse.c, source/server.c, source/whois.c, source/window.c: 4929 rework message_from() usage: now we use the two handy 4930 functions {save,restore}_message_from() a lot throughout 4931 the tree (when using message_from()). this ensures that 4932 the from level/message level/from who/etc are all set 4933 correctly at all times. also fix a few bugs here. 4934 /notify, /help, ctcp messages and several other systems 4935 were not properly restoring or setting the levels. this, 4936 i believe, is the cause of random messages going to the 4937 wrong place, extremely rarely. i belive i have fixed 4938 all of these problems now, and perhaps not broken anything. 4939 also fix temporary setting of from_server that did not 4940 restore the previous value. 4941 source/alias.c: 4942 avoid using from_server or parsing_server_index as an index 4943 if it is < 0. 4944 4945Wed Sep 16 11:04:45 EST 1998 - matthew green <mrg@eterna.com.au> 4946 source/history.c: 4947 create the .irchist file mode 600. 4948 include/names.h, include/server.h, source/funny.c, 4949 source/names.c, source/parse.c, source/status.c: 4950 support irc 2.10 modes, from <kalt@stealth.net>. 4951 49524.4B 4953Tue Sep 8 00:43:18 EST 1998 - matthew green <mrg@eterna.com.au> 4954 INSTALL, Makefile.in, easyinst: 4955 remove easyinst, document --with[out]-cast. 4956 4957Mon Sep 7 18:33:01 EST 1998 - matthew green <mrg@eterna.com.au> 4958 source/irc.v, doc/VERSIONS: 4959 bump version to 4.4B, due to the CAST-128 support. 4960 configure, configure.in: 4961 change --with-cast to support `=no', and also if we 4962 find source/cast.c, enable cast support. fix alignment 4963 of some strings for --with-cast and --with-paranoid. 4964 4965Mon Sep 7 15:11:57 EST 1998 - matthew green <mrg@eterna.com.au> 4966 source/cast.c, source/crypt.c, source/ctcp.c, include/crypt.h, 4967 include/cast_sbox.h, acconfig, configure configure.in: 4968 add a --with-cast switch to configure, to enable built-in 4969 CAST-128 encryption support, rather than the old broken 4970 crypt. requires cast.c and cast_sbox.h that will *not* 4971 be distributed with ircII by default. 4972 4973Sat Sep 5 21:39:36 EST 1998 - matthew green <mrg@eterna.com.au> 4974 source/crypt.c, help/encrypt, help/set/old_encrypt_program, 4975 help/set/encrypt_program: 4976 change encrypt_program to write key as first line, 4977 rather than insecure cmd line argument. add a new 4978 `old_encrypt_program' (default off) variable to use 4979 the old API. XXX the exec code here has lots of 4980 syscalls with no return values checked XXX. 4981 4982Tue Jun 2 18:48:39 EST 1998 - matthew green <mrg@eterna.com.au> 4983 source/queue.c: 4984 fix core dumps. pr#298. 4985 doc/ircII.1: 4986 document the "global" script. pr#315. 4987 4988Tue Jun 2 18:13:09 EST 1998 - matthew green <mrg@eterna.com.au> 4989 help/window/bind, help/window/unbind: 4990 new help files. 4991 script/nocolour: 4992 stop mIRC colour crap. 4993 source/server.c: 4994 match server name correctly. noted in pr#301. 4995 source/dcc.c: 4996 print ip/port in dcc requests. per pr#325. 4997 source/crypt.c: 4998 call setgid() before setuid(). call wait() after exec(). 4999 there are still MANY system calls with unchecked return 5000 values here but at least it seems to work now. at least 5001 with `/usr/games/caeser' as the encryption program, and 13 5002 as the key (rot13 :). 5003 configure.in, configure: 5004 AMS mail is ~/Mailbox as a directory, not a file. this 5005 fixes problems with qmail installations. 5006 5007Tue Jun 2 16:11:05 EST 1998 - matthew green <mrg@eterna.com.au> 5008 source/names.c: 5009 initialise new->status, which fixes the "channel leave" 5010 bug, noted in several PR's (fix from 328). 5011 source/mail.c: 5012 use my_strnicmp(). from mark. 5013 configure, configure.in, acconfig.h, include/defs.h.in, source/ctcp.c: 5014 add a --with-paranoid switch which disables the "bad" parts of 5015 ctcp version/finger replies. 5016 source/ctcp.c, source/dcc.c, source/edit.c: 5017 allow dcc channels to have (only) ctcp queries. involved some 5018 interface changes to send_ctcp() and related functions. for now, 5019 no replies are generated -- there is no privmsg/notice in a dcc 5020 chat connection. 5021 source/ctcp.c: 5022 ensure ctcp functions that return data return it in a malloced 5023 string, and ensure that the caller cleans this up. should fix 5024 several problems noted over the last several years. 5025 source/dcc.c, include/irc.h: 5026 avoid buffer overflows in dcc chat connections. noted by forcer. 5027 5028Fri Jan 12 02:20:00 EST 1997 - glen mccready <glen@qnx.com> 5029 source/edit.c, source/exec.c, source/screen.c, source/server.c, 5030 source/status.c, source/ircio.c, source/ircflush.c, source/irc.c, 5031 source/wserv.c, source/names.c, source/dcc.c, source/scandir.c, 5032 source/help.c, include/scandir.h: 5033 clean up some warnings. prototype scandir. make sure 5034 notify_mark is prototyped where it's used. fudge some 5035 qnx defaults further in configure. 5036 source/queue.c: 5037 fix segv (pr#292). 5038 source/vars.c: 5039 fix "/set logfile ~/blah". 5040 source/ircaux.c, source/alias.c, include/ircaux.h: 5041 add srindex() to compliment sindex(). used by $rindex(). 5042 source/output.c: 5043 fix bug in end-of-string handling. 5044 5045Fri Jan 9 23:44:00 EST 1997 - glen mccready <glen@qnx.com> 5046 source/ctcp.c: 5047 fix missing toupper(). 5048 50494.4 5050Sun Dec 7 13:25:24 EST 1997 - matthew green <mrg@eterna.com.au> 5051 source/screen.c: 5052 fix PR211 from krys: make scrolling work a bit better. 5053 5054Thu Dec 4 11:25:13 EST 1997 - matthew green <mrg@eterna.com.au> 5055 source/edit.c: 5056 fix PR280: don't set SERVERREQ for /msg as it breaks 5057 dcc chat and /disconnect-ed. 5058 5059Tue Nov 25 16:52:31 EST 1997 - matthew green <mrg@eterna.com.au> 5060 source/edit.c: 5061 hack: fix pr272: set lastlog/loglevel to CRAP for 5062 xecho -window. 5063 source/numbers.c: 5064 fix pr273: numerics 471, 473, 474, 475 and 476 need 5065 to be caught my the client before hooking. do so. 5066 source/notice.c: 5067 fix pr274 (i think, i can not test this): if the server 5068 doesn't give a 'normal' 002 numeric, don't totally lose. 5069 pretend it's a 2.9 server and go from there. 5070 source/ctcp.c, source/edit.c: 5071 from flier in pr275: don't free the return value of 5072 crypt_msg(). 5073 source/lastlog.c: 5074 fix pr276: free the malloced copy, and use strncmp(). 5075 50762.9beta2 5077Mon Nov 10 15:06:55 EST 1997 - matthew green <mrg@eterna.com.au> 5078 source/names.c, source/names.h: 5079 cleanup mode string code. fix bug while i'm here... 5080 50812.9beta1 5082Mon Nov 10 11:36:56 EST 1997 - matthew green <mrg@eterna.com.au> 5083 source/edit.c: 5084 giver user indication of SQUERY (idea from kalt). 5085 source/names.c: 5086 add modes a and q. should parse server numeric for 5087 this info at connect time. (from kalt) also, don't leak 5088 a channel (from flier). 5089 source/parse.c: 5090 if is_channel() is called with NULL, return 0 (from 5091 vps@unicorn.niimm.spb.su) 5092 source/window.c: 5093 make /window remove deal with ^foo as a nick (from flier). 5094 source/numbers.c: 5095 add a hook for numeric 437. 5096 source/irc.c, source/hook.c, source/notice.c, source/server.c: 5097 change get_connected() to take an oldconn parameter, that 5098 makes it set WIN_OLDCONN when moving channels. update 5099 callers of this. 5100 script/dccchan, help/load/dccchan: 5101 add ian frechette's dccchan implementation. 5102 5103Thu Oct 9 00:09:42 EST 1997 - matthew green <mrg@eterna.com.au> 5104 source/vars.c, source/alias.c: 5105 send output of non-singual versions of /set, /assign 5106 and /alias to window level crap, like it used to do. 5107 eg, '/set foo' will go to crap, but '/set foo bar' 5108 will go to the current window. 5109 5110Thu Sep 4 13:45:03 EST 1997 - matthew green <mrg@eterna.com.au> 5111 source/edit.c: 5112 use send_2comm() for squery. 5113 help/squery, help/servlist: 5114 document these new commands. 5115 README: 5116 duh! update my address to eterna, not mame. 5117 INSTALL: 5118 make a note about the fuckage that happens with 5119 BIND 8 being installed into /usr/local. 5120 51212.9alpha8 5122Sun Aug 31 15:21:53 EST 1997 - matthew green <mrg@eterna.com.au> 5123 script/2.9script, help/load/2.9script: 5124 new files: contain code to deal with 2.9 server 5125 messages and stats p output. from kalt in pr#217. 5126 source/names.c, source/edit.c, source/window.c: 5127 don't use a server index if it is -1. fixes some 5128 crashes. from flier@ferlin.fri.uni-lj.si in pr#222 5129 and pr#223. 5130 source/window.c: 5131 fix error in displays, from flier@ferlin.fri.uni-lj.si 5132 in pr#228. 5133 source/dcc.c, source/names.c: 5134 don't forget to free some things, from sarayan in pr's 5135 232 and 234. 5136 source/server.c: 5137 fix out-of-bounds bcopy() that was causing lots of havoc 5138 after /server -delete. from sarayn in pr#238. 5139 source/server.c: 5140 don't trash parsing_server_index, from sarayan in pr#240. 5141 source/edit.c: 5142 add SERVLIST and SQUERY as comments (for ircd 2.9), using 5143 send_comm(). this may not be correct and these commands 5144 may simply fail. 5145 script/version: 5146 update for 2.9. 5147 51482.9alpha7 5149Tue Jun 3 22:34:10 EST 1997 - matthew green <mrg@eterna.com.au> 5150 source/keys.c: 5151 pass the args in /parse. fixes PR#236. from sarayan. 5152 source/server.c: 5153 don't send whois foo and whois !foo. fixes PR#85. 5154 also from sarayan. 5155 source/parse.c: 5156 don't use `level' if we haven't set it! also from 5157 sarayan. 5158 5159Thu May 22 04:53:00 EST 1997 - glen mccready <glen@qnx.com> 5160 source/irc.c, source/ircaux.c: 5161 add '-h host' for specifying the local address for 5162 multi-homed boxes. 5163 5164Wed May 7 17:55:56 EST 1997 - matthew green <mrg@eterna.com.au> 5165 source/edit.c, help/save: 5166 add new SERVERREQ flag to irc_commands[] that 5167 requires that we be connected to a server for this 5168 command to be run. fixes problems noted in pr#222 5169 and pr#223. 5170 implement /save -force, to skip the question asking. 5171 5172Mon May 5 19:13:32 EST 1997 - matthew green <mrg@eterna.com.au> 5173 source/ignore.c: 5174 rework a sentence. 5175 sourec/dcc.c: 5176 make dcc sent/read byte counts correct under systems 5177 with off_t > long (eg, NetBSD/sparc), by casting 5178 arguments for "%ld" to (long). 5179 51802.9alpha6 5181Mon Apr 21 16:35:57 EST 1997 - matthew green <mrg@eterna.com.au> 5182 source/hook.c: 5183 minor fix for previous. 5184 5185Mon Apr 21 01:12:22 EST 1997 - matthew green <mrg@eterna.com.au> 5186 source/hook.c: 5187 fix Add_Remove_Check stuff, from Sarayan. 5188 source/names.c: 5189 fully initialise channel. from sarayan. 5190 source/vars.c: 5191 handle DEFAULT_LOG being on. 5192 contrib/README, contrib/random_nick: 5193 Kalt's random nick patch. 5194 51952.9alpha5 5196Sun Apr 20 20:51:01 EST 1997 - matthew green <mrg@eterna.com.au> 5197 source/alias.c, source/crypt.c, source/dcc.c, source/edit.c, 5198 source/exec.c, source/hook.c, source/keys.c, source/lastlog.c, 5199 source/vars.c: 5200 purify found several memory leaks i introduced some 5201 months ago. thanks sar. 5202 source/alias.c: 5203 alias_xxx() functions don't allocate their return value. 5204 5205Sun Apr 20 19:41:53 EST 1997 - matthew green <mrg@eterna.com.au> 5206 contrib/README, contrib/japanese_support: 5207 put PR#203 from Sarayan into the contrib directory, 5208 so that people needing ISO2202 (japanese) support 5209 can have it. 5210 5211Sun Apr 20 18:43:33 EST 1997 - matthew green <mrg@eterna.com.au> 5212 contrib/README, contrib/colour: 5213 put PR#202 from Sarayan into the contrib directory, 5214 so that people wanting colour can have it. 5215 5216Tue Apr 15 01:58:44 CDT 1997 - scott reynolds <scottr@og.org> 5217 acconfig.h, include/defs.h.in: 5218 don't use non-blocking connects if SOCKS support 5219 is enabled. 5220 52212.9alpha4 5222Tue Apr 15 02:29:48 EST 1997 - matthew green <mrg@eterna.com.au> 5223 source/output.c: 5224 increase the buffer size, as suggested by 5225 <flier@ferlin.fri.uni-lj.si> in pr#201. 5226 5227Tue Apr 15 02:13:11 EST 1997 - matthew green <mrg@eterna.com.au> 5228 source/window.c: 5229 handle /window double correctly. from 5230 <flier@ferlin.fri.uni-lj.si> in pr#198 & pr#200. 5231 normalise some formats. 5232 when swapping channels and windows, don't do 5233 disconnected windows. pr #182, pr#191 & pr#196 5234 help/window/sticky: 5235 initial document on this commmand. 5236 5237Tue Apr 15 01:11:48 EST 1997 - matthew green <mrg@eterna.com.au> 5238 source/mail.c: 5239 minor optimisation. 5240 source/server.c: 5241 default to /WINDOW STICKY. 5242 source/screen.c, source/window.c, include/window.h: 5243 remove WIN_LOGLEVEL. 5244 5245Wed Apr 2 16:04:04 EST 1997 - matthew green <mrg@eterna.com.au> 5246 include/ircterm.h 5247 add __GNU__ (the hurd) to the int/int putchar_x 5248 crowd. this was the only change required! 5249 source/edit.c: 5250 patch from Sarayan to fix some errors caused by me, 5251 and some clean up, for the channel commands. pr#190. 5252 5253Wed Mar 26 18:11:22 EST 1997 - matthew green <mrg@eterna.com.au> 5254 include/ircterm.h: 5255 #ifdef __sgi, then int putchar_x(int) is correct. 5256 this works for IRIX5 and IRIX6. if it doesn't 5257 work, blame sarayan. 5258 52592.9alpha3 5260Wed Mar 26 15:50:50 EST 1997 - matthew green <mrg@eterna.com.au> 5261 NEWS: 5262 updated for `2.9' 5263 5264Wed Mar 26 14:33:56 EST 1997 - matthew green <mrg@eterna.com.au> 5265 source/names.c: 5266 leave kicked channels in CHAN_LIMBO. 5267 source/status.c: 5268 don't cut of domains of irc servers called "irc.". 5269 source/dcc.c, source/screen.c: 5270 deal with /window add =nick properly. 5271 source/window.c: 5272 change add_nicks_by_refnum() so that you can 5273 explicitly add/delete with a new parameter. allows 5274 the caller to _NOT_ have to malloc a new string for 5275 prepending a ^ on it. 5276 help/help, help/load/help, help/set/help_pager, 5277 help/set/help_service, help/set/help_prompt, script/help, 5278 source/help.c, source/vars.c, include/vars.h.proto, 5279 include/vars.h: 5280 remove help_service, and re-implement it as a help 5281 script. 5282 source/server.c, source/window.c: 5283 finish /server . that glen started at my urging. 5284 include/ircterm.h: 5285 Linux and AIX use int/int for tputs. 5286 source/edit.c: 5287 fix a few commands, and make leave comments work 5288 properly. 5289 source/dcc.c: 5290 handle dcc send with "irc -S" by using MyIpAddr. 5291 source/numbers.c: 5292 reset the whois_queue() on numeric 001. 5293 source/dcc.c: 5294 don't use a filename if it's NULL. from Sarayan. 5295 source/ircaux.c: 5296 don't free anything pointing as "empty_string". 5297 should prhaps do zero and one here also. 5298 configure, configure.in: 5299 look for /stand/vmunix as well as /hp-ux, before 5300 testing for HPUX. 5301 easyinst: 5302 deal with default server more sanely. 5303 5304Sun Mar 23 03:24:48 EST 1997 - matthew green <mrg@eterna.com.au> 5305 help/alias/functions: 5306 fix index ^ desc. from Stefan Le Breton 5307 <stlb@cs.tu-berlin.de>. 5308 5309Sun Mar 23 01:59:45 EST 1997 - matthew green <mrg@eterna.com.au> 5310 source/parse.c, source/hook.c, include/hook.h.proto, 5311 include/irc.h: 5312 remove ON_KICK: we always have it. 5313 Makefile.in: 5314 cp not ln config.h.dist to config.h. 5315 include/config.h.dist, include/config.h.lynx, include/vars.h, 5316 include/vars.h.proto, include/hook.h, include/hook.h.proto:: 5317 add ctcp_reply* and status_group variables 5318 include/hook.h.proto, include/hook.h: 5319 add /on KICK as normal. 5320 5321Wed Mar 19 06:10:03 METDST 1997 - Olivier Galibert <galibert@loria.fr> 5322 source/ctcp.c, source/server.c, source/vars.c, 5323 include/server.h, include/vars.h, include/config.h, 5324 include/config.h.dist, include/config.h.lynx: 5325 Implement new way of doing CTCP reply flood 5326 protection. Read source/ctcp.c for details. 5327 Has been tested against multiple -- unasked for-- 5328 flood attacks, never failed :-) 5329 5330Fri Mar 21 16:26:45 EST 1997 - matthew green <mrg@eterna.com.au> 5331 source/edit.c: 5332 from sarayan: fix array out of bounds. 5333 source/lastlog.c: 5334 from StElb <stlb@cs.tu-berlin.de>: add lastlog 5335 -save <file>. 5336 source/numbers.c: 5337 handle number 437, for ircd 2.9. 5338 5339Fri Mar 21 12:23:03 EST 1997 - matthew green <mrg@eterna.com.au> 5340 source/edit.c: 5341 don't send "NAMES" for hostmasked channels (eg, 5342 #foo:*.edu). fixes PR#187 5343 source/dcc.c: 5344 fix pr#131: handle dcc send with irc -AS. 5345 5346Thu Mar 20 17:56:47 EST 1997 - matthew green <mrg@eterna.com.au> 5347 translation/POLISH, translation/POLISH_NOPL, 5348 help/set/translation: 5349 add POLISH translation tables from Piotr 'Beeth' 5350 Kucharski <chopin@sgh.waw.pl> 5351 script/global, help/ison: 5352 add /ISON command. 5353 53542.9alpha2 5355Wed Mar 19 14:42:24 EST 1997 - matthew green <mrg@eterna.com.au> 5356 source/dcc.c: 5357 fix bug pointed out by sar: don't use filename if 5358 it is NULL. 5359 source/vars.c: 5360 fix bug pointed out by shadow@tsatsos.math.auth.gr: 5361 /set -realname dumped core. 5362 help/server: 5363 clarify /server name:port:pass:nick 5364 source/ircaux.c: 5365 in new_free(), just reset the pointer to NULL it is 5366 really `empty_string'. 5367 source/parse.c: 5368 use STRING_CHANNEL not a hardcoded '+'. 5369 5370Fri Jan 17 18:10:54 EST 1997 - matthew green <mrg@eterna.com.au> 5371 source/ctcp.c: 5372 change the way ctcp flood protection works. for 5373 longer or faster messages, we ignore for longer. 5374 53752.9alpha1 5376Mon Nov 11 01:25:27 CST 1996 - scott reynolds <scottr@og.org> 5377 source/parse.c: 5378 fix reversed test for comment when leaving channel. 5379 5380Wed Jul 24 11:42:12 EST 1996 - matthew green <mrg@eterna.com.au> 5381 source/lastlog.c, source/mail.c, source/window.c, source/notice.c, 5382 source/names.c, source/server.c, source/screen.c, source/edit.c, 5383 source/funny.c, source/irc.c, source/dcc.c, source/ctcp.c, 5384 source/parse.c, source/numbers.c, source/whois.c: 5385 more message_from() clean ups. 5386 source/parse.c, help/on/leave: 5387 implement part comments (from per). 5388 5389Mon Jul 22 11:42:47 EST 1996 - matthew green <mrg@eterna.com.au> 5390 acconfig.h, include/defs.h.in, include/config.h: 5391 only define NON_BLOCKING_CONNECTS if we actually have 5392 a way of doing it. 5393 source/server.c, source/screen.c, source/dcc.c: 5394 fix some redirect lossage. 5395 53962.9_roof 5397Sun Jul 21 05:20:15 EST 1996 - matthew green <mrg@eterna.com.au> 5398 source/ctcp.c, source/dcc.c, source/edit.c, source/funny.c, 5399 source/lastlog.c, source/mail.c, source/numbers.c, 5400 source/server.c, source/whois.c, source/window.c, 5401 source/notice.c, source/names.c, source/parse.c: 5402 use message_from() consistantly across the board, except 5403 for a few places that set it explicitly to LOG_CURRENT 5404 (which _should_ be the default). this should fix all the 5405 bugs with messages going to the wrong window, but there 5406 are also *lastlog*() functions that might affect this 5407 (and assignments tto `to_window', etc, etc). 5408 source/names.c, source/parse.c: 5409 move the notify_mark() calls to add_to_channel() and 5410 remove_from_channel(). 5411 help/set/translation: 5412 update to reality. 5413 5414Fri Jul 19 22:33:14 EST 1996 - matthew green <mrg@eterna.com.au> 5415 source/newio.c: 5416 it's FD_SETSIZE, _not_ FDSETSIZE. 5417 source/ctcp.c: 5418 in do_ctcp(), only call send_to_server() if there is 5419 actually something to send. stops the client sending 5420 a blank line to the server for every ctcp recieved. 5421 source/server.c: 5422 when a connection fails, set connected = 0, and 5423 read = write = -1 in the server struct. this stops the 5424 "looping failed connection" bug from happening. 5425 5426Tue Jul 9 13:47:42 MET DST 1996 - Christophe Kalt <kalt@syrk.ensta.fr> 5427 source/numbers.c: 5428 display numeric 366 (RPL_ENDOFNAMES) in the right window. 5429 54302.9_wall 5431Wed Jun 26 23:14:21 EST 1996 - matthew green <mrg@eterna.com.au> 5432 source/parse.c: 5433 don't notify_mark() when nick changes case only. 5434 source/numbers.c: 5435 don't set +sw with numeric 381. why was this ever 5436 done, i dunno... 5437 source/numbers.c, source/funny.c, include/server.h: 5438 notice and care about usermode +r and numeric 484 5439 (ERR_RESTRICTED). 5440 include/ircterm.h: 5441 XXX more irix6 lossage. give a tgetstr() proto. 5442 5443Wed Jun 26 12:49:50 EST 1996 - matthew green <mrg@eterna.com.au> 5444 source/edit.c, source/input.c: 5445 ANSIification of some functions taking char arguments. 5446 source/dcc.c: 5447 __STDC_ -> __STDC__ 5448 configure.in, configure, acconfig.h, include/config.h, 5449 include/config.h.lynx, include/defs.h.in: 5450 implement --with-default-server (scottr). 5451 source/irc.c, source/notice.c, include/irc.h: 5452 implement new -b switch: loads .ircrc before 5453 connecting to a server. 5454 source/edit.c: 5455 fix auto_unmark_away (pr#104). check_away was always 0. 5456 configure.in, configure: 5457 impliment --with-non-blocking=(posix|bsd|sysv|none). 5458 make solaris test work on x86. 5459 5460Thu Jun 20 15:32:03 EST 1996 - matthew green <mrg@eterna.com.au> 5461 source/term.c, include/ircterm.h: 5462 XXX HACK ALERT! 5463 made this work for irix6, kinda. this 5464 needs to be replaced by something real. 5465 source/mail.c, source/help.c: 5466 NeXT bug fixes from Mark. 5467 script/2.8script: 5468 fix invite and ban reply. 5469 5470Tue Jun 11 19:52:23 EST 1996 - matthew green <mrg@eterna.com.au> 5471 source/server.c: 5472 don't use sa_len anymore. irix uses it and it 5473 makes Lossage! 5474 easyinst: 5475 deal with no config.h.dist 5476 source/keys.c: 5477 cast call to malloc_strcpy(). from fn. 5478 source/translat.c 5479 translation tables don't have spaces in their 5480 names. from fn. 5481 include/output.h: 5482 refresh_screen returns RETSIGTYPE. pr#92. 5483 contrib/README, contrib/check_load: 5484 added contrib section. 5485 include/lastlog.h: 5486 make default window level LOG_NONE, as per -DPHONE. 5487 54882.9_floor 5489Thu Jun 6 00:50:08 CDT 1996 - scott reynolds <scottr@og.org> 5490 source/if.c: 5491 fix a buffer overrun. (from Karthik Gargi) 5492 54932.9_base 5494Sun Apr 14 14:55:15 CDT 1996 - scott reynolds <scottr@og.org> 5495 source/window.c: 5496 fix problem with /WINDOW SERVER ignoring the port 5497 from the server list under some conditions. 5498 5499Sun Mar 31 08:45:47 CST 1996 - scott reynolds <scottr@og.org> 5500 Makefile.in: 5501 when installing, make sure to create $(mandir), if 5502 necessary. 5503 5504Fri May 31 00:14:23 EST 1996 - matthew green <mrg@eterna.com.au> 5505 Makefile.in: 5506 don't delete config.h anymore. 5507 5508Mon Mar 18 12:40:33 CST 1996 - scott reynolds <scottr@og.org> 5509 source/edit.c: 5510 don't try to use args to /PART if they weren't 5511 specified. fixes pr 81, from krys. 5512 5513Fri Mar 22 15:13:24 EST 1996 - matthew green <mrg@eterna.com.au> 5514 source/irc.c: 5515 fix old bug in updating status clock. 5516 55172.8.16beta 5518Sun Mar 17 15:19:09 EST 1996 - matthew green <mrg@eterna.com.au> 5519 source/irc.c, doc/VERSIONS 5520 note beta release. 5521 5522Thu Mar 14 11:08:53 EST 1996 - matthew green <mrg@eterna.com.au> 5523 source/window.c: 5524 backout previous change to window_get_connected(). 5525 fix the bug by not calling realloc_channels() in 5526 set_window_server(). 5527 5528Wed Mar 13 23:45:53 EST 1996 - matthew green <mrg@eterna.com.au> 5529 source/edit.c: 5530 backout one of the previous next_arg() changes that 5531 broke "/ foo". from phil. 5532 source/window.c: 5533 fix pr#75. don't be so intrusive looking for a channel 5534 for this window. call set_window_server() with misc of 1 5535 from window_get_connected(). this fixes an annoying bug 5536 that made channels get reconnected to the wrong window. 5537 however, this may cause more lossage. 5538 source/parse.c: 5539 add signon/off detection in nick changes. pr#77 from 5540 krys. 5541 55422.8.15 5543Fri Mar 1 21:44:00 EST 1996 - matthew green <mrg@eterna.com.au> 5544 include/whois.h: 5545 add WHOIS_ISON2 as required by scott's change below. 5546 source/dcc.c: 5547 #ifdef S_IFDIR: some unix doesn't have this? 5548 source/edit.c: 5549 fix some memory leaks with expand_twiddle() usage. 5550 use next_arg(). 5551 source/exec.c: 5552 bounds check in is_process_running(). from mark 5553 matthewson. 5554 source/help.c: 5555 count displayed help lines correctly. from kalt. 5556 source/parse.c: 5557 display kick in correct window. from kalt. 5558 source/server.c: 5559 don't allow send_to_server() to recurse. 5560 source/vars.c: 5561 add VF_EXPAND_PATH. allows HELP_PATH to be ~/irc/help, eg. 5562 5563Thu Feb 29 23:41:40 CST 1996 - scott reynolds <scottr@og.org> 5564 source/whois.c: 5565 more whois queue cleanup, from phil. 5566 source/window.c: 5567 fix definition of is_current_channel() to agree with 5568 prototype, and fix for SAME_WINDOW_ONLY, both from phil. 5569 55702.8.14 5571Thu Feb 15 10:16:20 EST 1996 - matthew green <mrg@eterna.com.au> 5572 source/dcc.c: 5573 don't use the ip address 127.0.0.1 for dcc connections. 5574 source/help.c, help/*: 5575 add copyright notices. 5576 5577Wed Feb 14 17:11:44 EST 1996 - matthew green <mrg@eterna.com.au> 5578 source/server.c: 5579 be smarter about displaying server lists. reworked 5580 change from phil. 5581 5582Tue Feb 13 22:33:10 CST 1996 - scott reynolds <scottr@og.org> 5583 include/server.h, source/ctcp.c, source/names.c, source/server.c, 5584 source/whois.c: 5585 Changes from <Philippe.LEVAN@enst-bretagne.fr>: 5586 - initialize ctcp_last_reply_time when creating a 5587 server in the list 5588 - significantly clean up the whois queue stuff 5589 - be more careful with servers we're waiting to 5590 be reconnected 5591 55922.8.13beta 5593Wed Feb 7 21:55:36 EST 1996 - matthew green <mrg@eterna.com.au> 5594 source/ctcp.c: 5595 fix bugs introduced in new flood code. 5596 5597Tue Jan 30 22:55:11 CST 199 - scott reynolds <scottr@og.org>6 5598 source/lastlog.c: 5599 extend LOG_BEEP beyond pr #56 to include normal 5600 lastlog operations. 5601 help/set/lastlog_level, help/window/notify_level: 5602 documentation for LOG_BEEP. 5603 5604Tue Jan 30 00:13:17 CST 1996 - scott reynolds <scottr@og.org> 5605 include/lastlog.h, source/lastlog.c, source/screen.c: 5606 add LOG_BEEP, and clean up a bit. closes pr #56, 5607 mostly from krys. 5608 5609Mon Jan 29 16:32:00 EST 1996 - matthew green <mrg@eterna.com.au> 5610 source/ctcp.c: 5611 be smarted about ctcp floods (still allow non-replying commands). 5612 5613Sun Jan 21 18:10:24 CST 1996 - scott reynolds <scottr@og.org> 5614 source/edit.c: 5615 compare the correct variable; fixes pr #45. 5616 source/term.c: 5617 check for and disable VDISCARD if present, from 5618 <levan@rennes.enst-bretagne.fr> 5619 help/window/double: 5620 added. closes related pr #28. 5621 5622Fri Jan 05 11:22:29 EST 1996 - glen mccready <glen@qnx.com> 5623 source/dcc.c, source/server.c: 5624 put forth some effort in cleaning up the non-blocking 5625 connects - ideas for the cleanup stemmed from a chat 5626 with deraadt@theos.com 5627 5628Thu Dec 21 15:56:55 CST 1995 - scott reynolds <scottr@og.org> 5629 source/irc.c: 5630 Add '&' expansion to the code that gets the user's 5631 name from the passwd file. 5632 5633Wed Dec 13 17:04:52 CST 1995 - scott reynolds <scottr@og.org> 5634 include/struct.h, include/config.h.dist, include/config.h.lynx, 5635 include/config.h.phone, include/vars.h, include/vars.h.proto, 5636 source/screen.c, source/status.c, source/vars.c, source/window.c: 5637 pr #42, /SET DOUBLE -> /WINDOW DOUBLE, from krys. 5638 5639Wed Dec 06 13:28:46 EST 1995 - glen mccready <glen@qnx.com> 5640 Makefile.in: 5641 fix `installman' 5642 configure.in: 5643 slightly modify the qnx compile/link options used 5644 source/alias.c: 5645 function_idle() now always exists, instead of only 5646 when strftime() was found by configure 5647 source/exec.c: 5648 POSIX doesn't define NSIG or anything like it; _SIGMAX 5649 is an extension from somewhere.. with POSIX.4 coming into 5650 being SIGRTMAX may be useful at some point.. until then.. 5651 source/term.c, source/window.c: 5652 avoid name conflicts 5653 source/wserv.c, source/ircsig.c: 5654 cast signal handlers 5655 5656Mon Nov 13 23:50:33 CST 1995 - scott reynolds <scottr@og.org> 5657 source/edit.c, source/hook.c: 5658 fix memory leaks, from krys. fixes PRs 38, 39. 5659 5660Sun Nov 12 23:37:39 EST 1995 - matthew green <mrg@eterna.com.au> 5661 include/config.h.phone, include/config.h.lynx, 5662 include/config.h.dist: 5663 remove some old cruft. 5664 source/mail.c: 5665 count From_ lines correctly. 5666 source/count.l, include/count.l, include/Makefile.in: 5667 move count.l to include. 5668 configure.in, configure, aclocal.m4: 5669 update sendmail check to use macros. 5670 source/vars.c: 5671 comment last of help_service code. 5672 5673Fri Nov 10 02:55:21 EST 1995 - matthew green <mrg@eterna.com.au> 5674 include/ircaux.h, source/alias.c, source/ctcp.c, 5675 source/dcc.c, source/edit.c, source/exec.c, source/hook.c, 5676 source/ignore.c, source/input.c, source/ircaux.c, 5677 source/keys.c, source/lastlog.c, source/names.c, 5678 source/stack.c, source/translat.c, source/vars.c, 5679 source/window.c: 5680 remove all occurances of my_stricmp/my_strnicmp 5681 in a loop where one string being compared was 5682 always upper or lower already. convert some older 5683 changes like this to use upper() and lower(). 5684 5685Mon Nov 6 01:03:06 CST 1995 - scott reynolds <scottr@og.org> 5686 script/imap: 5687 updated mapper script from ian. 5688 5689Sat Nov 4 21:06:29 EST 1995 - matthew green <mrg@eterna.com.au> 5690 Makefile.in, doc/ircbug.1 doc/query-pr.1: 5691 install manuals, and the ircbug program. 5692 56932.8.12beta 5694Wed Nov 1 23:27:33 EST 1995 - matthew green <mrg@eterna.com.au> 5695 include/config.h.dist, include/config.h.lynx, 5696 include/config.h.phone, source/help.c: 5697 #ifdef support for help services. not enabled by default. 5698 5699Wed Nov 1 23:17:10 EST 1995 - matthew green <mrg@eterna.com.au> 5700 help/window/same_window_only, include/vars.h, 5701 include/vars.h.proto, source/window.c, source/vars.c: 5702 add philippe's same_window_only set. 5703 5704Wed Nov 1 22:21:46 EST 1995 - matthew green <mrg@eterna.com.au> 5705 source/edit.c: 5706 call do_channel() with join -i; fixes pr#23 5707 configure.in, aclocal.m4, ircbug.in: 5708 look for sendmail now; don't assume it is in /usr/sbin. 5709 easyinst: 5710 don't call configure with ". ./configure". export necessary 5711 variables (IRCLIB and bindir). 5712 remove all help service stuff -- they don't exist anymore. 5713 5714Tue Oct 31 00:58:59 CST 1995 - scott reynolds <scottr@og.org> 5715 Makefile.in, acconfig, include/defs.h.in, configure.in, configure, 5716 source/irc.c, source/ircflush.c, source/ircio.c, source/wserv.c: 5717 add support for SOCKS firewall traversal library. 5718 INSTALL: 5719 SOCKS support, and a caveat. 5720 5721Mon Oct 30 23:05:30 EST 1995 - matthew green <mrg@eterna.com.au> 5722 source/names.c: 5723 fix switch_channels; from philippe. 5724 5725Fri Oct 27 20:23:29 CDT 1995 - scott reynolds <scottr@og.org> 5726 include/config.h.dist, include/struct.h, include/vars.h.proto, 5727 source/input.c, source/screen.c, source/status.c, source/vars.c, 5728 source/window.c: 5729 double status line, from Christophe Kalt. 5730 source/dcc.c: 5731 double status line, plus fix a bogon when compiling without 5732 NON_BLOCKING_CONNECTS. 5733 include/vars.h: 5734 from vars.h.proto above. 5735 include/irc.h: 5736 struct.h must be included only after INPUT_BUFFER_SIZE 5737 is defined. fixes PR #21. 5738 57392.8.11beta 5740Wed Oct 25 15:14:49 EST 1995 - matthew green <mrg@eterna.com.au> 5741 source/alias.c, source/dcc.c, source/help.c, source/names.c: 5742 fix bug in alias_server(), missing #ifdef nonblocking, 5743 set use_help_service properly, call is_current_channel() 5744 correctly, and clear the server's channel list in a 5745 better way. all from philippe. 5746 5747Tue Oct 24 23:56:44 EST 1995 - matthew green <mrg@eterna.com.au> 5748 source/numbers.c: 5749 fix bug that made failed oper commands close the server. 5750 from philippe. 5751 5752Fri Oct 13 01:15:25 EST 1995 - matthew green <mrg@eterna.com.au> 5753 include/dcc.h, include/ircterm.h, source/alias.c, source/ctcp.c, 5754 source/dcc.c, source/help.c, source/hold.c, source/if.c, 5755 source/menu.c, source/names.c, source/output.c, source/reg.c, 5756 source/scandir.c, source/server.c, source/status.c: 5757 more fixes for solaris warnings. 5758 5759Fri Oct 13 01:14:59 EST 1995 - matthew green <mrg@eterna.com.au> 5760 source/parse.c, source/server.c, include/parse.h, include/server.h: 5761 begin framework for other parsers. 5762 5763Fri Sep 22 11:01:28 CDT 1995 - scott reynolds <scottr@og.org> 5764 source/reg.c: 5765 enable new _wild_match(), remove old version. 5766 5767Thu Sep 21 14:14:32 EST 1995 - matthew green <mrg@eterna.com.au> 5768 source/keys.c, source/edit.c, source/edit.h: 5769 rename clear_screen() to irc_clear_screen(). 5770 5771Tue Sep 12 23:25:00 CDT 1995 - scott reynolds <scottr@og.org> 5772 include/edit.h, source/edit.c, source/whois.c: 5773 ison_ison() -> ison_now(); add dummy arg and prototype 5774 it the way add_ison_to_whois() expects. 5775 source/reg.c: 5776 Integrate new version of _wild_match() from 5777 <dalewis@acsu.buffalo.edu> with minor changes, but don't 5778 enable/use it yet. 5779 5780Fri Sep 8 12:57:14 CDT 1995 - scott reynolds <scottr@og.org> 5781 include/ircterm.h, source/edit.c, source/input.c, source/irc.c, 5782 source/menu.c, source/output.c, source/parse.c, source/screen.c, 5783 source/status.c, source/term.c: 5784 Move the #include <{curses.h|term.h}> into ircterm.h, and 5785 account for some nasty #define's in some lame <term.h> 5786 implementations. 5787 5788Thu Sep 7 10:28:20 CDT 1995 - scott reynolds <scottr@og.org> 5789 source/hook.c, source/ircaux.c, source/ircio.c: 5790 More portability fixes pointed out by HP's cc. 5791 5792Wed Sep 6 21:02:01 CDT 1995 - scott reynolds <scottr@og.org> 5793 include/irc_std.h: 5794 Remove unused TRUE/FALSE #defines. 5795 include/hook.h.proto: 5796 Finish up previous change. 5797 configure.in: 5798 Fix a comment. 5799 5800Wed Sep 6 16:52:51 CDT 199 - scott reynolds <scottr@og.org>5 5801 include/irc.h: 5802 If we HAVE_STDARG_H but we're not __STDC__, just forget 5803 about <stdarg.h>. 5804 include/ctcp.h, include/debug.h, include/defs.h, include/hook.h, 5805 include/output.h, include/server.h, include/whois.h: 5806 Undo previous HAVE_STDARG_H changes. 5807 5808Tue Sep 5 15:31:06 CDT 1995 - scott reynolds <scottr@og.org> 5809 source/alias.c: 5810 Fix "illegal pointer combination" warnings. 5811 5812Tue Sep 5 14:57:59 CDT 1995 - scott reynolds <scottr@og.org> 5813 include/ircterm.h, include/term.c: 5814 HP-UX declares arg3 to tputs() differently. Barf. 5815 5816Wed Sep 6 01:34:53 EST 1995 - matthew green <mrg@eterna.com.au> 5817 configure, configure.in, include/defs.h, include/ircterm.h, 5818 include/term.h, source/edit.c, source/funny.c, source/help.c, 5819 source/input.c, source/irc.c, source/ircaux.c, source/keys.c, 5820 source/menu.c, source/output.c, source/parse.c, source/screen.c, 5821 source/status.c, source/term.c, source/vars.c, source/window.c, 5822 source/wserv.c: 5823 renamed term.h to ircterm.h so that it wouldn't conflict 5824 with <term.h>. fixed test for term.h (sigh). 5825 5826Tue Sep 5 07:30:14 CDT 1995 - scott reynolds <scottr@og.org> 5827 Makefile.in, configure, configure.in, source/Makefile.in: 5828 Move burden of generating vars.h, hook.h, and keys.h to 5829 developers. 5830 include/Makefile.in: 5831 Added. 5832 include/vars.h, include/hook.h, include/keys.h: 5833 Generated and added. 5834 5835Tue Sep 5 21:29:02 EST 1995 - matthew green <mrg@eterna.com.au> 5836 acconfig.h, configure, configure.in, include/defs.h.in, include/irc.h, 5837 source/edit.c, source/input.c, source/irc.c, source/ircio.c, 5838 source/menu.c, source/output.c, source/parse.c, source/scandir.c, 5839 source/screen.c, source/status.c, source/term.c: 5840 quell some gcc warnings under solaris 2. 5841 5842Sun Sep 3 13:22:38 CDT 1995 - scott reynolds <scottr@og.org> 5843 include/ctcp.h, include/debug.h, include/hook.h.proto, 5844 include/output.h, include/server.h, include/whois.h: 5845 Don't try using '...' in prototypes unless __STDC__ is 5846 defined. Takes care of some brain-damaged stock compilers 5847 on otherwise ANSI-aware systems. In particular, this 5848 takes care of HP-UX 9 and, presumably, SunOS 4 systems. 5849 58502.8.10 5851Sun Sep 3 23:41:33 EST 1995 - matthew green <mrg@eterna.com.au> 5852 include/alias.h, include/exec.h, include/irc.h, include/list.h, 5853 include/menu.h, include/names.h, include/screen.h, include/status.h, 5854 include/struct.h, include/whois.h, include/window.h, source/alias.c, 5855 source/crypt.c, source/ctcp.c, source/dcc.c, source/edit.c, 5856 source/exec.c, source/help.c, source/history.c, source/hook.c, 5857 source/ignore.c, source/irc.c, source/ircaux.c, source/ircio.c, 5858 source/keys.c, source/lastlog.c, source/list.c, source/mail.c, 5859 source/menu.c, source/names.c, source/numbers.c, source/parse.c, 5860 source/screen.c, source/server.c, source/stack.c, source/status.c, 5861 source/term.c, source/whois.c, source/window.c, doc/VERSIONS: 5862 fix most of -Wstrict-prototypes, a few more ansi c parameter 5863 promotion fixes (not sure if any are left), up version, fix 5864 a few more warnings, and remove some unused code. 5865 5866Sun Sep 3 00:16:23 CDT 1995 - scott reynolds <scottr@og.org> 5867 source/edit.c, source/input.c, source/menu.c, source/output.c, 5868 source/parse.c, source/screen.c, source/status.c, source/term.c: 5869 Include <curses.h> if needed. 5870 include/term.h: 5871 Prototype putchar_x() properly. 5872 5873Sat Sep 2 23:07:56 CDT 1995 - scott reynolds <scottr@og.org> 5874 acconfig.h, configure.in, configure, include/defs.h.in, 5875 source/irc.c, source/term.c: 5876 Test for tputs() declaration in <curses.h>. Rename 5877 USING_CURSES to INCLUDE_CURSES_H, since the new 5878 use of this is a superset of the old. 5879 5880Sun Sep 3 12:04:35 EST 1995 - matthew green <mrg@eterna.com.au> 5881 source/crypt.c, source/dcc.c, source/debug.c, source/exec.c, 5882 source/hook.c, source/irc.c, source/ircaux.c, source/ircflush.c, 5883 source/ircio.c, source/mail.c, source/menu.c, source/names.c, 5884 source/newio.c, source/screen.c, source/server.c, source/wserv.c, 5885 include/irc.h, include/newio.h, include/debug.h: 5886 move newio.c functions from irc.h to newio.h, and include 5887 this. more prototypes and some style fixes. removed some 5888 unused functions. 5889 5890Fri Sep 1 10:31:02 CDT 1995 - scott reynolds <scottr@og.org> 5891 source/alias.c, source/dcc.c, source/exec.c, source/keys.c, 5892 source/reg.c, source/vars.c: 5893 Fix some inconsistencies for certain static functions. 5894 5895Fri Sep 1 09:41:04 CDT 1995 - scott reynolds <scottr@og.org> 5896 include/ctcp.h, include/debug.h, include/hook.h.proto, 5897 include/server.h: 5898 Put some HAVE_STDARG_H lines back that I had deleted 5899 earlier. 5900 include/ircaux.h, source/ircaux.c: 5901 Another ANSI prototype. 5902 5903Thu Aug 31 08:20:54 CDT 1995 - scott reynolds <scottr@og.org> 5904 include/ircaux.h, include/screen.h, include/whois.h, 5905 include/window.h, source/edit.c, source/ircaux.c, 5906 source/notice.c, source/notify.c, source/screen.c, 5907 source/stack.c, source/status.c: 5908 More ANSI prototyping. 5909 5910Wed Aug 30 23:00:41 CDT 1995 - scott reynolds <scottr@og.org> 5911 include/alias.h, include/crypt.h, include/ctcp.h, include/dcc.h, 5912 include/debug.h, include/edit.h, include/exec.h, include/flood.h, 5913 include/funny.h, include/help.h, include/history.h, include/hold.h, 5914 include/hook.h.proto, include/if.h, include/input.h, 5915 include/ignore.h, include/irc.h, include/ircaux.h, include/keys.h, 5916 include/lastlog.h, include/list.h, include/log.h, include/mail.h, 5917 include/menu.h, include/names.h, include/notify.h, 5918 include/numbers.h, include/output.h, include/parse.h, 5919 include/queue.h, include/screen.h, include/server.h, 5920 include/stack.h, include/status.h, include/term.h, 5921 include/translat.h, include/vars.h.proto, include/whois.h: 5922 Consistency. 5923 5924Wed Aug 30 12:45:32 CDT 1995 - scott reynolds <scottr@og.org> 5925 include/alias.h, include/dcc.h, include/list.h, include/names.h, 5926 include/notify.h, include/server.h, include/struct.h: 5927 ANSIfy some more prototypes. 5928 source/alias.c, source/ctcp.c, source/dcc.c, source/edit.c, 5929 source/exec.c, source/funny.c, source/history.c, source/hold.c, 5930 source/hook.c, source/if.c, source/ignore.c, source/input.c, 5931 source/irc.c, source/ircaux.c, source/keys.c, source/list.c, 5932 source/menu.c, source/names.c, source/newio.c, source/notice.c, 5933 source/numbers.c, source/output.c, source/parse.c, source/screen.c, 5934 source/server.c, source/status.c, source/term.c, source/vars.c, 5935 source/window.c: 5936 Various ANSI prototype-related cleaning, and some 5937 cosmetics to keep gcc -Wall from complaining. 5938 source/reg.c: 5939 Fix operator precedence problem in _wild_match() and 5940 the way it deals with backslash quoting. 5941 5942Mon Aug 28 23:08:30 EST 1995 - matthew green <mrg@eterna.com.au> 5943 include/window.h, source/server.c, source/irc.c, source/window.c, 5944 include/irc.h, include/irc_std.h: 5945 finish server group stuff, remove couple more warnings with 5946 proper prototypes. 5947 configure, configure.in: 5948 redo signal processing and make AMS mail smarter. 5949 include/config.h.phone, include/config.h.lynx, include/config.h.old, 5950 include/config.h.lynx: 5951 remove DYNAMIC_SLIP, and, totally remove config.h.old. 5952 5953Mon Aug 28 17:33:32 EST 1995 - matthew green <mrg@eterna.com.au> 5954 source/server.c, source/window.c, source/keys.h.proto, source/list.h, 5955 source/numbers.h, source/server.h, source/struct.h, 5956 source/vars.h.proto, source/window.h: 5957 add some of the server group stuff. isn't use, but, the 5958 user interface is mostly done. new window commands 5959 addgroup and delgroup exist. 5960 5961Thu Aug 24 13:13:21 EST 1995 - matthew green <mrg@eterna.com.au> 5962 source/funny.c, source/keys.c, source/server.c, source/status.c: 5963 more casts. 5964 5965Thu Aug 24 01:41:12 EST 1995 - matthew green <mrg@eterna.com.au> 5966 source/alias.c, source/dcc.c, source/edit.c, source/input.c, 5967 source/lastlog.c, source/newio.c, source/screen.c, 5968 source/server.c, source/status.c, source/keys.c, source/vars.c, 5969 source/window.c, source/if.c: 5970 more ansi function definitions, fix picky compiler 5971 warnings, and fix a few bogons in previous change. 5972 5973Wed Aug 23 22:50:37 EST 1995 - matthew green <mrg@eterna.com.au> 5974 source/alias.c, source/edit.c, source/hold.c, source/if.c, 5975 source/input.c, source/keys.c, source/menu.c, source/names.c, 5976 source/output.c, source/screen.c, source/term.c, source/window.c, 5977 include/alias.h, include/window.h: 5978 add a lot of ansi function definitions. 5979 5980Wed Aug 23 21:43:46 EST 1995 - matthew green <mrg@eterna.com.au> 5981 source/window.c: 5982 call window_check_servers() at the end of 5983 window_get_connected() to maybe ensure that all servers are 5984 actually connected. 5985 source/translat.c: 5986 add a couple of ansi function declarations. 5987 59882.8.9 5989Wed Aug 23 13:04:54 EST 1995 - matthew green <mrg@eterna.com.au> 5990 source/server.c: 5991 a quick hack to stop the spinning server loop bug. needs 5992 to be revised. 5993 source/irc.c, doc/VERSIONS: 5994 update. 5995 5996Mon Aug 14 09:54:10 CDT 1995 - scott reynolds <scottr@og.org> 5997 Makefile.in: 5998 Spelling correction. 5999 include/hook.h.proto, include/keys.h.proto, include/vars.h.proto: 6000 Add ANSI prototypes. 6001 include/edit.h, include/irc.h, include/ircaux.h, include/server.h, 6002 include/term.h, include/window.h: 6003 Clean up and add a few more ANSI prototypes. 6004 source/alias.c, source/edit.c, source/hook.c, source/irc.c, 6005 source/keys.c, source/numbers.c, source/screen.c, source/server.c, 6006 source/term.c, source/vars.c, source/window.c: 6007 First run through gcc -Wall -Wmissing-prototypes. Lots 6008 more needs to be done. 6009 6010Fri Aug 11 03:53:13 EST 1995 - matthew green <mrg@eterna.com.au> 6011 source/alias.h, source/crypt.h, source/ctcp.h, source/dcc.h, 6012 source/debug.h, source/edit.h, source/exec.h, source/flood.h, 6013 source/funny.h, source/history.h, source/hold.h, source/ignore.h, 6014 source/input.h, source/ircaux.h, source/list.h, log.h, 6015 source/mail.h, source/menu.h, source/names.h, source/notify.h, 6016 source/numbers.h, source/output.h, screen.h, source/server.h, 6017 source/status.h, source/struct.h, source/talkd.h, source/term.h, 6018 source/window.h: 6019 consistancy. 6020 6021Thu Aug 10 01:43:01 EST 1995 - matthew green <mrg@eterna.com.au> 6022 source/debug.c, source/exec.c, source/flood.c, source/hook.c, 6023 source/ignore.c, source/menu.c, source/names.c, source/notify.c, 6024 source/numbres.c, source/screen.c, source/server.c, source/stack.c, 6025 source/window.c, source/alias.c, source/dcc.c, source/crypt.c, 6026 include/debug.h: 6027 fix prototype warnings and bogons in debug.c with -DDEBUG. 6028 6029Wed Aug 9 08:50:51 EST 1995 - matthew green <mrg@eterna.com.au> 6030 source/irc.c, source/dcc.c, include/dcc.h: 6031 prototype dcc_check(), and attempt to make non blocking 6032 connects work more sanely. 6033 6034Tue Aug 8 16:24:27 CDT 1995 - scott reynolds <scottr@og.org> 6035 include/alias.h, include/crypt.h, include/ctcp.h, include/dcc.h, 6036 include/debug.h, include/defs.h, include/edit.h, include/exec.h, 6037 include/flood.h, include/funny.h, include/help.h, include/history.h, 6038 include/hold.h, include/if.h, include/ignore.h, include/input.h, 6039 include/irc.h, include/irc_std.h, include/ircaux.h, include/lastlog.h, 6040 include/list.h, include/log.h, include/mail.h, include/menu.h, 6041 include/names.h, include/notify.h, include/numbers.h, include/output.h, 6042 include/parse.h, include/queue.h, include/screen.h, include/server.h, 6043 include/stack.h, include/status.h, include/struct.h, include/talkd.h, 6044 include/term.h, include/translat.h, include/whois.h, include/window.h, 6045 source/gzip.h: 6046 Add ANSI prototypes to a great many functions. 6047 source/irc.c: 6048 call to set_window_server was missing "all" arg 6049 source/screen.c: 6050 call to dgets() was missing "specials" arg 6051 6052Tue Aug 8 12:16:25 EST 1995 - matthew green <mrg@eterna.com.au> 6053 source/server.c: 6054 fix a bogon glen left lying around in failed server 6055 connections. 6056 60572.8.8 6058Wed Aug 02 00:57:54 MDT 1995 - glen mccready <glen@qnx.com> 6059 source/irc.c, source/ircaux.c, source/dcc.c, source/screen.c, 6060 source/server.c, include/dcc.h, include/ircaux.h: 6061 mostly working non-blocking connect code 6062 define NON_BLOCKING_CONNECTS 6063 a start at "/server ." 6064 define SERVER_DOT 6065 source/alias.c, source/edit.c, source/exec.c, source/names.c, 6066 source/parse.c, source/stack.c, source/window.c, include/irc.h: 6067 use `zero' and `one' rather than "0" and "1" 6068 use my_stricmp() less to save tolower()ing the string 6069 source/newio.c: 6070 the new_free() mentioned below was necessary 6071 source/notify.c: 6072 the extra test broke /notify 6073 source/if.c, source/reg.c: 6074 cleaned up some warnings 6075 6076Tue Jul 25 23:29:04 EST 1995 - matthew green <mrg@eterna.com.au> 6077 source/ircaux.c, source/newio.c: 6078 fix typo in ircaux.c. 6079 remove dated ESIX code (read/recv) 6080 make new_close() smarter: doesn't matter if you 6081 call it with -1, and doesn't new_free() the io_rec, 6082 as it's likely we'll want it later anway. 6083 source/dcc.c, source/edit.c, source/file.c, source/flood.c, 6084 source/history.c, source/ignore.c, source/ircflush.c, 6085 ircsig.c, source/lastlog.c, source/list.c, source/log.c, 6086 source/mail.c, source/notify.c, source/reg.c, source/screen.c, 6087 stack.c, source/translat.c, source/vars.c, source/whois.c, 6088 source/wserv.c: 6089 for (;foo;) -> while (foo) 6090 source/ircserv.c, source/ircio.c, source/Makefile.in, 6091 doc/ircII.1, doc/SecureIRC, source/file.c, source/irc.c, 6092 source/server.c, Makefile.in: 6093 renamed ircserv to ircio. 6094 6095Thu Jul 20 02:45:39 CDT 1995 - christopher williams <cgw@io.com> 6096 source/edit.c: 6097 fix bug in execute_timer() to set to_window 6098 to curr_scr_win 6099 6100Wed Jul 19 22:57:57 MDT 1995 - glen mccready <glen@qnx.com> 6101 source/ctcp.c, include/server.h: 6102 fix for premature ctcp flood response 6103 6104Tue Jul 18 23:19:35 CDT 1995 - scott reynolds <scottr@og.org> 6105 configure.in, configure, acconfig.h, include/defs.h.in, 6106 include/irc.h: 6107 check for varargs.h 6108 include/ctcp.h, include/debug.h, include/irc.h, 6109 include/output.h, include/server.h, include/whois.h, 6110 include/hook.h.proto, source/alias.c, source/ctcp.c, 6111 source/debug.c, source/help.c, source/hook.c, 6112 source/ircaux.c, source/output.c, source/server.c, 6113 source/term.c source/whois.c: 6114 use stdarg.h if available. 6115 6116Tue Jul 18 00:38:02 MDT 1995 - glen mccready <glen@qnx.com> 6117 source/dcc.c: 6118 added dcc rename -chat 6119 6120Tue Jul 4 23:21:17 CDT 1995 - scott reynolds <scottr@og.org> 6121 configure.in, configure: 6122 general organizational cleanup. 6123 6124Tue Jul 4 13:47:22 CDT 1995 - scott reynolds <scottr@og.org> 6125 source/term.c, source/output.c: 6126 check for sys/ioctl.h; remove dead code. 6127 6128Mon Jul 3 23:57:41 CDT 1995 - scott reynolds <scottr@og.org> 6129 source/term.c: 6130 set up termcap before twiddling tty settings. 6131 61322.8.7 6133Sat Jul 1 21:44:20 EST 1995 - matthew green <mrg@eterna.com.au> 6134 source/names.c: 6135 various fixes to previous changes. 6136 configure.in, configure: 6137 portability and style fixes. 6138 6139Sat Jul 1 21:46:57 EST 1995 - scott reynolds <scottr@og.org> 6140 configure.in, configure, Makefile.in, source/term.c, 6141 acconfig.h: 6142 install help pages with pax/tar/cpio. do termios 6143 stuff as termios/sgtty/termio. 6144 6145Mon Jun 26 00:17:46 EST 1995 - matthew green <mrg@eterna.com.au> 6146 source/dcc.c: 6147 add errno to dcc send close message. 6148 configure, configure.in: 6149 fix bug in test for unsigned 32 bit int's. 6150 6151Sat Jun 24 06:23:08 EST 1995 - matthew green <mrg@eterna.com.au> 6152 include/lastlog.h, include/names.h, source/edit.c, 6153 source/irc.c, source/names.c, source/numbers.c, 6154 source/screen.c, source/server.c, source/window.c: 6155 added connected member to ChannelList. reworked 6156 some PHONE/NOPHONE things to be simpler, fix a 6157 couple of memory leaks in names.c 6158 6159Sat Jun 24 04:31:05 EST 1995 - matthew green <mrg@eterna.com.au> 6160 source/edit.c: 6161 do st_mode in a more sane way. 6162 6163Thu Jun 22 23:54:57 EST 1995 - matthew green <mrg@eterna.com.au> 6164 source/dcc.c, source/screen,c, source/server.c, 6165 source/window.c: 6166 remove dgets timed out messages. reverse log on 6167 PHONE and call it NOPHONE for most. 6168 source/alias.c, help/alias/functions: 6169 idle() command, and doc for idle and strftime, from 6170 scottr@plexus.com. 6171 help/ 6172 added. 6173 6174Wed Jun 7 23:52:56 EST 1995 - matthew green <mrg@eterna.com.au> 6175 source/crypt.c, source/dcc.c, source/exec.c, source/irc.c, 6176 source/ircaux.c, source/ircserv.c, source/screen.c, 6177 source/server.c: 6178 use new_close() not close(). 6179 61802.8.6 6181Wed Jun 7 00:24:34 EST 1995 - matthew green <mrg@eterna.com.au> 6182 source/server.c: 6183 couple of fixes from philippe i missed, and removal 6184 of old junk (local_ip_address). 6185 include/edit.h, include/hold.h, include/input.h, 6186 include/irc.h, include/keys.h.proto, include/menu.h, 6187 include/names.h, include/output.h, include/screen.h, 6188 include/term.h, include/window.h, source/edit.c, 6189 source/hold.c, source/input.c, source/irc.c, 6190 source/keys.c, source/menu.c, source/names.c, 6191 source/output.c, source/screen.c, source/term.c, 6192 source/window.c: 6193 don't ask. 6194 source/irc.c, doc/VERSIONS: 6195 release. 6196 61972.8.5 6198 6199a big thanks to philippe for this version. 6200 6201Sat May 27 00:02:13 EST 1995 - matthew green <mrg@eterna.com.au> 6202 configure configure.in: 6203 handle space or tab in version grovelling. 6204 source/edit.c: 6205 added phil to info. 6206 source/irc.c, doc/VERSIONS: 6207 release. 6208 6209Fri May 26 23:55:35 EST 1995 - matthew green <mrg@eterna.com.au> 6210 include/funny.h, include/names.h, include/server.h, 6211 include/window.h, source/alias.c, source/ctcp.c, 6212 source/edit.c, source/funny.c, source/irc.c, source/names.c, 6213 source/notice.c, source/numbers.c, source/parse.c, 6214 source/screen.c, source/server.c, source/status,c, 6215 source/window.c: 6216 a bunch of changes from philippe relating to 6217 windows and servers and channels and other little 6218 things. /window server, channel and bind all work 6219 MUCH better. 6220 62212.8.4 6222Fri May 26 23:54:19 EST 1995 - matthew green <mrg@eterna.com.au> 6223(actually 19950412) 6224 source/names.c: 6225 fix a buglet in previous. 6226 62272.8.3 6228Tue Apr 11 22:04:49 EST 1995 - matthew green <mrg@eterna.com.au> 6229 source/names.c: 6230 optimise a Hell of a lot of things. 6231 source/server.c: 6232 remove dyanmic slip stuff. we do this a better 6233 way already.. 6234 source/names.c, source/server.c, source/parse.c, 6235 source/notice.c, include/names.h: 6236 rework the channel_list to be a server-local thing 6237 (and thus attached to the server_list). this lets 6238 multi-servers work better. 6239 6240Sun Apr 9 23:20:17 EST 1995 - matthew green <mrg@eterna.com.au> 6241 script/tabkey: 6242 fix to allow nicks with \'s in them work. 6243 62442.8.2 6245Thu Apr 6 00:37:12 EST 1995 - matthew green <mrg@eterna.com.au> 6246 source/names.c: 6247 removed bogus patch. 6248 6249Tue Apr 4 01:18:47 EST 1995 - matthew green <mrg@eterna.com.au> 6250 source/irc.c: 6251 patch for qnx's select lossage from glen@qnx.com. 6252 62532.8.1 6254Tue Apr 4 01:04:44 EST 1995 - matthew green <mrg@eterna.com.au> 6255 configure.in/configure: 6256 quick patch to fix message on sunos, and autoconf 6257 2.2. 6258 include/names.h, source/names.c: 6259 fix from levan@enstb.enst-bretagne.fr for cached 6260 mode strings and channel limits. 6261 include/window.h, source/edit.c, source/names.c, 6262 source/status.c, source/window.c: 6263 fixes from levan@enstb.enst-bretagne.fr for 6264 various window/server problems. 6265 source/help.c, source/numbers.c: 6266 fixes from levan@enstb.enst-bretagne.fr for dumb 6267 mode and wait prompts. maybe this should be fixed 6268 in add_wait_prompt() instead... 6269 source/edit.c: 6270 update poxaV's address. 6271 source/irc.c: 6272 don't do the notify_list if we aren't connected! 6273 source/notify.c: 6274 fix core dump. 6275 source/screen.c: 6276 fixed select() return value. duh. 6277 source/server.c: 6278 fixes from levan for port stuff. fixes from me 6279 for a stupid core dump that shouldn't happen. we 6280 reset the entire server connection list if we get 6281 this `impossible' case. should warn the user too, 6282 i guess. 6283 62842.8 6285Thu Jan 26 18:13:57 EST 1995 - matthew green <mrg@eterna.com.au> 6286 released to the public. 6287 62882.7.3 6289Tue Jan 24 00:13:28 EST 1995 - matthew green <mrg@eterna.com.au> 6290 configure, configure.in, include/exec.h, include/irc_std.h 6291 source/exec.c: 6292 some fixes for next: major lossage head damaged 6293 i don't know how to organise an operating system 6294 such that it works -or- i'm just a stupid git who 6295 has no idea about standards. you choose. 6296 62972.7.2 6298Sat Jan 21 12:34:02 EST 1995 - matthew green <mrg@eterna.com.au> 6299 source/dcc.c: 6300 always make sure from_server is set in dcc_open. 6301 source/edit.c: 6302 some zcat fixes. 6303 configure, configure.in: 6304 -lc -lposix for NeXT. 6305 63062.7.1 6307Mon Jan 16 20:14:59 EST 1995 - matthew green <mrg@eterna.com.au> 6308 source/server.c, source/edit.c, include/server.h: 6309 added /disconnect. 6310 6311Mon Jan 16 17:23:38 EST 1995 - matthew green <mrg@eterna.com.au> 6312 source/parse.c: 6313 can't use '\a' on broken compilers. what a pile 6314 of shit they are. found by comstud. 6315 6316Sun Jan 15 12:14:39 EST 1995 - matthew green <mrg@eterna.com.au> 6317 source/newio.c: 6318 fixed bug caused with /flush sending a null rd 6319 value to new_select(). duh. found by 6320 arnaud.girsch@insa-lyon.fr. 6321 63222.7 6323Thu Jan 12 21:20:04 EST 1995 - matthew green <mrg@eterna.com.au> 6324 2.7 released to the world. 6325 6326Wed Jan 11 14:16:34 EST 1995 - matthew green <mrg@eterna.com.au> 6327 source/server.c: 6328 fixed for new dgets_errno being -1 for read == 0. 6329 broken strerror() on losing systems. 6330 6331Tue Jan 10 23:40:24 EST 1995 - matthew green <mrg@eterna.com.au> 6332 source/whois.c: 6333 i hate c. stdarg fixes me and glen bashed into 6334 working. 6335 source/window.c: 6336 doh! thanks glen. 6337 63382.6.10 6339Sat Jan 7 01:30:11 EST 1995 - matthew green <mrg@eterna.com.au> 6340 configure.in: 6341 fixed typo. 6342 NEWS: 6343 updated for 2.7 6344 source/server.c: 6345 fixed bug in dcc send/chat and non-first server 6346 connected to. 6347 include/vars.h.proto, include/keys.h.proto, 6348 include/hook.h.proto: 6349 changed __P macro. 6350 source/ctcp.c source/debug.c source/file.c source/flood.c 6351 source/funny.c source/hold.c source/ircflush.c 6352 source/ircserv.c source/lastlog.c source/list.c 6353 source/menu.c source/notice.c source/output.c source/reg.c: 6354 reformat. nothing else needed now. 6355 63562.6.9 6357Thu Jan 5 17:52:00 EST 1995 - matthew green <mrg@eterna.com.au> 6358 source/vars.c: 6359 fixed losing ansi stuff. 6360 Makefile.in: 6361 added cleandir and realclean targets. 6362 6363Wed Jan 4 22:44:18 EST 1995 - matthew green <mrg@eterna.com.au> 6364 configure.in, source/help.c, source/mail.c: 6365 updated fully for autoconf 2.x. this could lead 6366 to some breakage. we'll see. 6367 source/edit.c: 6368 make `/topic * foo' work as expected. 6369 source/keys.c, source/term.c: 6370 fixed eight_bit_mode and /bind'ing char's with an 6371 eigth bit set. 6372 63732.6.8 6374Tue Jan 3 01:14:53 EST 1995 - matthew green <mrg@eterna.com.au> 6375 source/ 6376 removed all occurances of "index" as a variable. 6377 move the ansi prototype macro from __P() to _() 6378 code "freeze" for 2.7 6379 6380Mon Jan 2 16:44:10 EST 1995 - matthew green <mrg@eterna.com.au> 6381 source/names.c, source/funny.c, source/parse.c, 6382 include/names.h: 6383 added new method of user joining for irc 2.9 ( 6384 JOIN #foo^G[ov]) handling. 6385 6386Sun Jan 1 21:39:58 EST 1995 - matthew green <mrg@eterna.com.au> 6387 source/dcc.c, source/server.c, include/server.h 6388 added struct in_addr to server structure that is 6389 filled in with getsockname() and is used in dcc 6390 requests. 6391 source/dcc.c: 6392 added idea from mark to show unknown dcc requests. 6393 source/newio.c: 6394 fixed new_select() to call select with the correct 6395 first argument. 6396 63972.6.7 6398Thu Dec 29 22:22:34 EST 1994 - matthew green <mrg@eterna.com.au> 6399 source/Makefile.in: 6400 fixed lossage with wterm dependancies. 6401 source/irc.c: 6402 fixed "irc --" and "irc -q nick" core dumps. 6403 source/input.c: 6404 make transpose chars work at the end of line. 6405 doc/ircII.1: 6406 updated my email address. 6407 64082.6.6 6409Wed Dec 21 20:43:04 EST 1994 - matthew green <mrg@eterna.com.au> 6410 source/Makefile.in: 6411 updated dependancies. (problems pointed out by 6412 daniel carosone). 6413 source/dcc.c: 6414 read in to the *end* of the buffer, dork. 6415 64162.6.5 6417Mon Dec 19 02:57:38 EST 1994 - matthew green <mrg@eterna.com.au> 6418 Makefile.in, configure.in: 6419 some changes as needed for autoconf 2.x. 6420 source/dcc.c, source/window.c, include/dcc.h: 6421 might have fixed the bug with bsd/dcc chat. 6422 64232.6.4 6424Mon Dec 19 01:47:21 EST 1994 - matthew green <mrg@eterna.com.au> 6425 source/irc.c, source/notice.c, include/irc.h: 6426 added -q option for quick startup. 6427 6428Mon Dec 19 01:32:15 EST 1994 - matthew green <mrg@eterna.com.au> 6429 6430 source/edit.c, source/names.c, source/screen.c, 6431 source/window.c, include/window.h 6432 added 'bind' and 'unbind' window commands. 6433 source/edit.c: 6434 moved NOVICE /part stuff to only be when we are 6435 actually sending a JOIN to the server. 6436 6437Sun Dec 18 23:00:54 EST 1994 - matthew green <mrg@eterna.com.au> 6438 easyinst: 6439 fixed bug in question asking. 6440 source/server.c: 6441 fixed lossage with /server -delete, reported by 6442 scottr. 6443 source/parse.c: 6444 removed bogus fix from cjs@netcom.com. 6445 source/alias.c: 6446 still fixing chanusers(). 6447 source/exec.c: 6448 close all unneeded fd's in /exec now. 6449 source/numbers.c: 6450 try to set the message_from level to the channel 6451 the numeric is about, if we can. 6452 source/screen.c: 6453 move closing in to close_all_screen() so we can 6454 call it for /exec also. 6455 64562.6.3 6457Sun Nov 27 03:16:16 EST 1994 - matthew green <mrg@eterna.com.au> 6458 6459 source/alias.c: 6460 fix for chanusers() from Greg Jarman <amigo@deakin.edu.au> 6461 source/ctcp.c 6462 fix for do_echo() from taner 6463 source/window.c 6464 made default JOIN rather than CHANNEL for /win join 6465 source/parse.c 6466 fix for /server lossage from cjs@netcom.com 6467 source/translat.c: 6468 fix for /set -translation 6469 6470Sun Nov 27 02:36:23 EST 1994 - matthew green <mrg@eterna.com.au> 6471 6472 source/screen.c, source/vars.c, include/vars.h.proto: 6473 added dave leonard's screen_options stuff, as well 6474 as some bug fixes he found. 6475 6476Fri Nov 25 16:58:00 EST 1994 - matthew green <mrg@eterna.com.au> 6477 6478 source/dcc.c: 6479 got fix for dcc problems from Scott Johnson 6480 <scottj@neuron.cs.tamu.edu> 6481 6482Tue Nov 15 01:27:40 EST 1994 - matthew green <mrg@eterna.com.au> 6483 6484 source/dcc.c: 6485 added diagnostic to attempt to observe losing dcc 6486 chat and newer-bsd's. it appears that somewhere 6487 between 2.5 and 2.6.2 it was fixed -- perhaps the 6488 edit.c lossage fixed in 2.6.1. 6489 source/edit.c: 6490 /join now defaults to sending a JOIN command rather 6491 than sending a CHANNEL command... duh! 6492 64932.6.2 6494Mon Nov 14 01:23:44 EST 1994 - matthew green <mrg@eterna.com.au> 6495 6496 source/names.c, source/server.c: 6497 fixed bug avalon found where death of other 6498 servers would cause channel lists to be broken. 6499 source/screen.c: 6500 fully initialised struct timeval for window create. 6501 65022.6.1 6503Tue Nov 08 02:35:r9 EST 1994 - matthew green <mrg@eterna.com.au> 6504 6505 Makefile.in, mkinstalldirs: 6506 removed old garbage, and we now use noah's 6507 mkinstalldirs.. 6508 include/help.h, include/if.h, include/queue.h: 6509 added to help fix edit.c lossage. 6510 include/alias.h, include/crypt.h, include/edit.h, 6511 include/exec.h, include/history.h, include/hook.h.proto, 6512 include/ignore.h, include/irc.h, include/keys.h.proto, 6513 include/notify.h, include/parse.h, include/server.h, 6514 include/stack.h, include/parse.h, include/vars.h.proto, 6515 include/window.h, source/alias.c, source/crypt.c, 6516 source/edit.c, source/exec.c, source/help.c, 6517 source/history.c, source/hook.c, source/if.c, 6518 source/ignore.c, source/keys.c, source/match.c, 6519 source/names.c, source/notice.c, source/notify.c, 6520 source/queue.c, source/server.c, source/stack.c, 6521 source/translat.c, source/vars.c, source/window.c, 6522 source/irc.c: 6523 many of the functions in the edit.c command array 6524 were called with three args, but these functions 6525 only took 2 args. all fixed up and prototyped now. 6526 who knows what lossage this caused. found by 6527 diane bruce (db@diana.ocunix.on.ca). 6528 65292.6 6530Tue Oct 18 19:17:49 EST 1994 - matthew green <mrg@eterna.com.au> 6531 6532 script/newformat 6533 does $R processing for stats l output. works only 6534 on the local server, though. from ian. 6535 6536Mon Oct 17 21:59:21 EST 1994 - matthew green <mrg@eterna.com.au> 6537 6538 source/reg.c: 6539 % was broken in pattern matching. got a fix from 6540 ian and no_nick for this. grumble. 6541 source/server.c, include/config.h.dist 6542 got a patch from ian to make ircii do dynamic 6543 ip number stuff. 6544 65452.5 6546Sun Oct 16 15:45:47 EST 1994 - matthew green <mrg@eterna.com.au> 6547 6548 more general clean up. 6549 65502.4 6551Sun Oct 16 09:48:53 EST 1994 - matthew green <mrg@eterna.com.au> 6552 6553 source/edit.c: 6554 turned on hop's for, fe and fec commands. 6555 6556Sat Oct 15 13:25:47 EST 1994 - matthew green <mrg@eterna.com.au> 6557 6558 general clean up of everything. 6559 65602.3.24 6561Wed Oct 12 09:24:36 EST 1994 - matthew green <mrg@eterna.com.au> 6562 6563 source/debug.c: 6564 added fixes. 6565 source/irc.c, source/screen.c: 6566 added debugging info in forward_scroll. (not part 6567 of release tree). 6568 source/stack.c: 6569 begun finishing. 6570 6571Sun Oct 9 16:42:44 EST 1994 - matthew green <mrg@eterna.com.au> 6572 6573 configure.in source/crypt.c source/dcc.c source/debug.c 6574 source/edit.c source/exec.c source/help.c source/history.c 6575 source/hook.c source/ircaux.c source/server.c source/log.c 6576 source/term.c source/whois.c source/window.c source/output.c 6577 source/ctcp.c: 6578 stdarg.h patches from brianc@qnx.com and glen@qnx.com, 6579 plus some other minor fixes. qnx support, also. 6580 6581Thu Oct 6 22:16:42 EST 1994 - matthew green <mrg@eterna.com.au> 6582 6583 source/server.c: 6584 fixed `bug' in -DPHONE where /window server + was 6585 setting the window level to ALL. eeew. 6586 6587Mon Sep 26 14:38:17 EST 1994 - matthew green <mrg@eterna.com.au> 6588 6589 source/alias.c: 6590 fix for onchannel() from Scott Reynolds 6591 <scott@lisa.acs.nmu.edu> 6592 65932.3.23beta 6594Sun Sep 4 00:24:13 EST 1994 - matthew green <mrg@eterna.com.au> 6595 6596 source/names.c: 6597 fixed /part bug,and a fix (finally!) for ischanop() 6598 from <cbehrens@iastate.edu>. 6599 source/dcc.c: 6600 fixed bug where you could not dcc send to one person 6601 more than once. 6602 source/screen.c: 6603 fixed resize bug when going to s smaller window and 6604 a line would be cut off. how did this last so long? 6605 6606Tue Aug 2 00:30:33 EST 1994 - matthew green <mrg@eterna.com.au> 6607 6608 configure.in, include/irc.h, include/term.h, source/scandir.c, 6609 source/term.c: 6610 fixed hpux autoconf problems. 6611 configure now checks that -lresolv actually works, 6612 and doesn't break compiles. 6613 configure doesn't use BSDWAIT if POSIX is defined, 6614 so that newer bsd systems (like netbsd) will use the 6615 POSIX waitpid() stuff, not causes warnings.. 6616 6617Sun Jul 31 21:53:03 EST 1994 - matthew green <mrg@eterna.com.au> 6618 6619 source/dcc.c: 6620 removed debug message, and a fix for DCC_RAW from 6621 jim_bob (jrg@doc.ic.ac.uk). 6622 66232.3.22beta 6624Sun Jul 31 03:07:00 EST 1994 - matthew green <mrg@eterna.com.au> 6625 6626 source/names.c, source/parse.c, include/names.h 6627 fixed ircii not forgetting about remembered channel 6628 modes after the channel has been joined. 6629 source/queue.c, source/notify.c, source/mail.c: 6630 fixed compatibilty problems found with sunos cc. 6631 source/irc.c: 6632 versions. 6633 script/autoop, script/list, script/functions, script/imap, 6634 script/history-match: 6635 fixed autoop & list, cleaned up functions and imap, 6636 added history-match (Daemon). 6637 6638Tue Jul 26 22:12:42 EST 1994 - matthew green <mrg@eterna.com.au> 6639 6640 source/edit.c, source/alias.c: 6641 getcwd() fixes from cgw. 6642 source/dcc.h, include/dcc.h: 6643 added new member to the client struct, othername. 6644 it's currently only used by dcc_filesend() to save 6645 the name given as well as the full path - so that 6646 /dcc send file nick file works, without giving the 6647 full pathname for 'file'. 6648 66492.3.21b 6650Mon Jul 25 23:27:09 EST 1994 - matthew green <mrg@eterna.com.au> 6651 6652 source/window.c: 6653 window() - added new commands REMOVE, which is the 6654 opposite of ADD, and NUMBER, which changes the refnum 6655 of a window, forcing a swap if needed. 6656 source/ircserv.c: 6657 removed printf()'s. no more lame messages at startup 6658 now. 6659 acconfig.h, configure.in, include/irc.h, source/alias.c, 6660 source/dcc.c, source/edit.c: 6661 configure now checks for getcwd() not getwd(), and 6662 everything now uses getcwd() not getwd(). 6663 source/term.c: 6664 cleaned up a bit. 6665 script/uhnotify: 6666 got a fix from taner <taner@ucsd.edu>. 6667 6668 66692.3.21a 6670Sat Jul 23 23:30:53 EST 1994 - matthew green <mrg@eterna.com.au> 6671 6672 source/alias.c: 6673 fixed the broken $, bug introduced from hop's alias.c 6674 changes. blah. 6675 6676Sat Jul 23 18:37:25 EST 1994 - matthew green <mrg@eterna.com.au> 6677 6678 source/alias.c, include/irc_std.h, source/term.c: 6679 removed sys/param.h, and moved it into irc_std.h. 6680 this was to get the newer bsd's define of BSD4_4 6681 (net/2 defines this as 0.5), which was then used 6682 in term.c to use termios. 6683 source/ctcp.c: 6684 also prints unix version (uname) in ctcp finger 6685 reply. 6686 source/scandir.c: 6687 removed sunos4 readdir_r() stuff. it used to fail 6688 because we were getting the ucblib's readdir() but 6689 not using the right header files. 6690 include/irc_std.h, configure.in, acconfig.h: 6691 added a check for memmove(), which we now use if we 6692 are missing bcopy(). 6693 6694 66952.3.21 6696Sun Jul 3 17:03:52 EST 1994 - matthew green <mrg@eterna.com.au> 6697 6698 source/alias.c: 6699 fixed bug that broke /if and chewed cpu time. 6700 67012.3.20 6702Sat Jul 2 17:36:41 EST 1994 - matthew green <mrg@eterna.com.au> 6703 6704 this version was mostly updates from jeremy nelson 6705 (jnelson@iastate.edu), with a few other bits from me. 6706 6707 configure, acconfig.h: 6708 bug fix for signal() test, and check for uname(2). 6709 include/dcc.h, source/notice.c, source/whois.c: 6710 added new hooks ENCRYPTED_NOTICE and 6711 ENCRYPTED_PRIVMSG from hop (jnelson@iastate.edu) 6712 include/names.h, source/names.c: 6713 fixed memory leak in recreate_mode() that hop found, 6714 but patched badly ;). it now caches the string 6715 version of the mode for each channel, in each channel's 6716 channel struct. 6717 source/Makefile.in: 6718 updated dependancies. 6719 source/alias.c: 6720 reworked parser stuff from hop, plus a few new goodies. 6721 source/ctcp.c: 6722 added special parsing of ctcp SED. 6723 added posix uname() handling for ctcp FINGER. 6724 source/help.c: 6725 temporary fix for compressed help pages. 6726 source/hook.c: 6727 added hop's new do_hook() and assiciated routines that 6728 fix the bugs we had in serial numbers. 6729 source/if.c: 6730 added some of hop's if.c hacks 6731 source/ircaux.c: 6732 added hop's stristr() and rstristr() functions. 6733 source/parse.c: 6734 many bug fixes from hop. 6735 source/queue.c: 6736 added hop's queue.c after cleaning it up a bit. 6737 source/whois.c: 6738 various bug fixes from hop and myself. 6739 6740version 2.3.19 never really existed. 6741 67422.3.18 6743Sun Mar 27 22:41:02 EST 1994 - matthew green <mrg@eterna.com.au> 6744 6745 source/reg.c: 6746 fixed bug in matching where the string ended in \. 6747 found by avalon (avalon@coombs.anu.edu.au) 6748 source/input.c: 6749 fixed bug in transpose characters (avalon). 6750 source/alias.c: 6751 fixed pathetic code for showing aliases. 6752 source/dcc.c: 6753 fixed window level stuff.. bry (b@ctpm.org). 6754 source/hook.c 6755 removing all hooks with a specific serial number 6756 works now (/on #hook 1 -). 6757 source/parse.c, source/numbers.c: 6758 fixed bugs with missing args 6759 67602.3.17beta 6761Mon Mar 21 00:08:15 EST 1994 - matthew green <mrg@eterna.com.au> 6762 6763 source/crypt.c, source/help.c, source/vars.c, source/screen.c, 6764 source/Makefile.in: 6765 fixed security bugs in /help and some /set's and in 6766 /window create. 6767 configure.in: 6768 moved AC_PROG_CPP. 6769 translation/RUSSIAN*: 6770 added this. thanks to dima@demos.su (Dima Ruban) 6771 for these. 6772 6773Sat Mar 19 00:04:42 EST 1994 - matthew green <mrg@eterna.com.au> 6774 6775 source/window.c: 6776 fixed bug in /on window_kill 6777 source/help.c: 6778 fixed lame bug in freeing nonallocated memory 6779 source/exec.c: 6780 fixed bugs in getpgrp() stuff 6781 source/dcc.c: 6782 dcc requests with the port < 1024 are now rejceted. 6783 source/scandir.c 6784 hopefully got the solaris 2 stuff right here. i 6785 hate solaris 2. 6786 67872.3.16beta 6788Thu Feb 3 20:11:11 EST 1994 - matthew green <mrg@eterna.com.au> 6789 6790 source/ctcp.c: 6791 fixed stupid bug 6792 source/parse.c: 6793 fixed window level problems. 6794 67952.3.15beta 6796Tue Feb 1 19:18:23 EST 1994 - matthew green <mrg@eterna.com.au> 6797 6798 source/config.h: 6799 updated for the beta release. 6800 source/scandir.c: 6801 memory leak fixes, and solaris fixes. 6802 source/status.c: 6803 'mode k' bug fixed. any non printables chars are now 6804 hanlded properly in the status line.. 6805 6806Mon Jan 17 18:48:54 EST 1994 - matthew green <mrg@eterna.com.au> 6807 6808 source/parse.c: 6809 fixed the level of topic changes 6810 source/server.c, source/notice.c: 6811 fixed resending away's on reconnect/changing servers. 6812 source/notify.c: 6813 made `notify -' delete all the nicks in the list. 6814 6815Sun Jan 9 22:47:09 EST 1994 - matthew green <mrg@eterna.com.au> 6816 6817 source/ctcp.c: 6818 fixed ctcp flooding so that we don't see multiple 6819 `ctcp flood from nick'. 6820 source/whois.c: 6821 added notify_mark() all for 401. 6822 source/screen.c, source/wserv.c, include/screen.h: 6823 added the ttyname stuff, but aren't using it yet. 6824 source/alias.c: 6825 fixed stupid bug in alias parsing that gave core dumps. 6826 how this lasted this long i have no idea. 6827 source/dcc.c: 6828 remove the broken-dcc-times stuff, and now we just use 6829 the anal-ultrix stuff. 6830 source/parse.c: 6831 added message_from() things for p_channel(). 6832 source/stack.c, source/stack.h: 6833 played some more. things actually compile again here, 6834 but nothing new works. 6835 68362.3.14 6837Wed Jan 5 22:43:08 EST 1994 - matthew green <mrg@eterna.com.au> 6838 6839 source/notify.c, source/notice.c, source/parse.c, source/whois.c, 6840 source/vars.c, include/config.h*, include/vars.h.proto, 6841 include/notify.h 6842 added notify_handler variable. 6843 source/irc.c: 6844 fixed bug in /wait. god, what a stupid bug. 6845 6846Sun Jan 2 02:36:11 EST 1994 - matthew green <mrg@eterna.com.au> 6847 6848 source/scandir.c: 6849 fixed for readdir_r() with solaris 2. thanks to 6850 Travis L Priest <T.L.Priest@LaRC.NASA.GOV> for this one. 6851 source/names.c: 6852 fixed sending of modes to server on rejoin. 6853 source/alias.c: 6854 fixed bug in $N where from_server != current_screen-> 6855 current_window->server. 6856 source/ctcp.c: 6857 made `ctcp time' more `date' like. 6858 source/window.c: 6859 made continued line be up to 1/2 the screen. 6860 6861Thu Dec 30 23:47:01 EST 1993 - matthew green <mrg@eterna.com.au> 6862 6863 source/unotify: 6864 updated to not show UNKNOWN crap. 6865 source/help.c: 6866 fixed set help_window. i hate help.c 6867 source/numbers.c: 6868 changed reset_nickname() etc to not have more than 6869 one `Nickname:' prompt waiting at a time. 6870 6871Wed Dec 29 01:08:13 EST 1993 - matthew green <mrg@eterna.com.au> 6872 6873 script/uhnotify: 6874 added new script to do cached userhost lookups for 6875 notify. 6876 68772.3.13 6878Tue Dec 28 03:26:13 EST 1993 - matthew green <mrg@eterna.com.au> 6879 6880 source/edit.c: 6881 userhost() - now lets any number of nick's for -cmd. 6882 configure.in: 6883 fixed lame bugs in 2.3.12 that prevented it from 6884 even compiling. 6885 68862.3.12 6887Fri Dec 24 00:50:11 EST 1993 - matthew green <mrg@eterna.com.au> 6888 6889 source/vars.c, source/whois.c, source/notify.c, source/parse.c 6890 include/vars.h.proto, include/notify.h: 6891 added notify stuff from checking join's, etc. 6892 source/help.c 6893 fixed typo-bug. 6894 source/edit.c, source/server.c: 6895 added /clear -unhold 6896 6897Wed Dec 22 23:30:15 EST 1993 - matthew green <mrg@eterna.com.au> 6898 6899 source/exec.c, configure.in, acconfig.h: 6900 finished svr3/twg patches, fixed the UNIX_MAIL stuff, 6901 finished the auto-grok signals for exec.c. 6902 69032.3.11c 69042.3.11b 6905 source/server.c: 6906 fixed all known bugs in server.c ;-) 69072.3.11a 6908Thu Dec 2 21:05:56 EST 1993 - matthew green <mrg@eterna.com.au> 6909 6910 source/server.c: 6911 added extra debugging to dgets stuff. 6912 69132.3.11 6914Thu Dec 2 01:50:31 EST 1993 - matthew green <mrg@eterna.com.au> 6915 6916 source/dcc.c, source/exec,c, source/irc.c, source/server.c 6917 source/newioc, source/screen.c: 6918 fixed lame bug's introduced in 2.3.9 that caused 6919 bogus server connections closing. 6920 69212.3.10 6922Sun Nov 28 13:15:14 EST 1993 - matthew green <mrg@eterna.com.au> 6923 6924 source/exec.c: 6925 fixed POSIX kill(-pid). 6926 6927Mon Nov 15 23:32:22 EST 1993 - matthew green <mrg@eterna.com.au> 6928 6929 source/crypt.c source/exec.c source/file.c source/help.c 6930 source/irc.c source/ircaux.c source/ircflush.c source/log.c 6931 source/mail.c source/notice.c source/parse.c source/scandir.c 6932 source/term.c include/irc.h: 6933 svr3/wollongong tcp/ip patches applied from entropy 6934 (entropy@parakeet.con.wesleyan.edu) 6935 69362.3.9 6937Mon Nov 15 00:58:56 EST 1993 - matthew green <mrg@eterna.com.au> 6938 6939 source/..: 6940 various fixes to remove the `stricmp' stuff so that 6941 ircii always uses its own `my_stricmp' 6942 source/server.c, source/parse.c, source/window.c: 6943 fixed bug where ircii wouldn't let you /server after 6944 a oper kill. removed the kludge `CLOSING_SERVER' 6945 code (oops, for got to remove the #define from server.h 6946 oh well). 6947 source/irc.c: 6948 fixed notify/clock scheluding. 6949 6950Tue Nov 2 21:17:59 EST 1993 - matthew green <mrg@eterna.com.au> 6951 6952 source/exec.c, include/irc.h: 6953 exec.c defines IN_EXEC_C so that in include/irc.h we 6954 don't include unistd.h 6955 6956 source/dcc.c, source/ircserv.c, source/ircaux.c, source/newio.c 6957 added set_socket_options() which either calls the 6958 ESIX mark_socket() thing, or sets off linger and sets 6959 keepaline and reuseaddr on. 6960 69612.3.8 6962Mon Nov 1 00:45:13 EST 1993 - matthew green <mrg@eterna.com.au> 6963 6964 source/edit.c: 6965 added /beep command which just beeps the terminal. 6966 source/edit.c, source/keys.c: 6967 added rbind command that is a reverse bind lookup. 6968 `/rbind parse_command' shows all keys bound to 6969 parse_command. 6970 source/status.c: 6971 fixed problem with alarm clock (shulick@indiana.edu) 6972 source/irc.c: 6973 handlers for SIGHUP/SIGTERM that call irc_exit(). 6974 6975Sun Oct 31 18:01:12 EST 1993 - Matthew Green <mrg@eterna.com.au> 6976 6977 source/server.c: 6978 fixed bug where primary_server was -1 and used as an 6979 index. 6980 source/vars.c, source/hook.c, source/edit.c, source/alias.c, 6981 source/keys.c, source/notice.c: 6982 changed the way /save works. you can use -bind -on 6983 -alias -digraph -set -notify to save just those types 6984 (default is all of them), and the -all switch also 6985 saves things that were generated by the global script. 6986 these are not saved by default. 6987 6988Sun Oct 31 05:10:14 EST 1993 - Matthew Green <mrg@eterna.com.au> 6989 6990 configure.in: 6991 updated for autoconf 1.7, couple of other small 6992 bugs fixed 6993 source/vars.c, include/vars.h.proto: 6994 added REALNAME varaible. 6995 69962.3.7 6997Sun Oct 24 21:47:10 EST 1993 - Matthew Green <mrg@eterna.com.au> 6998 6999 too many to remember. many bugs fixed. hide_private_channels, 7000 mode #foo +l 0, away when changing servers. on connect now has 7001 the port. added posix signals when avaliable. more real svr4 7002 support. various little bits of other peoples patches added 7003 where still needed. 7004 70052.3.6 7006Mon Oct 4 02:37:27 EST 1993 - Matthew Green <mrg@eterna.com.au> 7007 7008 source/status.c: 7009 yay!!!!!! fixed the `cursor gets lost with /window 7010 create' bug finally. added a cursor_to_display() in 7011 update_status(). 7012 source/alias.c: 7013 new funcitons pid() and ppid() (and thus function_pid() 7014 and function_ppid()). 7015 7016Sat Sep 25 20:13:38 EST 1993 - Matthew Green <mrg@eterna.com.au> 7017 7018 source/server.c: 7019 fixed the long know bug in bad link on /server. also 7020 fixed setting of closed fd to -1. 7021 7022Sun Sep 5 23:52:39 EST 1993 - Matthew Green <mrg@eterna.com.au> 7023 7024 easyinst: 7025 shell script from end to configure that also sets up 7026 the default server and default help service. 7027 source/, include/ 7028 removed `SCO' and replaced it with either `M_UNIX' or 7029 with `HAVE_SYS_UN_H'. 7030 source/dcc.c: 7031 now shows the port as well as the ip address. 7032 7033Thu Aug 26 00:09:11 EST 1993 - Matthew Green <mrg@eterna.com.au> 7034 7035 source/dcc.c, source/window.c, include/lastlog.h: 7036 fixed bugs in 2.3.3 relating to window level LOG_DCC. 7037 LOG_DCC is back in level LOG_ALL 'cause now only one 7038 window can have it at once. 7039 oh god i am so lame. fixed /dcc get bug. 7040 7041 configure.in: 7042 added tests for testing getpgrp() to grok non-posix 7043 getpgrp() regardless what <unistd.h> says. 7044 70452.3.3 7046Sun Aug 22 18:29:21 EST 1993 - Matthew Green <mrg@eterna.com.au> 7047 7048 source/, include/irc.h 7049 removed all occurances of the lame null() macro. 7050 70512.3.2 7052Sun Aug 1 02:25:21 EST 1993 - Matthew Green <mrg@eterna.com.au> 7053 7054 configure.in, source/Makefile.in, Makefile.in 7055 no longer creates source/Makefile from 7056 source/Makefile.proto, but rather configure does. we 7057 call the make in source/ with the righ aruments. 7058 source/, include/dcc.h, include/irc.h 7059 general clean up with some header files, fixed time.h 7060 and sys/time.h, netinet/in.h (thanks 386bsd for broken 7061 header files).. 7062 7063Wed Jul 28 23:39:51 EST 1993 - Matthew Green <mrg@eterna.com.au> 7064 7065 source/stack.c: 7066 fixed stack pop on <number> so that the list from the 7067 stack is actually added to the numeric list, if it was 7068 empty, currently. 7069 7070Tue Jul 27 23:59:45 EST 1993 - Matthew Green <mrg@eterna.com.au> 7071 7072 source/ctcp.c: 7073 fixed bugs in send_action() where it was sending the 7074 message as the format string, and in do_sed() where it 7075 was calling crypt_msg() with a null key. 7076 70772.3.1 7078Sat Jul 24 03:47:26 EST 1993 - Matthew Green <mrg@eterna.com.au> 7079 7080 script/dmsg 7081 added this finally.. 7082 70832.3.0 7084Sun Jul 18 04:36:04 EST 1993 - Matthew Green <mrg@eterna.com.au> 7085 7086 source/dcc.c: 7087 fixed lame bug with the dcc deadlists. 7088 source/ircaux.c: 7089 null() -=> NULL 7090 70912.3beta1.9 7092Mon Jul 12 20:43:55 EST 1993 - Matthew Green <mrg@eterna.com.au> 7093 7094 source/stack.c source/hook.c, include/stack.h: 7095 got /stack working with on's. yay 7096 configure.in, Makefile.in, acconfig.h: 7097 updated for use with autoheader, acconfig.h added for 7098 this purpose (thanks noah). defs.h is much nicer than 7099 -DBLAH all the way across the screen. 7100 source/scandir.c, configure.in: 7101 whole thing put in a #ifdef HAVE_SCANDIR, that is grokked 7102 in configure .. 7103 71042.3beta1.8 7105Sat Jul 10 13:11:48 EST 1993 - Matthew Green <mrg@eterna.com.au> 7106 7107 configure.in, Makefile.in: 7108 fiddled with, added questions for DEFAULT_SERVER and 7109 DEFAULT_HELP_SERVICE, unused so far.. 7110 source/dcc.c, source/edit.c, source/numbers.c: 7111 fixed some level things. 7112 source/edit.c: 7113 made NUMBER_OF_COMMANDS groked automatically.. 7114 71152.3beta1.7 7116Sun Jul 4 19:49:36 EST 1993 - Matthew Green <mrg@eterna.com.au> 7117 7118 NeXT port for 2.3 .. cleaned up all the .. `suggest parentheses' 7119 warnings from gcc -Wparentheses .. 7120 71212.3beta1.6 7122Thu Jul 1 23:06:14 EST 1993 - Matthew Green <matthew@valiant.vut.edu.au> 7123 7124 hpux/osf1/sgi/osx/ptx stuff for 2.3 .. 7125 71262.3beta1.2 7127Tue Jun 29 14:14:29 EST 1993 - Matthew Green <mrg@eterna.com.au> 7128 7129 .. added gnu's autoconf to ircII, it works for sunos, and mostly 7130 for sgi so far .. 7131 71322.2.9 7133Tue Jun 29 00:05:04 EST 1993 - Matthew Green <mrg@eterna.com.au> 7134 7135 source/newio.c; 7136 new_select() - once again, linux proves to be painful. 7137 previous `fixes' to this routine were lame, and leaked 7138 memory. 7139 71402.2.8 7141Sat Jun 26 14:45:10 EST 1993 - Matthew Green <mrg@eterna.com.au> 7142 7143 source/hook.c: 7144 fixed stupid bug in do_hook() which ignored the last 7145 /on in each list. 7146 71472.2.7 7148Sat Jun 26 05:15:35 EST 1993 - Matthew Green <mrg@eterna.com.au> 7149 7150 .. clean up for release .. 7151 7152Fri Jun 18 12:25:18 EST 1993 - Matthew Green <mrg@eterna.com.au> 7153 7154 .. various bugs for dynix/ptx, linux, hpux .. fixed.. general 7155 clean up for the release. 7156 7157(2.3beta1.1) 7158Sun Jun 13 01:10:07 EST 1993 - Matthew Green <mrg@eterna.com.au> 7159 7160 Wow. ircII is now under RCS. 7161 71622.2.7pre2 7163Fri Jun 11 03:44:25 EST 1993 - Matthew Green <mrg@eterna.com.au> 7164 7165 ctcp.c: 7166 do_finger() - fixed type for replies for daemon clients.. 7167 server.c: 7168 server() - fixed setting of away's, was causing core dumps, 7169 and general lossage. 7170 7171Wed Jun 9 23:30:33 EST 1993 - Matthew Green <mrg@eterna.com.au> 7172 7173 source/server.c: 7174 fixed sending AWAY's when reconnecting.. by adding the 7175 : prefix.. 7176 7177(2.3beta1.0) 7178Wed Jun 9 00:20:19 EST 1993 - Matthew Green <mrg@eterna.com.au> 7179 7180 the lot, 7181 gah, huge clean up. changed the lame alpha `port' Long 7182 stuff back to long, and started using the types for lots 7183 of things.. like time_t, etc.. 7184 created include/ and moved every header in here.. major 7185 changes to source/Makefile.proto for this.. 7186 added debug.c and debug.h.. and debug define to config.h 7187 7188Wed Jun 2 23:07:25 EST 1993 - Matthew Green <mrg@eterna.com.au> 7189 7190 source/term.c, source/irc.c: 7191 added support to reset signal handlers under ESIX. 7192 source/edit.c, source/server.h, source/server.c: 7193 made /redirect smarter about if it needs to wait on 7194 server output, by setting something in send_to_server(), 7195 that is checked after the end of the parse_line() in 7196 redirect(). 7197 source/dcc.c: 7198 fixed varoius DYNIX/ptx problems that got introduced.. 7199 source/window.c: 7200 create_additional_screen() - close() and unlink() when 7201 the create fails... 7202 7203Tue Jun 1 23:41:08 EST 1993 - Matthew Green <mrg@eterna.com.au> 7204 7205 source/term.c: 7206 term_cont() - added signal for linux.. 7207 72082.2.7pre1 7209Tue Jun 1 20:00:02 EST 1993 - Matthew Green <mrg@eterna.com.au> 7210 7211 source/vars.c, source/edit.c: 7212 Changed the way EIGHT_BIT_CHARACTERS works so that if you 7213 set it, its honoured. 7214 source/ctcp.c: 7215 fixed UTC bug. 7216 source/, Makefile. 7217 Added patch from Fuzzy to give SCO UNIX support. 7218 <adrian@cursci.co.uk> 7219 7220Sun May 30 01:36:18 EST 1993 - Matthew Green <mrg@eterna.com.au> 7221 7222 source/help.c: 7223 fixed the linux/help bug finally. not exactly sure what 7224 was wrong with it, but Veep <eric@blahrvares.er.usgs.gov> 7225 found the problem, and i fixed it. 7226 7227Fri May 28 23:10:47 EST 1993 - Matthew Green <mrg@eterna.com.au> 7228 7229 source/parse.c: 7230 p_privmsg() - fixed beep_when_away with /on msg.. 7231 7232Thu May 20 03:25:57 EST 1993 - Matthew Green <mrg@eterna.com.au> 7233 7234 source/irc.c: 7235 irc_io() - when reading from stdin (for any screen) we 7236 read up to BIG_BUFFER_SIZE chars at a time now. 7237 source/ctcp.c, source/dcc.c: 7238 added sizes to dcc send/get. 7239 source/names.c: 7240 decipher_mode() - bug with loosing track of mode string 7241 for mode's v and b (Aiken). 7242 source/alias.c: 7243 added randm(), a better random function (Sarayan) and 7244 fixed bug in function_srand() if input was an empty 7245 string. 7246 source/edit.c: 7247 load() - now allows \ at the end of a line to continue 7248 the line (Stargazer <spz@specklec.mpifr-bonn.mpg.de>) 7249 7250Tue May 18 01:20:50 EST 1993 - Matthew Green <mrg@eterna.com.au> 7251 7252 source/numbers.c: 7253 stupid stupid stupid bug in 433 handling fix. 7254 source/screen.c: 7255 over zealousness with unsigned char's removed. 7256 72572.2.6+ 7258Wed May 12 20:39:01 EST 1993 - Matthew Green <mrg@eterna.com.au> 7259 7260 source/numbers.c: 7261 fixed various bugs in the handling of some of the more 7262 important numerics. every numeric should be able to 7263 be caught in a /on now. 7264 source/notice.c: 7265 parse_server_notice() - if from is null, use the server's 7266 name as far as its concerned, if it exists (.itsname). 7267 source/screen.c: 7268 change the handling of lines that are null being written to 7269 the screen, that was causing core dumps in places. (Rogue_F) 7270 source/keys.c: 7271 write_bindings() - changed char to unsigned char. 7272 7273Fri May 7 22:54:58 EST 1993 - Matthew Green <mrg@eterna.com.au> 7274 7275 source/names.c: 7276 blah, fixed show_channel() to not assume buffer isn't 7277 changed ever. 7278 7279Thu May 6 04:41:24 EST 1993 - Matthew Green <mrg@eterna.com.au> 7280 7281 source/numbers.c, source/parse.c, source/funny.c: 7282 fixed some numerics that were in accessable from /on 7283 <num> (353 and 366), and removed the away-time from 7284 the /on msg hook. 7285 script/finger: 7286 updated so it doesn't cause core dumps on AIX (Daemon) 7287 install: 7288 updated to work with the new config.h (Daemon) 7289 7290Wed May 5 21:43:35 EST 1993 - Matthew Green <mrg@eterna.com.au> 7291 7292 source/new_io.c: 7293 new_select() - if timeout == NULL, then we bzero() the 7294 newtimeval .. stops ircserv from hanging... thanks to 7295 Kenny Zalewski <zalewk@rpi.edu> for this. 7296 72972.2.5 7298Tue May 4 17:12:03 EST 1993 - Matthew Green <mrg@eterna.com.au> 7299 7300 source/keys.h.proto, source/keys.c, source/screen.c 7301 Added new binding SCROLL_START, and new function 7302 scrollback_start() to do it. 7303 source/ircaux.c: 7304 check_nickname() - fixed bug where it was returning `s'. 7305 7306Tue May 4 02:11:02 EST 1993 - Matthew Green <mrg@eterna.com.au> 7307 7308 source/exec.c: 7309 various patches from avalon added to help speed up 7310 exec handling. 7311 7312Mon May 3 21:32:49 EST 1993 - Matthew Green <mrg@eterna.com.au> 7313 7314 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaargh. 7315 Turning bold or inverse off turns everything off. its a bug in 7316 termcap. sigh. 7317 7318Mon May 3 01:26:18 EST 1993 - Matthew Green <mrg@eterna.com.au> 7319 7320 source/irc.c: 7321 added HPUX and linux to the re-issue list for signals 7322 that are handled seeing the internal process handlers 7323 aren't always re-set properly -=> ^C making the client 7324 exit untimely. 7325 7326Sun May 2 23:06:08 EST 1993 - Matthew Green <mrg@eterna.com.au> 7327 7328 source/parse.c, source/notice.c, source/ignore.c, source/ignore.h: 7329 changed the handling of ignore_combo, introducing 7330 a new function double_ignore(). 7331 source/parse.c, source/ignore.c 7332 moved IgnoreCombo() into ingore.c from parse.c and 7333 renamed it ignore_combo() 7334 source/window.c, source/screen.c, source/dcc.c: 7335 removed netinet/in.h and arpa/inet.h includes where they 7336 existed as dcc.h includes them, and 386BSD has lame 7337 header files. 7338 source/pares.c: 7339 p_nick() - if its mynick then its shown to the current 7340 window. 7341 source/lastlog.c: 7342 lastlog() - added -literal switch. 7343 7344Sun May 2 05:03:27 EST 1993 - Matthew Green <mrg@eterna.com.au> 7345 7346 source/names.c, source/names.h: 7347 Added channels keys to the channel stuff, and it also 7348 gets shown in the mode returned. 7349 source/numbers.c: 7350 Fixed bug in 002 handling with SHOW_NUMERICS on. 7351 7352Fri Apr 30 18:48:04 EST 1993 - Matthew Green <mrg@eterna.com.au> 7353 7354 source/ircux.c: 7355 check_nickname() - rewritten, and handles things better. 7356 source/irc.c: 7357 parse_args() - we now call check_nickname() to make 7358 sure the nick given is "ok". If not, we don't start. 7359 7360Wed Apr 28 19:55:43 EST 1993 - Matthew Green <mrg@eterna.com.au> 7361 7362 source/ctcp.c: 7363 fixed bug in ctcp ping reply. 7364 source/parse.c, source/edit.c: 7365 prefixed duplicate funcion names with p_ and e_. 7366 source/screen.c: 7367 fixed lame bug in add_to_window() where the arguments 7368 to strmcat() were wrong. (wall privmsg quit channel 7369 invite nick) 7370 source/keys.c: 7371 added emacs bindings to 0x80 + b/d/f/h/^? for people 7372 with meta keys. 7373 source/keys.h: 7374 removed. wasn't used anywhere. 7375 source/dcc.c: 7376 DCC connections are now shown with the ip number, to 7377 provide a little extra security (Avalon). 7378 7379Tue Apr 27 02:33:03 EST 1993 - Matthew Green <mrg@eterna.com.au> 7380 7381 source/dcc.c: 7382 "blah". fixing put_it() et al, didn't fix the lame 7383 ultrix float bug after all. stupid ultrix. 7384 73852.2.4 7386Mon Apr 26 12:01:58 EST 1993 - Matthew Green <mrg@eterna.com.au> 7387 7388 source/ctcp.c: 7389 fixed lame bug in do_atmosphere() that was making channels 7390 leave windows because of a missing 2nd argument to 7391 is_current_channel(). 7392 73932.2.3 7394Mon Apr 26 00:42:21 EST 1993 - Matthew Green <mrg@eterna.com.au> 7395 7396 source/screen.c, source/irc.h, source/irc.c: 7397 added new global variable, char global_all_off[] that 7398 holds a string with the ALL_OFF character in it. Fixes 7399 bug with crap getting on the screen. 7400 source/Makefile.proto: 7401 Added dependancies for crypt.o. 7402 7403pre2.2.3 7404Sun Apr 25 11:17:29 EST 1993 - Matthew Green <mrg@eterna.com.au> 7405 7406 source/exec.c: 7407 fixed lameness with wait3() arguements. 7408 source/screen.c: 7409 added a `:' to the send_to_server() call when redirecting. 7410 makes it so that 2.8 servers get everything. 7411 7412Sun Apr 25 01:35:35 EST 1993 - Matthew Green <mrg@eterna.com.au> 7413 7414 source/ 7415 blah. fixed several problems in lots of stupid things 7416 i did for the release. 7417 source/screen.c, source/status.c, source/irc.h: 7418 changed bold, inverse and underline characters to 7419 ^B, ^V and ^_ respectively. wow. it makes some sense 7420 now. 7421 Makefile: 7422 Some rearrangements, and general updating. its now 7423 easier to install, or at least i hope so. 7424 config.h: 7425 several things updated, AUTO_RECONNECT removed.. 7426 74272.2.2 7428Fri Apr 23 05:44:29 EST 1993 - Matthew Green <mrg@eterna.com.au> 7429 7430 source/ 7431 fixed all of the implicit functions declartions, and 7432 several other compiler warnings. wheeeeeeeeeee. 7433 7434Thu Apr 22 14:42:07 EST 1993 - Matthew Green <mrg@eterna.com.au> 7435 7436 source/numbers.c: 7437 fixed handling of RPL_LINKS (364) so that 2.8 servers 7438 would be cool. 7439 7440Thu Apr 22 04:18:53 EST 1993 - Matthew Green <mrg@eterna.com.au> 7441 7442 source/ 7443 fixeds 1000's olf lines of warnings from gcc -Wall. 7444 7445Tue Apr 20 22:29:05 EST 1993 - Matthew Green <mrg@eterna.com.au> 7446 7447 source/term.c: 7448 fixed lame hpux bugs, got term.c back to working again. 7449 source/keys.c, source/edit.c: 7450 fixed 8-bit stuff again in edit_char(), by using 7451 unsigned char. 7452 7453pre2.2.pl12 7454Mon Apr 19 21:54:09 EST 1993 - Matthew Green <mrg@eterna.com.au> 7455 7456 source/term.c: 7457 blah. i hate sun tty drivers. we're back to sgtty. 7458 7459Sat Apr 17 21:28:42 EST 1993 - Matthew Green <mrg@eterna.com.au> 7460 7461 source/alias.c, source/alias.h, source/parse.c, source/ctcp.c, 7462 source/dcc.c, source/dcc.h, source/edit.c, source/edit.h, 7463 sourec/exec.c, source/flood.c, source/help.c, source/history.c, 7464 source/irc.c, source/irc.h, source/ircaux.c, source/log.c, 7465 source/mail.c, source/notice.c, source/scandir.c, source/server.c, 7466 source/status.c, source/whois.c, source/dcc.c.orig, source/screen.c: 7467 Added OSF/1 support. Made `long' a define, Long. 7468 source/output.c, source/ctcp.c, source/server.c, source/hook.c: 7469 put_it(), say(), yell(), send_to_server(), do_hook(), 7470 send_ctcp() and send_ctcp_notice() - changed from being 7471 `int' to `char *' being passed. Fixes several lame 7472 problems. 7473 7474Thu Apr 15 17:09:16 EST 1993 - Matthew Green <mrg@eterna.com.au> 7475 7476 source/whois.c: 7477 whois_operator() - fixed 313 reply, so that 2.8 7478 servers look cool. 7479 source/numbres.c 7480 cannot_join_channel() - now switch on -current_numeric, 7481 not current_numeric. 7482 source/term.c: 7483 Changed terminal handling from sgtty to termios for 7484 SUNOS. 7485 7486Tue Apr 13 13:39:09 EST 1993 - Matthew Green <mrg@eterna.com.au> 7487 7488 source/ctcp.c: 7489 fixed various bugs with ctcp floods, 7490 source/ 7491 fixed lots of compiler warnings, thanks to Vesa. 7492 7493pre2.2.2pl10 7494Mon Apr 12 18:39:55 EST 1993 - Matthew Green <mrg@eterna.com.au> 7495 7496 all: 7497 fixed various .h and .c files, removing a few compiler 7498 warnings. 7499 source/alias.c: 7500 changed $channels() and $servers() to $mychannels and 7501 $myservers(). 7502 source/edit.c: 7503 Added new command XTYPE [-LITERAL] <text>, function 7504 xtypecmd(). 7505 7506Mon Apr 12 03:26:44 EST 1993 - Matthew Green <mrg@eterna.com.au> 7507 7508 Makefile, source/Makefile.proto 7509 Added LEX and LEXLIB. 7510 7511Sat Apr 10 02:42:55 EST 1993 - Matthew Green <mrg@eterna.com.au> 7512 7513 source/dcc.c; 7514 close_all_dcc() - fixed bug where the list was merely 7515 being lost, not removed (so not closing fd's) 7516 7517pre2.2.2pl9 7518Fri Apr 9 02:27:26 EST 1993 - Matthew Green <mrg@eterna.com.au> 7519 7520 Makefile, source/dcc.c: 7521 Added PTX patches. 7522 source/exec.c, source/edit.c, source/screen.c: 7523 changed test_to_process() to have switch if it would 7524 call put_it() or not - fixed recusive bug with /redirectign 7525 to a process. 7526 7527Thu Apr 8 01:17:41 EST 1993 - Matthew Green <mrg@eterna.com.au> 7528 7529 source/window.c, source/server.c: 7530 Fixed /window server, and /server so that ircii would 7531 use the old port numbers. 7532 7533Wed Apr 7 13:31:23 EST 1993 - Matthew Green <mrg@eterna.com.au> 7534 7535 source/hook.c: 7536 Made save_hooks() include the serial number. 7537 source/edit.c: 7538 parse_line() - \r and \n are not treated as special from 7539 within a loaded script anymore. 7540 7541pre2.2.2pl8 7542Tue Apr 6 23:37:27 EST 1993 - Matthew Green <mrg@eterna.com.au> 7543 7544 source/history.c: 7545 Fixed history scrolling from the initial input line. 7546 source/server.c: 7547 Fixed bug in server -delete where Window->server's 7548 were left the old value. 7549 source/mail.c: 7550 Made it so mail type messages go to level CRAP. 7551 soucre/alias.c: 7552 Added poxaV's curpos patch. 7553 source/edit.c: 7554 Changed /WAIT to use unknown command, not WHOIS. 7555 7556pre2.2.2pl7 7557Tue Apr 6 01:01:46 EST 1993 - Matthew Green <mrg@eterna.com.au> 7558 7559 source/notice.c: 7560 fixed lame bug where the server version/name NOTICE was 7561 being shown twice. 7562 source/numbers.c: 7563 Added lastlog saving to all numeric messages. 7564 source/mail.c: 7565 init_mail() - fixed handling of env var MAIL where it was 7566 strcat()ing not strcpy()ing (Glenn!) 7567 source/status.c: 7568 Added Aiken's right justification patch to the status 7569 line (%>). 7570 source/screen.c, source/window.c, source/window.h: 7571 Fixed lame bug where I'd left variables in screen.c and 7572 window.c. 7573 source/?: 7574 Added various things from Lynx. 7575 7576Mon Apr 5 05:15:16 EST 1993 - Matthew Green <mrg@eterna.com.au> 7577 7578 source/numerics.c: 7579 made numerics 471 473 474 475 476 show what sort of 7580 cannot join channel they are. 7581 source/whois.c: 7582 made 313 replies (whois operator) only add the 7583 "(is an IRC operator)" if the server is < 2.8. 7584 7585Tue Mar 30 03:58:27 EST 1993 - Matthew Green <mrg@eterna.com.au> 7586 7587 source/dcc.c, Makefile: 7588 Added support for A/UX, thanks to Helen Rose for help 7589 with this (hrose@eff.org). 7590 7591pre2.2.2pl6 7592Tue Mar 30 02:02:22 EST 1993 - Matthew Green <mrg@eterna.com.au> 7593 7594 source/term.c, source/term.h: 7595 changed various things for hpux terminal emulation. .now 7596 uses sysV style (termio). Fixes problem with getting 7597 info about the terminal out of the tty. Also added 7598 support for irix. 7599 7600pre2.2.2pl5 7601Mon Mar 29 18:50:25 EST 1993 - Matthew Green <mrg@eterna.com.au> 7602 7603 source/window.c, source/window.h, source/screen.c, source/screen.h 7604 source/names.c, source/lastlog.c, source/hold.c, source/exec.c, 7605 source/translat.c, source/term.c, source/status.c, source/menu.c, 7606 source/irc.c, source/input.c, source/help.c, source/edit.c, 7607 source/alias.c 7608 window.c was split into window.c and screen.c today, and 7609 these files had various changes to fit to this. 7610 7611Mon Mar 29 01:13:30 EST 1993 - Matthew Green <mrg@eterna.com.au> 7612 7613 source/count.l, source/count.c, source/Makefile.proto: 7614 Added count.l, removed count.c, and updated Makefile.proto 7615 to use these changes. 7616 7617 source/irc.c, source/dcc.c, source/exec.c 7618 Fixed close_all_dcc(), and close_all_exec(). Added 7619 signal handlers for SIGUSR1 (sig_user1) and SIGUSR2 7620 (sig_user2). USR1 closes all dcc and exec connections, 7621 and USR2 uses setjmp()/longjmp() to break out of where 7622 it is, and start processing from irc_io() again. USR2 7623 doesn't seem to work. sigh. 7624 7625pre2.2.2pl4 7626Sat Mar 27 04:18:29 EST 1993 - Matthew Green <mrg@eterna.com.au> 7627 7628 source/edit.c: 7629 fixed lame bugs for some commands losing parameters. 7630 source/window.h, source/window.c: 7631 Fixed bugs in scroll functions where wrong lines were 7632 displayed when new lines had been added to the window. 7633 New Window element int new_scrolled_lines. 7634 source/server.c: 7635 fixed ircserv to show the real name of the program in 7636 argv[0], not "ircserv". 7637 source/edit.c: 7638 Fixed handling of literal ^J and ^M's to the way they were 7639 originally documented in UPDATES (the same as \n used to do). 7640 source/hook.c: 7641 ugh, do_hook(). added a bzero(). see comments. ha ha ha. 7642 source/lastlog.h: 7643 Added LOG_SNOTE to LOG_ALL. 7644 7645Thu Mar 25 23:58:58 EST 1993 - Matthew Green <mrg@eterna.com.au> 7646 7647 source/ctcp.c, source/parse.c: 7648 Finished the ignore ctcps and crap stuff. 7649 source/parse.c: 7650 ON PUBLIC has $1 as channel, and $2- as message. 7651 7652Thu Mar 25 02:19:04 EST 1993 - Matthew Green <mrg@eterna.com.au> 7653 7654 source/edit.c: 7655 fixed send_com() so that it would only use "%s :%s" when 7656 the argument existed. 7657 source/ignore.c, source/ignore.h: 7658 changed level from unsigned char to int, to allow more than 7659 8 level's of ignore to work. Reformatted the output .. 7660 7661Wed Mar 24 19:57:03 EST 1993 - Matthew Green <mrg@eterna.com.au> 7662 7663 source/numbers.c: 7664 Fixed motd numerics for 2.8 properly.. 7665 source/vars.h.proto, source/vars.c, config.h, config.h.lynx: 7666 Added new variable NOTIFY_LEVEL, which is used by default 7667 for new windows. 7668 source/edit.c: 7669 Fixed bug in quote(), where the arguement was being sent 7670 as the format string. Real dumb. 7671 source/ctcp.c, source/ignore.c, source/ignore.h, source/lastlog.c, 7672 source/lastlog.c: 7673 Added ignore levels CTCP and CRAP. 7674 7675Tue Mar 23 01:58:34 EST 1993 - Matthew Green <mrg@eterna.com.au> 7676 7677 source/edit.c, source/numbers.c, source/window.c, source/whois.c, 7678 source/irc.c: 7679 Changed redirect to use unknown command, and fixed some 7680 strange bugs. Some still exist with 2.8 servers. Also 7681 made all numerics work with /on <num>. Some (318 eg) 7682 didn't have hook code for it. 7683 source/input.c: 7684 Fixed lame bug in write a character to the screen. 7685 7686Mon Mar 22 02:24:43 EST 1993 - Matthew Green <mrg@eterna.com.au> 7687 7688 source/window.c, source/window.h: 7689 Added window notify levels, with /window notify_level 7690 level .. 7691 source/vars.h.proto, source/vars.c, source/window.c, source/keys.c, 7692 config.h, config.h.lynx: 7693 Added two new variables, XTERM_OPTIONS, whose value is 7694 passed to xterm, when using WINDOW CREATE, and 7695 EIGHT_BIT_CHARACTERS, which, if set, doesn't strip the 7696 8th bit off the input streams. 7697 source/alias.c, source/names.c, source/names.h, source/server.c, 7698 source/server.h: 7699 Added new functions $channels() and $servers(). 7700 7701Sun Mar 21 02:31:25 EST 1993 - Matthew Green <mrg@eterna.com.au> 7702 7703 source/edit.c: 7704 privmsg() - changed so that /msg =nick and @nick both 7705 set from_server to -1.. fixes lame level bug.. 7706 7707Sat Mar 20 02:16:34 EST 1993 - Matthew Green <mrg@eterna.com.au> 7708 7709 source/window.c: 7710 window() - made /window server make the window level 7711 ALL -DCC, not just ALL. 7712 source/numbers.c: 7713 Fixed the INFO and MOTD numerics so that they will work 7714 with the new ones from ircd 2.8-7+ .. blah .. 7715 source/newio.c: 7716 new_select() - fixed so that select() wouldn't over right 7717 the struct timeval... 7718 7719 7720Fri Mar 12 18:27:31 EST 1993 - Matthew Green <mrg@eterna.com.au> 7721 7722 source/edit.c: 7723 send_com() - wasn't prefixing the arguements with a 7724 : which meant ircd 2.8 was being lame ... For some 7725 commands, using send_comm() 7726 7727Mon Mar 8 10:22:03 EST 1993 - Matthew Green <mrg@eterna.com.au> 7728 7729 source/exec.c: 7730 fixed bug in /exec -in 7731 source/server.c: 7732 added support for /server -delete 7733 source/edit.c, source/keys.c: 7734 Added support for 8 bit input. 7735 source/irc.c: 7736 Added command line option -v, version. 7737 77382.2.1.2 7739Sun Feb 28 13:35:19 EST 1993 - Matthew Green <mrg@eterna.com.au> 7740 7741 source/whois.c: 7742 add_to_whois_queue() - finished fixing another bug in 7743 /userhost -cmd.. 7744 source/names.c: 7745 ignore() - made /IGNORE use the HIGHLIGHT_CHARACTER. 7746 reconnect_all_channels() - fixed bug from 2.2.1 7747 77482.2.1.1 7749Wed Feb 24 17:43:55 EST 1993 - Matthew Green <mrg@eterna.com.au> 7750 7751 source/whois.c: 7752 Fixed bug in /userhost. 7753 source/parse.c: 7754 Fixed bug in ON RAW_IRC. 7755 7756Tue Feb 23 18:56:54 EST 1993 - Matthew Green <mrg@eterna.com.au> 7757 7758 source/reg.c: 7759 Fixed bug in \escaping. (Troy) 7760 7761Sun Feb 21 16:36:22 EST 1993 - Matthew Green <mrg@eterna.com.au> 7762 7763 script/troy, script/killpath, script/kpstat, script/traces: 7764 Updatd scripts for 2.2.1. 7765 7766Sat Feb 20 00:36:12 EST 1993 - Matthew Green <mrg@eterna.com.au> 7767 7768 source/edit.c, source/irc.c 7769 Finally did The Right Thing (tm) with the wait key junk 7770 that help uses, and moved it from irc_io() to edit_char() 7771 where I should have put it originally. Also fixes a bug 7772 in dumb mode. 7773 7774Thu Feb 18 01:48:05 EST 1993 - Matthew Green <mrg@eterna.com.au> 7775 7776 source/window.c, source/window.h: 7777 window() - added new command LOGFILE for window logging. 7778 source/dcc.c: 7779 We now use wait_new_free() for dcc_erase(). 7780 Makefile: 7781 Removed makehelps and changed installhelp. 7782 7783Wed Feb 17 06:13:34 EST 1993 - Matthew Green <mrg@eterna.com.au> 7784 7785 source/notice.c: 7786 changed ON SERVER_NOTICE for $0 to be the server name. 7787 Changed the AIX_370 #if's to BROKEN_SCANF. 7788 source/ctcp.c: 7789 Fixed bugs in CTCP PING. 7790 source/edit.c: 7791 Fixed bugs in me() and describe(). 7792 7793Thu Feb 11 14:57:10 EST 1993 - Matthew Green <mrg@eterna.com.au> 7794 7795 source/server.c: 7796 do_server() - actually fixed the autoreconect problems 7797 when there is only one server in the server list this 7798 time. ugh. 7799 config.h, source/vars.h.proto, source/vars.c, source/parse.c 7800 Added new variable SHOW_WHO_HOPCOUNT, whoreply(). 7801 7802Wed Feb 10 19:53:32 EST 1993 - Matthew Green <mrg@eterna.com.au> 7803 7804 script/whowas 7805 New whowas script for 2.2 from Mycroft. 7806 source/ctpc.c 7807 Fixed NO_CTCP_FLOOD, changed do_errmsg() to do_echo(), 7808 and moved do_ping() to this, and added CTCP ECHO. 7809 Numerous other bugs fixes from various people. 7810 78112.2 7812Tue Feb 9 16:46:39 EST 1993 - Matthew Green <mrg@eterna.com.au> 7813 7814 source/dcc.c, source/scandir.c, source/help.c, source/edit.c: 7815 couple of bugs fixes here and there ... 7816 source/edit.c: 7817 bug in who() with -operator switch.. 7818 7819Sun Feb 7 17:35:03 EST 1993 - Matthew Green <mrg@eterna.com.au> 7820 7821 source/window.c, source/server.c, source/edit.c; 7822 Fixed away bugs.. 7823 source/window.c: 7824 update_all_status() - doesn't call traverse_all_windows() 7825 anymore, as it was calling it recusively. Should rewrite 7826 traverse_all_winodws(). 7827 source/ 7828 Support for Solaris 2 added (spot <raob@ee.mu.oz.au>) 7829 source/ 7830 Support for 386BSD added (Mycroft) 7831 7832Sun Feb 7 05:04:23 EST 1993 - Matthew Green <mrg@eterna.com.au> 7833 7834 source/alias.c: 7835 alias_currdir(), and `$W' now return the current working 7836 directory. alias_version(), and '$V' give the version 7837 (poxaV). 7838 source/alias.c: 7839 alias_current_numeric(), and `$H' now return the current 7840 numeric. 7841 source/edit.c; 7842 fixed couple of memory leaks, made `:' not a special 7843 character in command mode, as it is now the no-op command. 7844 me(), describe() and prepare_action() - changed to not 7845 add the offensive period. 7846 source/window.c: 7847 window() - fixed bugs in WINDOW SERVER and WINDOW NAME. 7848 source/help.c: 7849 help() - bit of cleaning up.. 7850 source/ctcp.c: 7851 do_version() - made it use IRCII_COMMENT if the value for 7852 CLIENT_INFORMATION is null. 7853 7854Thu Feb 4 17:59:23 EST 1993 - Matthew Green <mrg@eterna.com.au> 7855 7856 source/ 7857 Various unused variables removed, uninitialised variables 7858 initilised.. 7859 source/status.c, source/window.c, source/hook.c, source/edit.c, 7860 source/if.c: 7861 Few bug fixes here and there, and a couple of very nasty 7862 memory leaks.. thanks to jlemon.. 7863 source/hook.c: 7864 do_hook() - fixed the `Dumb mode' bug that Daemon, then 7865 recently poxaV had trouble with (Mycroft) 7866 7867Wed Feb 3 18:30:04 EST 1993 - Matthew Green <mrg@eterna.com.au> 7868 7869 source/ctcp.c, source/vars.h.proto, source/vars.c, config.h: 7870 New variable NO_CTCP_FLOOD, which when set makes ircii 7871 only send one CTCP reply per second. 7872 source/numbers.c, source/whois.c, source/names.c, source/funny.c: 7873 Changed all the numerics replies so that $0 is now the 7874 server name (if it want't already), except for ISON and 7875 USERHOST, as these are server local anyway. 7876 7877Tue Feb 2 21:40:46 EST 1993 - Matthew Green <mrg@eterna.com.au> 7878 7879 source/edit.c, source/whois.c: 7880 Removed /msg -channel as it doesn't make sense anymore. 7881 source/dcc.c: 7882 process_dcc_request() - fixed start times in dcc requests. 7883 source/status.c: 7884 status_mail() - fixed stupid bug (Mycroft). 7885 source/whois.c: 7886 no_such_nickname() - fixed so that $0 is now the server name. 7887 7888Sun Jan 31 23:33:18 EST 1993 - Matthew Green <mrg@eterna.com.au> 7889 7890 source/window.c: 7891 kill_screen() - fixed more lame bugs left for me to fix. 7892 source/term.h, source/scandir.c, source/ircflush.c: 7893 Fixed various hpux problems. 7894 Makefile, config.h, source/dcc.c, source/edit.c,source/exec.c, 7895 source/irc.c, source/irc.h, source/mail.c, source/scandir.c, 7896 source/term.c, source/hook.c: 7897 Fixed various AIX 3.1/3.2 problems. (Mycroft) 7898 7899Sat Jan 30 18:28:31 EST 1993 - Matthew Green <mrg@eterna.com.au> 7900 7901 source/edit.c, source/ctcp.c: 7902 Added CTCP PING to ircII... pingcmd() and special case 7903 handling for the reply .. convert_ping_args().. 7904 source/edit.c 7905 waitcmd() - fixed stupid bug that Troy left in the code 7906 to set up a WAIT -CMD. 7907 7908Thu Jan 28 23:37:19 EST 1993 - Matthew Green <mrg@eterna.com.au> 7909 7910 source/names.c: 7911 Fixed bug in irc -c that I broke when fixing the phone bug. 7912 7913Wed Jan 27 22:48:46 EST 1993 - Matthew Green <mrg@eterna.com.au> 7914 7915 source/window.c, source/irc.c: 7916 Changed create_additional_screen() to select on the listening 7917 socket, and timeout after 5 seconds, returning an error, 7918 rather than just calling accept(). This stops the case where 7919 the wserv process doesn't get started, and the client will 7920 hang in the accept(). Removed the force arguement from 7921 kill_screen(), and all the calls to it. 7922 7923 source/edit.c: 7924 renamed new_send_line() to sendlinecmd() so that it follows 7925 the general ircII pattern (is there such a thing ? - phone :) 7926 7927Tue Jan 26 19:03:51 EST 1993 - Matthew Green <mrg@eterna.com.au> 7928 7929 source/status.c 7930 Added poxaV's patch to put time in standard format. 7931 7932Mon Jan 25 09:14:10 EST 1993 - Brian Koehmstedt <bpk@gnu.ai.mit.edu> 7933 7934 source/crypt.c, source/dcc.c, source/exec.c, source/help.c, 7935 source/irc.c, source/ircaux.c, source/notice.c, source/scandir.c, 7936 source/term.c, source/ircflush.c: 7937 added support for Linux 7938 7939Mon Jan 25 02:52:14 EST 1993 - Matthew Green <mrg@eterna.com.au> 7940 7941 source/dcc.c, source/exec.c, source/server.c, source/window.c: 7942 added close_all_dcc(), close_all_exec() and close_all_server(), 7943 which are called from create_additional_screen(), from the 7944 forked process to close all unneeded file descriptors. 7945 create_screen() - fixed bug when create_screen() returns a 7946 screen that was marked as being !alive. 7947 Hmm, somewhere here I think I have fixed the bug with the 7948 position of the cursor, when using more than one screen. 7949 No idea if it is fixed, but I can't get it to happen. 7950 source/names.c: 7951 set_window_channel() - fixed bug when channel was NULL. 7952 7953Mon Jan 25 11:44:20 EST 1993 - Charles Hannum <mycroft@gnu.ai.mit.edu> 7954 7955 source/window.c: 7956 scroll_window() - fixed bug that deleted text from the 7957 input prompt 7958 7959Thu Jan 21 18:16:16 EST 1993 - Matthew Green <mrg@eterna.com.au> 7960 7961 source/window.c, source/dcc.c: 7962 Added flag to dcc_message_transmit(), to indicate if the 7963 hook/put_it() call should be made. Used when redirecting 7964 to a dcc chat connection, which is now possible. 7965 7966Wed Jan 20 23:41:50 EST 1993 - Matthew Green <mrg@eterna.com.au> 7967 7968 source/window.c, source/edit.c, source/whois.c, source/window.h: 7969 Changed how REDIRECT works. We now send a redirect token 7970 to the server when redirecting, not a wait token. It is in 7971 the form of #RED#nnnn where nnnn is the screen's number 7972 (internal). Redirect also is a property of the screen, not 7973 of the whole of ircII. This means that there are no more 7974 valid reasons to call irc_io() recursively. 7975 source/mysetjmp.h, source/mysetjmp.c, source/irc.c, source/alias.c, 7976 source/window.c, source/window.h: 7977 Removed all the code that was applicable to the mysetjmp() 7978 code, as there are no need for it anymore - only /WAIT and 7979 $".." call irc_io() recursively, and they can be used in 7980 other (better) ways. 7981 7982Tue Jan 19 14:05:52 EST 1993 - Matthew Green <mrg@eterna.com.au> 7983 7984 source/help.c: 7985 You guessed it.. another bug.. fixed. 7986 source/window.c; 7987 window() - fixed bugs in WINDOW SERVER. 7988 source/parse.c, source/edit.c, source/exec.c: 7989 Added doing_privmsg, which makes ircII convert all attempts 7990 to PRIVMSG from a PRIVMSG in to a NOTICE. 7991 source/parse.c, source/whois.c: 7992 Added flag to HOST and USERHOST commands. It allows a command 7993 to be executed when the the userhost (302) reply comes back 7994 from the server - userhost_cmd_returned(). 7995 source/edit.c; 7996 Added new command INPUT. Takes a ".." prompt as its first 7997 parameter, and displays this, and prompts for input that 7998 expanded, and passed to the command that is its second arg. 7999 (ie, /INPUT "prompt> " echo $*). This should be used as 8000 a replacement for $".." type variables. 8001 8002Sun Jan 17 22:01:34 EST 1993 - Matthew Green <mrg@eterna.com.au> 8003 8004 source/help.c: 8005 help_prompt() - fixed another bug.. when will it end..? 8006 source/dcc.c: 8007 register_dcc_offer() - made dcc collisions for DCC CHAT 8008 automatically connect to the other party. Impressed. 8009 source/window.h, source/window.c: 8010 Added new define in winodw.h SCROLL_AFTER_DISPLAY .. which 8011 makes the display scroll like it used to in 2.1.5. 8012 8013Sun Jan 17 01:16:37 EST 1993 - Matthew Green <mrg@eterna.com.au> 8014 8015 source/funny.c: 8016 Fixed lame bug in funny_list() which caused the wide list 8017 to be corrupted when more than 50 in it. 8018 8019Sat Jan 16 17:42:41 EST 1993 - Matthew Green <mrg@eterna.com.au> 8020 8021 source/window.c: 8022 Fixed stupid bug in window(), in the CHANNEL command. 8023 source/dcc.c: 8024 Forgot dcc get for lame ultrix - fixed. 8025 source/lastlog.c: 8026 lastlog() - made it possible to /lastlog <pattern> <count> 8027 now. 8028 source/help.c: 8029 help_me() - fixed a stupid bug that would cause help to 8030 become trapped, and unusable for that session. 8031 8032Fri Jan 15 16:26:13 EST 1993 - Matthew Green <mrg@eterna.com.au> 8033 8034 source/irc.c, source/window.c: 8035 Finally got irc_io() knowing when a socket connection to 8036 a wserv process closes, and to kill that screen, I know 8037 don't know of any pending bugs directly related to 8038 WINDOW CREATE. 8039 8040 source/irc.c, source/help.c: 8041 Got help working properly again (I think), and all the 8042 checking to make sure ircII won't get confused, etc. 8043 8044Fri Jan 15 03:07:48 EST 1993 - Matthew Green <mrg@eterna.com.au> 8045 8046 source/help.c: 8047 Added variable help_screen, that is set when we enter a 8048 help command, and is set to NULL when we exit. In help(), 8049 I made it illegal to call help from more then one screen 8050 at the same time. 8051 source/irc.c, source/window.c: 8052 Added new function is_main_screen(), and added code to 8053 irc_io() to detect if a screen is closed from something 8054 other than window delete. 8055 8056Thu Jan 14 12:37:10 EST 1993 - Matthew Green <mrg@eterna.com.au> 8057 8058 Makefile, source/Makefile.proto: 8059 Removed the INSTALL section of this, replacing it with a 8060 cp, strip, and chmod, as not all machines support install. 8061 Also added new target `everything' to the Makefile.. that 8062 does the same as `make all ircflush ircserv wserv'. 8063 8064Wed Jan 13 18:19:26 EST 1993 - Matthew Green <mrg@eterna.com.au> 8065 8066 source/alias.c, source/edit.c: 8067 Smallish revamp of the whole modules, formatting for 80 columns 8068 and smallish optimizations here and there. Could be bugs here 8069 I guess. 8070 source/crypt.c, source/ctcp.c, source/dcc.c, source/exec.c, 8071 source/flood.c, source/funny.c, source/help.c, source/history.c, 8072 source/hold.c, source/hook.c, source/if.c, source/ignore.c, 8073 source/input.c, source/irc.c, source/ircaux.c, source/ircflush.c, 8074 source/ircserv.c, source/key.c, source/lastlog.c, source/list.c, 8075 source/log.c, source/mail.c, source/menu.c, source/mysetjmp.c 8076 source/names.c, source/newio.c, source/notice.c, source/notify.c 8077 source/numbers.c, source/output.c, source/parse.c source/reg.c, 8078 source/status.c, source/server.c, source/term.c source/translat.c, 8079 source/vars.c, source/whois.c, source/window.c, source/wserv.c: 8080 reformatted for 80 columns, hopefully thats the end of the 8081 formatting saga.. :) 8082 8083Tue Jan 12 16:42:55 EST 1993 - Matthew Green <mrg@eterna.com.au> 8084 8085 source/dcc.c: 8086 Changed the call to put_it() for ultrix machines so that 8087 the floating pointers won't get garbled. 8088 source/ctcp.c, source/ctcp.h: 8089 Fixed send_ctcp_reply(), and removed Transmit_CTCP() moving 8090 the 2 lines to the only place it was called from. 8091 source/translat.c, source/term.c, source/ignore.c: 8092 reformatted. 8093 8094Mon Jan 11 16:40:14 EST 1993 - Matthew Green <mrg@eterna.com.au> 8095 8096 source/window.c: 8097 Changed window() so that the handling of HOLD_MODE called 8098 set_int_var() rather than reset_line_cnt(). Fixed a problem 8099 with /flush. 8100 8101Mon Jan 11 01:35:22 EST 1993 - Matthew Green <mrg@eterna.com.au> 8102 8103 source/lastlog.c, source/file.c, source/crypt.c, source/list.c: 8104 reformatted. 8105 8106Mon Jan 11 00:29:41 EST 1993 - Matthew Green <mrg@eterna.com.au> 8107 8108 source/names.h, source/names.c, source/window.c, source/window.h, 8109 source/edit.c, source/parse.c: 8110 Changed the handing of WINDOW CHANNEL, and JOIN so that 8111 ircII now remembers what window a channel was joined on. 8112 channel() in both parse.c and edit.c were changed, 8113 add_channel() in names.c. New function, set_channel_window() 8114 added, in names.c thats sets a channel's window, and as such, 8115 Window * added to ChannelList. This sometimes helps ircII 8116 remember what channels were on which windows, when 8117 re-connecting to a server. Sometimes. 8118 8119 source/ctcp.c, source/output.c, source/hook.h.proto, source/parse.c, 8120 source/output.h: 8121 Moved the ctcp_* functions in output.c to ctcp.c, where they 8122 belong, and also put in_on_who in hook.h.proto, and fixed 8123 those fucntions that used it. 8124 8125Sun Jan 10 10:30:20 EST 1993 - Matthew Green <mrg@eterna.com.au> 8126 8127 source/funny.c: 8128 Changed funny_list(), fixing the -TOPIC argument to the 8129 LIST command. Changed the functionality of -TOPIC so 8130 that it works *with* the other arguements, not against 8131 them. 8132 8133Sun Jan 10 09:23:43 EST 1993 - poxaV <cgw@unt.edu> 8134 8135 source/vars.h.proto, source/vars.c, source/status.c, config.h: 8136 renamed status_user() to status_user0(), and added 3 8137 new functions, status_user[123]().. New variables 8138 STATUS_USER[0-3] .. to go with the new status line 8139 functions, %X, %Y and %Z. 8140 8141Thu Jan 7 00:13:14 EST 1993 - Matthew Green <mrg@eterna.com.au> 8142 8143 source/status.c: 8144 Fixed status_oper() so that it wouldn't show 8145 if SHOW_STATUS_ALL wasn't set. 8146 8147Wed Jan 6 19:04:42 EST 1993 - Matthew Green <mrg@eterna.com.au> 8148 8149 source/funny.c: 8150 Changed funny_print_widelist() .. it now works 8151 again, I don't know when I broke it. 8152 8153Wed Jan 6 11:59:11 EST 1993 - Matthew Green <mrg@eterna.com.au> 8154 8155 source/term.c, source/wserv.c: 8156 Made the term_init() call used in wserv to set the 8157 line discipline to RAW, so I could forget about 8158 having to worry about signals, and removed the 8159 SIGINT handling from wserv.c. Hopefully this means 8160 that wserv works properly now. (thanks to Dizzy 8161 <nathan@eas.gatech.edu> for help with this). 8162 8163Wed Jan 6 00:03:00 EST 1993 - Matthew Green <mrg@eterna.com.au> 8164 8165 source/Makefile.proto: 8166 updated depandancies, and re-organised the 8167 SOURCES and OBJECTS. 8168 8169 source/timer.c, source/edit.c, source/irc.c, source/irc.h, 8170 source/mysetjmp.c, source/mysetjmp.h, source/window.c: 8171 Moved everything from timer.c into either edit.c 8172 or irc.c. Made WINDOW_CREATE define more parts 8173 out, in irc.c, mysetjmp.[ch], and window.c. 8174 8175Tue Jan 5 20:59:36 EST 1993 - Matthew Green <mrg@eterna.com.au> 8176 8177 source/exec.c: 8178 Reformatted, and new element of the process list 8179 added, server, to allow /exec -out/msg/notice 8180 to go to the right server. 8181 8182 source/newio.c: 8183 reformatted. 8184 8185Tue Jan 5 18:06:25 EST 1993 - Matthew Green <mrg@eterna.com.au> 8186 8187 source/edit.c, source/keys.c: 8188 Added new function parsekeycmd(), and new command, 8189 PARSEKEY which calls it - does the same as typing 8190 a key which is bound the the arguement. 8191 8192Tue Jan 5 17:03:04 EST 1993 - Matthew Green <mrg@eterna.com.au> 8193 8194 source/window.c: 8195 Changed window() so that the WINDOW CHANNEL 8196 command with no arguments make the current 8197 window's channel null. 8198 8199Tue Jan 5 16:15:51 EST 1993 - Matthew Green <mrg@eterna.com.au> 8200 8201 source/wserv.c: 8202 Changed got_sigint() to send the ^C down the pipe, 8203 rather than kill SIGINT the ircII process, as this 8204 was causing the ^C to be read as though it was from 8205 the main screen. 8206 8207Tue Jan 5 01:57:58 EST 1993 - Matthew Green <mrg@eterna.com.au> 8208 8209 source/edit.c: 8210 Changed new_send_line() to set the display on. 8211 8212Mon Jan 4 23:46:58 EST 1993 - Matthew Green <mrg@eterna.com.au> 8213 8214 source/vars.h.proto, source/vars.c, source/hook.c, source/edit.c, 8215 config.h: 8216 New variable INPUT_PROTECTION. Doesn't allow any 8217 ON INPUT's to be added when set. ON INPUT moved to 8218 send_line(), so that all input is caught in the hook, 8219 SENDLINE command added, that calls the new function, 8220 new_send_line, that does a simliar thing to the send_line 8221 command, except, no handling for prompts, or ON INPUT is 8222 done during this. 8223 8224Mon Jan 4 15:23:34 EST 1993 - Matthew Green <mrg@eterna.com.au> 8225 8226 hook.c: 8227 reformatted. 8228 8229Fri Jan 1 23:46:03 EST 1993 - Matthew Green <mrg@eterna.com.au> 8230 8231 *.h: 8232 Fixed all the header files, so that if included more than 8233 once, they are only parsed once. 8234