Various I/O cleanups and fixes.
[srvx.git] / ChangeLog
1 # do not edit -- automatically generated by arch changelog
2 # arch-tag: automatic-ChangeLog--srvx@srvx.net--2006/srvx--devo--1.3
3 #
4
5 2006-10-21 16:06:47 GMT Michael Poole <mdpoole@troilus.org>     patch-60
6
7     Summary:
8       Various I/O cleanups and fixes.
9     Revision:
10       srvx--devo--1.3--patch-60
11
12     src/ioset.c (ioset_add): Set FD_CLOEXEC flag on all managed sockets.
13       (ioset_try_write): Tidy formatting.
14       (ioset_close): Add another bit to "os_close".
15     
16     src/proto-common.c (close_socket): Pass the new bit to ioset_close().
17
18     modified files:
19      ChangeLog src/ioset.c src/proto-common.c
20
21
22 2006-10-21 16:04:19 GMT Michael Poole <mdpoole@troilus.org>     patch-59
23
24     Summary:
25       Add 'tell' command; update copyright message.
26     Revision:
27       srvx--devo--1.3--patch-59
28
29     src/modcmd.c (cmd_version): Update copyright years.  Move the multi-line
30         credits to a separate message and make it actually send properly.
31       (cmd_tell): New command.
32       (modcmd_init): Register cmd_tell.
33
34     modified files:
35      ChangeLog src/modcmd.c
36
37
38 2006-10-07 00:03:52 GMT Michael Poole <mdpoole@troilus.org>     patch-58
39
40     Summary:
41       Fix a (tiny) memory leak in mod-sockcheck.c.
42     Revision:
43       srvx--devo--1.3--patch-58
44
45     src/mod-sockcheck.c (sockcheck_begin_test): Make io_fd assignment
46         clearer.
47       (sockcheck_read_conf): Free the addrinfo we get.
48
49     modified files:
50      ChangeLog src/mod-sockcheck.c
51
52
53 2006-10-06 23:18:58 GMT Michael Poole <mdpoole@troilus.org>     patch-57
54
55     Summary:
56       Fix sending P10 bursts with many bans.
57     Revision:
58       srvx--devo--1.3--patch-57
59
60     src/proto-p10.c (irc_burst): Only send modes and user list once.
61
62     modified files:
63      ChangeLog src/proto-p10.c
64
65
66 2006-10-06 23:16:58 GMT Michael Poole <mdpoole@troilus.org>     patch-56
67
68     Summary:
69       Remove "wants_reads" field from struct io_fd.
70     Revision:
71       srvx--devo--1.3--patch-56
72
73     Everybody wants read information, so give it to them!
74     
75     src/ioset-epoll.c (ioset_epoll_events): Make EPOLLIN unconditional.
76     
77     src/ioset-impl.h (fd_wants_reads): Delete.
78     
79     src/ioset-select.c (ioset_select_loop): Unconditionally set read bit for fd.
80     
81     src/ioset.c (ioset_add): Add fd to engine after marking it non-blocking.
82       (ioset_buffered_reads): Remove check for fd->wants_reads.
83     
84     src/ioset.h (struct io_fd): Delete "wants_reads" field.
85     
86     src/mod-qserver.c (qserver_readable): Add missing newline.
87       (qserver_accept): Delete assignment to fd->wants_reads.
88     
89     src/mod-sockcheck.c (sockcheck_connected): Delete assignment to
90         fd->wants_reads.
91     
92     src/proto-common.c (create_socket_client): Delete assignment to
93         fd->wants_reads.
94
95     modified files:
96      ChangeLog src/ioset-epoll.c src/ioset-impl.h
97      src/ioset-select.c src/ioset.c src/ioset.h src/mod-qserver.c
98      src/mod-sockcheck.c src/proto-common.c
99
100
101 2006-10-06 23:12:20 GMT Michael Poole <mdpoole@troilus.org>     patch-55
102
103     Summary:
104       Fix detection of gettimeofday().
105     Revision:
106       srvx--devo--1.3--patch-55
107
108     configure.in: Since we have a fallback for gettimeofday, move it in with
109         the functions for which we do.
110
111     modified files:
112      ChangeLog configure.in
113
114
115 2006-10-04 01:41:05 GMT Michael Poole <mdpoole@troilus.org>     patch-54
116
117     Summary:
118       Make timeq_init() automatic.
119     Revision:
120       srvx--devo--1.3--patch-54
121
122     src/main.c (main): Remove call to timeq_init().
123     
124     src/timeq.h (timeq_init): Remove declaration.
125     
126     src/timeq.c (timeq_cleanup): Assign NULL to timeq to handle late timeq_del() calls.
127       (timeq_init): Make static.
128       (timeq_next): If timeq is NULL, return a large positive number.
129       (timeq_add): If timeq is NULL, initialize it.
130       (timeq_del): If timeq is NULL, do nothing.
131
132     modified files:
133      ChangeLog src/main.c src/timeq.c src/timeq.h
134
135
136 2006-10-04 01:37:40 GMT Michael Poole <mdpoole@troilus.org>     patch-53
137
138     Summary:
139       Allow log_module() to NULL log types.
140     Revision:
141       srvx--devo--1.3--patch-53
142
143     src/log.c (log_module): To make cleanup easier, allow NULL log types.
144
145     modified files:
146      ChangeLog src/log.c
147
148
149 2006-10-04 01:32:57 GMT Michael Poole <mdpoole@troilus.org>     patch-52
150
151     Summary:
152       Fix some startup-related glitches.
153     Revision:
154       srvx--devo--1.3--patch-52
155
156     src/ioset.h (ioset_update): Declare new function.
157     
158     src/ioset.c (ioset_init): If we have an engine, return early.
159       (ioset_add): If no engine, try to initialize.
160       (ioset_update): New function.
161
162     modified files:
163      ChangeLog src/ioset.c src/ioset.h
164
165
166 2006-10-04 01:23:10 GMT Michael Poole <mdpoole@troilus.org>     patch-51
167
168     Summary:
169       Update time for ioset backend.
170     Revision:
171       srvx--devo--1.3--patch-51
172
173     src/ioset-epoll.c (ioset_epoll_loop): Set now after epoll_wait() returns.
174
175     modified files:
176      ChangeLog src/ioset-epoll.c
177
178
179 2006-10-03 23:18:25 GMT Michael Poole <mdpoole@troilus.org>     patch-50
180
181     Summary:
182       I18n'ize the staff descriptors in !access.
183     Revision:
184       srvx--devo--1.3--patch-50
185
186     src/chanserv.c (msgtab): Add new entries for staff descriptors.
187       (cmd_access): Use them.
188
189     modified files:
190      ChangeLog src/chanserv.c
191
192
193 2006-09-23 01:14:35 GMT Michael Poole <mdpoole@troilus.org>     patch-49
194
195     Summary:
196       ioset event handling fixups
197     Revision:
198       srvx--devo--1.3--patch-49
199
200     src/ioset.c (ioset_connect): Properly handle the situation if the connect
201         handler closes the fd.
202       (ioset_accept): Rename "old_active_fd" to "old_active" for consistency.
203       (ioset_buffered_read): Make sure we bail if the fd is closed.
204       (ioset_events): Handle 'readable' on a connecting fd as an error.
205
206     modified files:
207      ChangeLog src/ioset.c
208
209
210 2006-09-23 01:03:08 GMT Michael Poole <mdpoole@troilus.org>     patch-48
211
212     Summary:
213       Dummy handling fixes.
214     Revision:
215       srvx--devo--1.3--patch-48
216
217     src/proto-p10.c (irc_notice): Fix the conditions for sending message to
218         IRC.
219       (irc_privmsg): Likewise.
220       (parse_cleanup): Zero num_*_funcs when freeing the corresponding
221         arrays, so that DelUser() doesn't read after free.
222
223     modified files:
224      ChangeLog src/proto-p10.c
225
226
227 2006-09-23 00:58:27 GMT Michael Poole <mdpoole@troilus.org>     patch-47
228
229     Summary:
230       Fix hostmask generation for hostnames without dots.
231     Revision:
232       srvx--devo--1.3--patch-47
233
234     src/proto-common.c (generate_hostmask): Keep no-dot hostnames as the
235         mask -- mod-qserver can generate hostnames like "localhost".
236
237     modified files:
238      ChangeLog src/proto-common.c
239
240
241 2006-09-23 00:55:02 GMT Michael Poole <mdpoole@troilus.org>     patch-46
242
243     Summary:
244       Default qserver clients to being opers.
245     Revision:
246       srvx--devo--1.3--patch-46
247
248     src/mod-qserver.c (qserver_accept): Default dummy client to having
249         usermode +o, so they can use privileged services.
250
251     modified files:
252      ChangeLog src/mod-qserver.c
253
254
255 2006-09-23 00:52:48 GMT Michael Poole <mdpoole@troilus.org>     patch-45
256
257     Summary:
258       Further giveownership confirmation fixes.
259     Revision:
260       srvx--devo--1.3--patch-45
261
262     src/chanserv.c (CSMSG_CONFIRM_GIVEOWNERSHIP): Prepend * to account name.
263       (cmd_giveownership): Check invoker access to determine need for confirmation.
264
265     modified files:
266      ChangeLog src/chanserv.c
267
268
269 2006-09-22 03:33:25 GMT Michael Poole <mdpoole@troilus.org>     patch-44
270
271     Summary:
272       Fix comment about +O vs +o.
273     Revision:
274       srvx--devo--1.3--patch-44
275
276     src/hash.h (FLAGS_OPER): The user mode is actually +o, not +O.
277
278     modified files:
279      ChangeLog src/hash.h
280
281
282 2006-09-22 03:28:08 GMT Michael Poole <mdpoole@troilus.org>     patch-43
283
284     Summary:
285       Fix license notice for mod-qserver.c
286     Revision:
287       srvx--devo--1.3--patch-43
288
289     src/mod-qserver.c: Since this was for public distribution, use the
290         standard GPL header notice.
291
292     modified files:
293      ChangeLog src/mod-qserver.c
294
295
296 2006-09-22 03:05:54 GMT Michael Poole <mdpoole@troilus.org>     patch-42
297
298     Summary:
299       Add win32 specific files to tarballs.
300     Revision:
301       srvx--devo--1.3--patch-42
302
303     Makefile.am (EXTRA_DIST): Include Makefile.win32.
304     
305     src/Makefile.am (EXTRA_srvx_SOURCES): Include config.h.win32 and ioset-win32.c.
306
307     modified files:
308      ChangeLog Makefile.am src/Makefile.am
309
310
311 2006-09-22 03:02:07 GMT Michael Poole <mdpoole@troilus.org>     patch-41
312
313     Summary:
314       First pass at native Win32 support (does not compile).
315     Revision:
316       srvx--devo--1.3--patch-41
317
318     src/compat.h: Handle Windows Sockets 2 headers.
319     
320     src/mod-memoserv.c (KEY_READ): #undef'ine to avoid its registry access
321         meaning on Windows.
322     
323     Makefile.win32: New Makefile for native or cross builds targeting Win32.
324     
325     src/config.h.win32: Pregenerated config.h for Win32.
326     
327     src/ioset-win32.c: First attempt at a Win32 ioset backend.
328
329     new files:
330      .arch-ids/Makefile.win32.id Makefile.win32
331      src/.arch-ids/config.h.win32.id src/.arch-ids/ioset-win32.c.id
332      src/config.h.win32 src/ioset-win32.c
333
334     modified files:
335      ChangeLog src/compat.h src/mod-memoserv.c
336
337
338 2006-09-22 02:51:50 GMT Michael Poole <mdpoole@troilus.org>     patch-40
339
340     Summary:
341       Add direct query server module.
342     Revision:
343       srvx--devo--1.3--patch-40
344
345     srvx.conf.example: Document qserver configuration.
346     
347     src/Makefile.am (EXTRA_srvx_SOURCES): Add mod-qserver.c.
348     
349     src/mod-qserver.c: New file.
350
351     new files:
352      src/.arch-ids/mod-qserver.c.id src/mod-qserver.c
353
354     modified files:
355      ChangeLog src/Makefile.am src/ioset-epoll.c srvx.conf.example
356
357
358 2006-09-22 02:45:20 GMT Michael Poole <mdpoole@troilus.org>     patch-39
359
360     Summary:
361       Add epoll_* ioset backend.
362     Revision:
363       srvx--devo--1.3--patch-39
364
365     configure.in: Check for epoll_create(); demote select() from being required.
366     
367     src/Makefile.am (EXTRA_srvx_SOURCES): Add ioset-epoll.c.
368     
369     src/ioset-epoll.c: New file.
370
371     new files:
372      src/.arch-ids/ioset-epoll.c.id src/ioset-epoll.c
373
374     modified files:
375      ChangeLog configure.in src/Makefile.am
376
377
378 2006-09-22 02:38:21 GMT Michael Poole <mdpoole@troilus.org>     patch-38
379
380     Summary:
381       Allow multiple ioset backends.
382     Revision:
383       srvx--devo--1.3--patch-38
384
385     configure.in: Add framework to check for ioset backends.
386     
387     src/Makefile.am (noinst_DATA): Reorganize for easier patching.
388       (checkversion): Avoid spurious error message if $(GNU_ARCH) is missing.
389       (EXTRA_srvx_SOURCES): Reorganize for easier patching; add ioset-select.c.
390       (srvx_SOURCES): Add ioset-impl.h.
391     
392     src/ioset.c (ioset.h): #include "ioset-impl.h" instead.
393       (clock_skew): Make non-static for backends.
394       (engine): New variable.
395       (active_fd): New variable (kind of kludgy).
396       (io_engine_*): New variables, only one exists so far.
397       (ioset_init): New function.
398       (ioset_cleanup): Call engine's cleanup function.
399       (ioset_add): Call engine's add function.
400       (ioset_listen): New function.
401       (ioset_connect): Call engine's update functions at appropriate points.
402       (ioset_try_write): Call engine's update function on success.
403       (ioset_close): Change signature; check against active_fd; call engine's
404         remove function.
405       (ioset_accept): New function.
406       (ioset_buffered_read): Update fd->state instead of fd->eof and call
407         engine's update function as appropriate.  Use active_fd.
408       (ioset_line_read): Check fd->state instead of fd->eof.
409       (debug_fdsets): Move to ioset-select.c.
410       (ioset_events): New function.
411       (ioset_run): Move most of the logic into ioset-select loop function;
412         call it.  Rename "select_timeout" to "timeout" to match.
413       (ioset_write): Call engine->update function.
414       (ioset_printf): New function.
415     
416     src/ioset.h (common.h): #include this header to get PRINTF_LIKE macro.
417       (struct io_fd): Replace 'connected' and 'eof' fields with 'state' field.
418       (ioset_init): Declare new function.
419       (ioset_listen): Declare new function.
420       (ioset_printf): Declare new function.
421       (ioset_close): Update signature.
422     
423     src/main.c (main): Call ioset_init().
424     
425     src/mod-sockcheck.c (sockcheck_free_client): Can unconditionally call
426         ioset_close() now.
427       (expand_var): Always use C99 type names.
428       (sockcheck_begin_test): Can unconditionally call ioset_close() now.
429       (sockcheck_read_conf): Only warn about unknown host if the user set
430         one; it is silly to arn about unknown host `(null)'.
431     
432     src/proto-common.c (socket_destroyed): Check fd->state rather than
433         fd->eof.
434       (close_socket): Update signature for ioset_close().
435
436     new files:
437      src/.arch-ids/ioset-impl.h.id src/.arch-ids/ioset-select.c.id
438      src/ioset-impl.h src/ioset-select.c
439
440     modified files:
441      ChangeLog configure.in src/Makefile.am src/ioset.c src/ioset.h
442      src/main.c src/mod-sockcheck.c src/proto-common.c
443
444
445 2006-09-22 02:15:55 GMT Michael Poole <mdpoole@troilus.org>     patch-37
446
447     Summary:
448       Add "dummy client" support.
449     Revision:
450       srvx--devo--1.3--patch-37
451
452     src/hash.h (FLAGS_DUMMY): New flag for non-propagated clients.
453       (IsDummy): Check it.
454     
455     src/helpfile.c (send_message): Allow sending to dummy clients.
456       (send_message_type): Likewise.
457     
458     src/proto-bahamut.c (irc_user): Bail if user is NULL or has a dummy nickname.
459       (deliver_to_dummy): New function.
460       (irc_privmsg): Try to deliver via dummy method before sending to IRC.
461       (irc_notice): Likewise.
462       (irc_notice_user): Likewise.
463       (AddUser): If the first user mode character is '*', mark as a dummy.
464       (DelUser): Unregister callback functions when destroying local clients.
465     
466     src/proto-p10.c (irc_user): Bail if user is NULL or has a dummy nickname.
467       (deliver_to_dummy): New function.
468       (irc_notice): Try to deliver via dummy method before sending to IRC.
469       (irc_notice_user): Likewise.
470       (irc_privmsg): Likewise.
471       (AddUser): If the first user mode character is '*', mark as a dummy.
472       (DelUser): Unregister callback functions when destroying local clients.
473
474     modified files:
475      ChangeLog src/hash.h src/helpfile.c src/proto-bahamut.c
476      src/proto-p10.c
477
478
479 2006-09-22 01:56:07 GMT Michael Poole <mdpoole@troilus.org>     patch-36
480
481     Summary:
482       Delete obsolete and non-propagated user modes.
483     Revision:
484       srvx--devo--1.3--patch-36
485
486     src/hash.h (FLAGS_LOCOP): Delete.
487       (FLAGS_SERVNOTICE): Delete.
488       (FLAGS_HELPER): Delete.
489       (IsServNotice): Delete.
490       (IsHelperIrcu): Delete.
491     
492     src/opserv.c (cmd_whois): Remove IsServNotice() or IsHelperIrcu().
493     
494     src/proto-bahamut.c (mod_usermode): Do not handle +O/+s/+h, we never see them.
495     
496     src/proto-p10.c (irc_user): Do not emit +s or +h, we never set them..
497       (mod_usermode): Do not handle +O/+s/+h, we never see them.
498
499     modified files:
500      ChangeLog src/hash.h src/opserv.c src/proto-bahamut.c
501      src/proto-p10.c
502
503
504 2006-09-22 01:48:00 GMT Michael Poole <mdpoole@troilus.org>     patch-35
505
506     Summary:
507       Merge AddService(), AddClone() into AddLocalUser()
508     Revision:
509       srvx--devo--1.3--patch-35
510
511     src/chanserv.c (init_chanserv): Convert AddService() call to AddLocalUser().
512     
513     src/global.c (init_global): Likewise.
514     
515     src/mod-helpserv.c (register_helpserv): Likewise.
516     
517     src/modcmd.c (cmd_service_add): Likewise.
518       (modcmd_load_bots): Likewise.
519     
520     src/nickserv.c (regex.h): Fall back to rxposix.h from local rx package.
521       (init_nickserv): Convert AddService() call to AddLocalUser().
522     
523     src/opserv.c (opserv_add_reserve): Convert AddClone() call to AddLocalUser().
524       (cmd_clone): Likewise.
525       (add_reserved): Likewise.
526       (init_opserv): Convert AddService() call to AddLocalUser().
527     
528     src/proto-bahamut.c (AddService): Convert into AddLocalUser().
529       (AddClone): Delete.
530     
531     src/proto-p10.c (AddService): Convert into AddLocalUser().
532       (AddClone): Delete.
533     
534     src/proto.h (AddService): Convert into AddLocalUser().
535       (AddClone): Delete.
536
537     modified files:
538      ChangeLog src/chanserv.c src/global.c src/mod-helpserv.c
539      src/modcmd.c src/nickserv.c src/opserv.c src/proto-bahamut.c
540      src/proto-p10.c src/proto.h
541
542
543 2006-09-22 01:35:03 GMT Michael Poole <mdpoole@troilus.org>     patch-34
544
545     Summary:
546       Make IRC message handler 'text' const.
547     Revision:
548       srvx--devo--1.3--patch-34
549
550     src/chanserv.c (chanserv_ctcp_check): Make 'text' parameter const.
551     
552     src/mod-helpserv.c (helpserv_usermsg): Likewise.
553       (helpserv_botmsg): Likewise.
554     
555     src/modcmd.c (svccmd_invoke): Likewise.
556       (modcmd_privmsg): Likewise.
557       (modcmd_chanmsg): Likewise.
558     
559     src/modcmd.h (SVCMSG_HOOK): Likewise.
560     
561     src/proto.h (chanmsg_func_t): Likewise.
562       (privmsg_func_t): Likewise.
563
564     modified files:
565      ChangeLog src/chanserv.c src/mod-helpserv.c src/modcmd.c
566      src/modcmd.h src/proto.h
567
568
569 2006-09-22 01:23:43 GMT Michael Poole <mdpoole@troilus.org>     patch-33
570
571     Summary:
572       Add autogen.sh to distribution tarball.
573     Revision:
574       srvx--devo--1.3--patch-33
575
576     Makefile.am: Add autogen.sh to the "extra" distributed files.
577
578     modified files:
579      ChangeLog Makefile.am
580
581
582 2006-09-11 01:03:14 GMT Michael Poole <mdpoole@troilus.org>     patch-32
583
584     Summary:
585       Support and use G-line lastmod timestamp.
586     Revision:
587       srvx--devo--1.3--patch-32
588
589     src/gline.c (KEY_LASTMOD): New key string.
590       (gline_add): Use new parameter to set lastmod.
591       (gline_add_record): Look for KEY_LASTMOD values.
592       (gline_write_entry): Set KEY_LASTMOD if lastmod is set.
593       (gline_discrim_create): Allow specification of lastmod criteria.
594       (gline_discrim_match): Check lastmod if appropriate.
595     
596     src/gline.h (struct gline): Add lastmod field.
597       (struct gline_discrim): Add lastmod fields.
598       (gline_add): New parameter.
599     
600     src/mod-sockcheck.c (sockcheck_issue_gline): Set lastmod.
601     
602     src/opserv.c (OSMSG_NO_GLINE): New format string.
603       (opserv_block): Set lastmod.
604       (cmd_gline): Set lastmod.
605       (cmd_stats_glines): Allow searching for a particular G-line (just like
606         gtrace).
607       (opserv_new_user_check): Set lastmod.
608       (gtrace_print_func): Use intervals rather than fixed dates and show
609         lastmod.
610     
611     src/opserv.help (GTRACE CRITERIA): Mention lastmod criteria.
612     
613     src/proto-p10.c (irc_gline): Send lastmod if it is set.
614       (cmd_num_gline): Parse out lastmod if it is set.
615       (cmd_gline): Parse out lastmod if it is set.
616
617     modified files:
618      ChangeLog src/gline.c src/gline.h src/mod-sockcheck.c
619      src/opserv.c src/opserv.help src/proto-p10.c
620
621
622 2006-09-09 21:37:28 GMT Michael Poole <mdpoole@troilus.org>     patch-31
623
624     Summary:
625       Network event handler fixup when ChanServ is disabled.
626     Revision:
627       srvx--devo--1.3--patch-31
628
629     src/chanserv.c (init_chanserv): Do not register network event handlers if
630         ChanServ is disabled.
631
632     modified files:
633      ChangeLog src/chanserv.c
634
635
636 2006-09-03 15:24:48 GMT Michael Poole <mdpoole@troilus.org>     patch-30
637
638     Summary:
639       Make srvx compile on cygwin again.
640     Revision:
641       srvx--devo--1.3--patch-30
642
643     configure.in (AC_CHECK_HEADERS): Look for <arpa/inet.h>.
644       (AC_CHECK_FUNCS): Look for inet_aton().
645     
646     src/compat.c: Try to include <arpa/inet.h> so we get inet_addr().
647       (getaddrinfo): If inet_aton() is not provided, use inet_addr() instead.
648     
649     src/compat.h (AI_NUMERICHOST): Define this too.
650     
651     src/tools.c (irc_pton): Use the pedantically correct type for ip4.
652
653     modified files:
654      ChangeLog configure.in src/compat.c src/compat.h src/tools.c
655
656
657 2006-09-03 15:21:10 GMT Michael Poole <mdpoole@troilus.org>     patch-29
658
659     Summary:
660       DelChannelUser call and semantic fixups
661     Revision:
662       srvx--devo--1.3--patch-29
663
664     src/hash.c (DelChannel): Fix type of 'reason' arg to DelChannelUser().
665       (DelChannelUser): Only send part message if user is local.
666     
667     src/proto-bahamut.c (DelUser): Unswap arguments to DelChannelUser().
668       (cmd_part): Move to proto-common.c.
669     
670     src/proto-common.c (part_desc): New structure type.
671       (part_helper): Use it to capture user and reason.
672       (cmd_part): New common function.
673     
674     src/proto-p10.c (cmd_part): Move to proto-common.c.
675       (DelUser): Unswap arguments to DelChannelUser().
676
677     modified files:
678      ChangeLog src/hash.c src/proto-bahamut.c src/proto-common.c
679      src/proto-p10.c
680
681
682 2006-09-03 15:17:05 GMT Michael Poole <mdpoole@troilus.org>     patch-28
683
684     Summary:
685       Do not try to moderate join-flood channels with no OpServ.
686     Revision:
687       srvx--devo--1.3--patch-28
688
689     src/opserv.c (opserv_join_check): As feigling points out, it is bad for a
690         service that does not exist to join a channel and hack modes.
691
692     modified files:
693      ChangeLog src/opserv.c
694
695
696 2006-09-03 15:13:31 GMT Michael Poole <mdpoole@troilus.org>     patch-27
697
698     Summary:
699       Fix ounregnick access check.
700     Revision:
701       srvx--devo--1.3--patch-27
702
703     src/nickserv.c (cmd_ounregnick): Use the standard rank-checking function.
704
705     modified files:
706      ChangeLog src/nickserv.c
707
708
709 2006-09-03 15:11:29 GMT Michael Poole <mdpoole@troilus.org>     patch-26
710
711     Summary:
712       Fix giveownership to how it should be
713     Revision:
714       srvx--devo--1.3--patch-26
715
716     src/chanserv.c (cmd_giveownership): Only require confirmation code if the
717       user has real (normal) access and is not forcing the giveownership.
718
719     modified files:
720      ChangeLog
721
722
723 2006-09-03 15:10:58 GMT Michael Poole <mdpoole@troilus.org>     patch-25
724
725     Summary:
726       Fix giveownership to how it should be
727     Revision:
728       srvx--devo--1.3--patch-25
729
730     src/chanserv.c (cmd_giveownership): Only require confirmation code if the
731       user has real (normal) access and is not forcing the giveownership.
732
733     modified files:
734      ChangeLog src/chanserv.c
735
736
737 2006-08-19 13:31:08 GMT Michael Poole <mdpoole@troilus.org>     patch-24
738
739     Summary:
740       Mark channels as visited when high-level users leave.
741     Revision:
742       srvx--devo--1.3--patch-24
743
744     src/chanserv.c (handle_part): At ThiefMaster's suggestion, update a
745       channel's visited time when a high-level user leaves (parts, gets
746       kicked, or quits).
747
748     modified files:
749      ChangeLog src/chanserv.c
750
751
752 2006-08-07 03:11:10 GMT Michael Poole <mdpoole@troilus.org>     patch-23
753
754     Summary:
755       Require confirmation cookie for giveownership.
756     Revision:
757       srvx--devo--1.3--patch-23
758
759     src/chanserv.c (CSMSG_CONFIRM_GIVEOWNERSHIP): New translation string.
760       (cmd_giveownership): Fail for non-force unconfirmed giveownerships.
761
762     modified files:
763      ChangeLog src/chanserv.c
764
765
766 2006-07-29 01:36:39 GMT Michael Poole <mdpoole@troilus.org>     patch-22
767
768     Summary:
769       Add CSMSG_INVALID_CFLAG string.
770     Revision:
771       srvx--devo--1.3--patch-22
772
773     src/chanserv.c (msgtab): Add entry for "CSMSG_INVALID_CFLAG".
774
775     modified files:
776      ChangeLog src/chanserv.c
777
778
779 2006-07-29 01:34:17 GMT Michael Poole <mdpoole@troilus.org>     patch-21
780
781     Summary:
782       Fix ?csearch max timestamp default value.
783     Revision:
784       srvx--devo--1.3--patch-21
785
786     src/opserv.c (opserv_cdiscrim_create): Fix default value for max_ts.
787         (With an expression only a coder could love.  Improvements wanted.)
788
789     modified files:
790      ChangeLog src/opserv.c
791
792
793 2006-07-18 03:13:31 GMT Michael Poole <mdpoole@troilus.org>     patch-20
794
795     Summary:
796       Update arch-inventory files for in-tree builds.
797     Revision:
798       srvx--devo--1.3--patch-20
799
800     .arch-inventory: Add "libtool" as a preserved file.
801     
802     src/.arch-inventory: Add ".libs" as a preserved directory.  Put a \
803         before the . in .cvsignore to avoid capturing too much.
804
805     modified files:
806      .arch-inventory ChangeLog src/.arch-inventory
807
808
809 2006-07-18 02:48:32 GMT Michael Poole <mdpoole@troilus.org>     patch-19
810
811     Summary:
812       Make !bans searching more flexible
813     Revision:
814       srvx--devo--1.3--patch-19
815
816     src/chanserv.c (cmd_bans): Allow specifying a complete hostmask or a
817         nickname when searching bans.
818     
819     src/chanserv.help (BANS): Document the searching functions.
820
821     modified files:
822      ChangeLog src/chanserv.c src/chanserv.help
823
824
825 2006-07-18 01:49:56 GMT Michael Poole <mdpoole@troilus.org>     patch-18
826
827     Summary:
828       Simplify cdiscrim_match() max tests.
829     Revision:
830       srvx--devo--1.3--patch-18
831
832     src/opserv.c (opserv_cdiscrim_create): Explicitly initialize max_users
833         and max_ts.
834       (cdiscrim_match): Simplify the bounds tests for timestamp and users.
835
836     modified files:
837      ChangeLog src/opserv.c
838
839
840 2006-07-18 01:46:10 GMT Michael Poole <mdpoole@troilus.org>     patch-17
841
842     Summary:
843       Fix reclaim KILL behavior.
844     Revision:
845       srvx--devo--1.3--patch-17
846
847     src/nickserv.c (nickserv_reclaim): Use DelUser() instead of irc_kill(),
848         so that srvx's databases are appropriately updated.
849
850     modified files:
851      ChangeLog src/nickserv.c
852
853
854 2006-07-18 01:12:16 GMT Michael Poole <mdpoole@troilus.org>     patch-16
855
856     Summary:
857       Fix typo in English error message text.
858     Revision:
859       srvx--devo--1.3--patch-16
860
861     src/chanserv.c (CSMSG_TOPICMASK_CONFLICT2): Add missing "is".  Reported
862       by Harm, by way of Byte.
863
864     modified files:
865      ChangeLog src/chanserv.c
866
867
868 2006-05-14 02:54:24 GMT Michael Poole <mdpoole@troilus.org>     patch-15
869
870     Summary:
871       Update version tag for 1.3.1 release.
872     Revision:
873       srvx--devo--1.3--patch-15
874
875     configure.in: Update version tag for 1.3.1 release.
876
877     modified files:
878      ChangeLog configure.in
879
880
881 2006-05-02 02:46:39 GMT Michael Poole <mdpoole@troilus.org>     patch-14
882
883     Summary:
884       Make some ChanServ ban checks see through hidden hosts.
885     Revision:
886       srvx--devo--1.3--patch-14
887
888     src/chanserv.c (handle_join): Make this function see through hidden
889         hosts when matching users against bans.  Add comment before the
890         non-burst section; remove a redundant burst check there.
891       (handle_auth): See through hidden hosts when checking against active
892         bans.  Inactive ban check keeps MATCH_VISIBLE since bans on the true
893         hostname should have already been applied.
894       (handle_nick_change): Same as handle_auth.
895
896     modified files:
897      ChangeLog src/chanserv.c
898
899
900 2006-04-29 03:11:35 GMT Michael Poole <mdpoole@troilus.org>     patch-13
901
902     Summary:
903       Fix visible matching for fake and +x-hidden hosts.
904     Revision:
905       srvx--devo--1.3--patch-13
906
907     src/tools.c (user_matches_glob): Use correct test to determine whether
908         the user's host is hidden.
909
910     modified files:
911      ChangeLog src/tools.c
912
913
914 2006-04-07 00:56:38 GMT Michael Poole <mdpoole@troilus.org>     patch-12
915
916     Summary:
917       Fix a +o mode parsing error.
918     Revision:
919       srvx--devo--1.3--patch-12
920
921     src/proto-p10.c (mod_chanmode_parse): Check that the input argument after
922         +o is a valid one.
923
924     modified files:
925      ChangeLog src/proto-p10.c
926
927
928 2006-04-06 02:19:47 GMT Michael Poole <mdpoole@troilus.org>     patch-11
929
930     Summary:
931       Fix some IPv6 address compatibility issues.
932     Revision:
933       srvx--devo--1.3--patch-11
934
935     src/proto-p10.c (irc_p10_pton): Mark valid IPv4 addresses as v4-mapped.
936       (irc_p10_ntop): Emit invalid IPs as AAAAAA (but it could be _ for +6
937         flagged hubs).
938
939     modified files:
940      ChangeLog src/proto-p10.c
941
942
943 2006-04-05 02:07:30 GMT Michael Poole <mdpoole@troilus.org>     patch-10
944
945     Summary:
946       Fix a possible warning without debugging.
947     Revision:
948       srvx--devo--1.3--patch-10
949
950     src/alloc-slab.c (slab_unalloc): If assert() is #define'd to be empty,
951         then size is unused.  Include a (void)size to quash a warning.
952
953     modified files:
954      ChangeLog src/alloc-slab.c
955
956
957 2006-04-05 02:02:21 GMT Michael Poole <mdpoole@troilus.org>     patch-9
958
959     Summary:
960       Fix hostmask error from last year's patch-28.
961     Revision:
962       srvx--devo--1.3--patch-9
963
964     src/proto-common.c (generate_hostmask): When generating a strict hostmask
965         not by IP, we should keep the original hostname.
966
967     modified files:
968      ChangeLog src/proto-common.c
969
970
971 2006-04-05 01:59:54 GMT Michael Poole <mdpoole@troilus.org>     patch-8
972
973     Summary:
974       Fix compilation error with slab allocator and no debugging.
975     Revision:
976       srvx--devo--1.3--patch-8
977
978     src/alloc-slab.c (verify): Undefine as a macro before defining as a
979         function.
980
981     modified files:
982      ChangeLog src/alloc-slab.c
983
984
985 2006-04-05 00:24:50 GMT Michael Poole <mdpoole@troilus.org>     patch-7
986
987     Summary:
988       Fix backtracking bug after an escaped character.
989     Revision:
990       srvx--devo--1.3--patch-7
991
992     src/tools.c (match_ircglob): Fix backtracking behavior when an escaped
993         character did not match.
994
995     modified files:
996      ChangeLog src/tools.c
997
998
999 2006-04-05 00:11:31 GMT Michael Poole <mdpoole@troilus.org>     patch-6
1000
1001     Summary:
1002       Advise the kernel that we will scan DB files sequentially.
1003     Revision:
1004       srvx--devo--1.3--patch-6
1005
1006     src/recdb.c (parse_database): Advise the kernel that we will scan the
1007         recdb file sequentially, just in case it cannot notice the access
1008         pattern on its own.
1009
1010     modified files:
1011      ChangeLog src/recdb.c
1012
1013
1014 2006-04-05 00:09:48 GMT Michael Poole <mdpoole@troilus.org>     patch-5
1015
1016     Summary:
1017       Correctly implement AsLL pong.
1018     Revision:
1019       srvx--devo--1.3--patch-5
1020
1021     src/proto-p10.c (irc_pong_asll): New function.
1022       (cmd_ping): Use it.
1023
1024     modified files:
1025      ChangeLog src/proto-p10.c
1026
1027
1028 2006-04-05 00:08:04 GMT Michael Poole <mdpoole@troilus.org>     patch-4
1029
1030     Summary:
1031       Add missing underscore in translation key string.
1032     Revision:
1033       srvx--devo--1.3--patch-4
1034
1035     src/mod-helpserv.c (helpserv_usermsg): Add a missing underscore between
1036         REQUEST and NOT.
1037
1038     modified files:
1039      ChangeLog src/mod-helpserv.c
1040
1041
1042 2006-04-05 00:05:59 GMT Michael Poole <mdpoole@troilus.org>     patch-3
1043
1044     Summary:
1045       Update configure.in; support both baz and tla; avoid using dirent.
1046     Revision:
1047       srvx--devo--1.3--patch-3
1048
1049     configure.in: Remove AC_PROG_RANLIB since we never use ranlib.  Add
1050         AC_PROG_LIBTOOL since we do use libtool.  Set GNU_ARCH and
1051         HAS_GNU_ARCH based on whether the system has baz or tla.  Do not
1052         check for dirent.d_type.
1053     
1054     src/Makefile.am: Make the "checkversion" target conditional on
1055         HAS_GNU_ARCH, and use the detected $(GNU_ARCH).
1056     
1057     src/helpfile.c (language_read): Report error text when unable to open a
1058         language directory.
1059       (language_read_list): Always stat the language entry to determine
1060         whether it is a directory; Cygwin has no dirent.d_type and ReiserFS
1061         has a broken one.
1062
1063     modified files:
1064      ChangeLog configure.in src/Makefile.am src/helpfile.c
1065
1066
1067 2006-04-05 00:00:57 GMT Michael Poole <mdpoole@troilus.org>     patch-2
1068
1069     Summary:
1070       Update ChangeLog (again?!), ltmain.sh and rx/Makefile.in
1071     Revision:
1072       srvx--devo--1.3--patch-2
1073
1074     ChangeLog: Update again (it didn't take, for some strange reason).
1075     
1076     ltmain.sh: Update to current version.
1077     
1078     rx/Makefile.in: Regenerate to match.
1079
1080     modified files:
1081      ChangeLog ltmain.sh rx/Makefile.in
1082
1083
1084 2006-04-04 23:58:31 GMT Michael Poole <mdpoole@troilus.org>     patch-1
1085
1086     Summary:
1087       Rotate ChangeLog for the new year's archive.
1088     Revision:
1089       srvx--devo--1.3--patch-1
1090
1091     ChangeLog: Update for the new year's archive.
1092
1093     modified files:
1094      .arch-ids/ChangeLog.id ChangeLog
1095
1096
1097 2006-04-04 23:42:39 GMT Michael Poole <mdpoole@troilus.org>     base-0
1098
1099     Summary:
1100       tag of srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-36
1101     Revision:
1102       srvx--devo--1.3--base-0
1103
1104     (automatically generated log message)
1105
1106     new patches:
1107      sp@gamesurge.net--2005/srvx--sp--1.3--patch-1
1108      sp@gamesurge.net--2005/srvx--sp--1.3--patch-2
1109      srvx@srvx.net--2004-srvx/srvx--devo--1.3--base-0
1110      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-1
1111      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-2
1112      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-3
1113      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-4
1114      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-5
1115      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-6
1116      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-7
1117      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-8
1118      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-9
1119      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-10
1120      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-11
1121      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-12
1122      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-13
1123      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-14
1124      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-15
1125      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-16
1126      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-17
1127      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-18
1128      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-19
1129      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-20
1130      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-21
1131      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-22
1132      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-23
1133      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-24
1134      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-25
1135      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-26
1136      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-27
1137      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-28
1138      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-29
1139      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-30
1140      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-31
1141      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-32
1142      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-33
1143      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-34
1144      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-35
1145      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-36
1146      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-37
1147      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-38
1148      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-39
1149      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-40
1150      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-41
1151      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-42
1152      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-43
1153      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-44
1154      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-45
1155      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-46
1156      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-47
1157      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-48
1158      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-49
1159      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-50
1160      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-51
1161      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-52
1162      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-53
1163      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-54
1164      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-55
1165      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-56
1166      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-57
1167      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-58
1168      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-59
1169      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-60
1170      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-61
1171      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-62
1172      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-63
1173      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-64
1174      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-65
1175      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-66
1176      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-67
1177      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-68
1178      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-69
1179      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-70
1180      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-71
1181      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-72
1182      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-73
1183      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-74
1184      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-75
1185      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-76
1186      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-77
1187      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-78
1188      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-79
1189      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-80
1190      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-81
1191      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-82
1192      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-83
1193      srvx@srvx.net--2004-srvx/srvx--devo--1.3--patch-84
1194      srvx@srvx.net--2005-srvx/srvx--devo--1.3--base-0
1195      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-1
1196      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-2
1197      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-3
1198      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-4
1199      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-5
1200      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-6
1201      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-7
1202      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-8
1203      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-9
1204      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-10
1205      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-11
1206      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-12
1207      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-13
1208      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-14
1209      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-15
1210      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-16
1211      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-17
1212      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-18
1213      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-19
1214      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-20
1215      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-21
1216      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-22
1217      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-23
1218      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-24
1219      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-25
1220      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-26
1221      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-27
1222      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-28
1223      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-29
1224      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-30
1225      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-31
1226      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-32
1227      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-33
1228      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-34
1229      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-35
1230      srvx@srvx.net--2005-srvx/srvx--devo--1.3--patch-36
1231
1232