538c044628f7a18412fba3478c13c4d049eb210f
[ircu2.10.12-pk.git] / ChangeLog
1 2000-03-30  Kevin L. Mitchell  <klmitch@mit.edu>
2
3         * ircd/m_mode.c (ms_mode): implemented a new m_mode in terms of
4         mode_parse() (version selectable at compile time)
5
6         * ircd/m_clearmode.c (mo_clearmode): clean_channelname(parv[1])
7
8         * ircd/m_opmode.c (mo_opmode): clean_channelname(parv[1])
9
10         * config/config-sh.in: add new config option to enable new m_mode
11         implementation
12
13         * doc/Configure.help: add documentation for new config option
14         CONFIG_NEW_MODE
15
16         * ircd/channel.c (mode_parse_client): /opmode #foobar -o -- 461
17         MODE -v : Not enough parameters
18
19         * ircd/m_clearmode.c (do_clearmode): do_clearmode() would remove
20         +k and +l even if they weren't set...
21
22         * ircd/m_opmode.c: implement the OPMODE command using mode_parse()
23
24         * ircd/channel.c: make mode_process_clients() clear the DEOPPED
25         flag; fix +s+p exclusivity; add MODE_ADD/MODE_DEL to flag list
26         for; test the 0-th member, not the i-th member, of the client
27         change state stuff
28
29         * ircd/m_clearmode.c (do_clearmode): use the new
30         mode_invite_clear() function
31
32         * ircd/channel.c: cleared up all the compile-time warnings and
33         errors
34
35         * include/channel.h: added declarations for mode_ban_invalidate()
36         and mode_invite_clear()
37
38         * ircd/channel.c: finished mode_parse(), then broke it up into a
39         dozen or so helper functions to make the code easier to read
40
41 2000-03-29  Thomas Helvey <tomh@inxpress.net>
42         * ircd/ircd.c: refactor server initialization a bit, use
43         getopt for parsing command line, refactor init_sys, main,
44         and other bits.
45
46         * ircd/s_bsd.c: add functions for initialization to clean
47         up logic a bit and remove duplicated code.
48
49         * include/ircd.h: add struct for server process related
50         variables.
51
52 2000-03-29  Kevin L. Mitchell  <klmitch@mit.edu>
53
54         * ircd/channel.c: initial definition of mode_parse(); flags to
55         prevent doing the same thing multiple times; helper method
56         send_notoper() to send a "Not oper"/"Not on channel" notice
57
58         * include/channel.h: declare mode_parse() and helper flags
59
60         * ircd/channel.c (modebuf_flush_int): fiddled with timestamp
61         sending to match the current action of set_mode() closely enough
62         that hopefully there won't be major conflicts
63
64         * ircd/channel.c (modebuf_flush_int): consolidated the mode string
65         building logic, reversed the order of the arguments to mode
66         commands to have '-' preceed '+'
67
68 2000-03-29  Thomas Helvey <tomh@inxpress.net>
69         * ircd/s_bsd.c (add_connection): don't disable socket options
70         let OS tune itself and allow important performance tweaks to 
71         work.
72
73 2000-03-28  Kevin L. Mitchell  <klmitch@mit.edu>
74
75         * ircd/channel.c (modebuf_flush_int): use %d, not %-15d; I got
76         confused by set_mode, which is doing some really weird logic;
77         guess what I'm going to rewrite next?  ;)
78
79 2000-03-28  Kevin L. Mitchell  <klmitch@emc.com>
80
81         * include/channel.h: added MODE_SAVE for the bounds checking stuff
82         in modebuf_flush
83
84         * ircd/channel.c: make modebuf_flush into modebuf_flush_int and
85         make it do bounds checking on the buffer; all modes are sent only
86         if the all parameter is 1; modebuf_flush is the exported wrapper
87
88         * include/channel.h: add BOUNCE, renumber flags to get a little
89         more space
90
91         * ircd/channel.c (modebuf_flush): don't overload HACK2, add
92         BOUNCE; send DESYNCH message
93
94 2000-03-27  Kevin L. Mitchell  <klmitch@emc.com>
95
96         * ircd/m_clearmode.c (do_clearmode): only mark the modes the
97         channel actually has in effect for deletion
98
99         * ircd/channel.c: added explanatory comments to all added
100         functions; made flushing take place at the correct place even if
101         the MODEBUF_DEST_DEOP flag is set; rewrote build_string() helper
102         to bash some stupid bugs; made modebuf_flush() return if ModeBuf
103         is empty, fixed the apparent source, removed some bogus string
104         termination code, properly terminate the mode strings, add support
105         for HACK2 and HACK3, made limit strings not be sent if the limit
106         is being removed, changed where '+' and '-' come from in sent
107         strings, added support for DEOP flag, set up bouncing code for
108         HACK2
109
110         * ircd/Makefile.in: ran make depend
111
112         * include/channel.h: added new defines for future functionality,
113         made modebuf_flush() return int so I can use tail recursion
114
115         * ircd/m_clearmode.c: add msg.h to includes; other misc cleanups
116         to make it all compile
117
118         * ircd/m_opmode.c: add msg.h to includes...
119
120         * ircd/m_clearmode.c: implemented mo_clearchan()/ms_clearchan()
121
122         * ircd/channel.c (modebuf_flush): realized I forgot to
123         nul-terminate addbuf/rembuf properly...
124
125         * ircd/m_clearmode.c (do_clearmode): wrote do_clearmode()...
126
127         * ircd/channel.c (modebuf_flush): correct sendto_server_butone to
128         sendto_serv_butone--blah^2
129
130         * ircd/send.c (sendto_serv_butone): stupid comments confused me
131
132         * ircd/channel.c (modebuf_flush): if there are no mode changes to
133         propagate, we're done...
134
135         * ircd/channel.c (modebuf_flush): duh; it's sendto_server_butone,
136         not sendto_all_butone
137
138         * ircd/m_clearmode.c: define skeleton for m{o,s}_clearmode
139
140         * ircd/m_opmode.c: define skeleton for m{o,s}_opmode
141
142         * ircd/Makefile.in (SRC): added m_opmode() and m_clearmode() to
143         the list
144
145         * ircd/parse.c: added messages for opmode and clearmode
146
147         * include/handlers.h: added declarations for mo_opmode(),
148         ms_opmode(), mo_clearmode(), and ms_clearmode()
149
150         * include/msg.h: define MSG_OPMODE, TOK_OPMODE, MSG_CLEARMODE, and
151         TOK_CLEARMODE
152
153         * include/channel.h (MODEBUF_DEST_OPMODE): Define the
154         MODEBUF_DEST_OPMODE flag
155
156         * ircd/channel.c (modebuf_flush): added new flag,
157         MODEBUF_DEST_OPMODE; causes channel MODE/HACK(4) notice to appear
158         to originate from source's server (or source itself, if
159         IsServer(source)); also causes a server-level MODE to be sent as
160         OPMODE instead
161
162         * include/channel.h: defined MODEBUF_DEST_SERVER,
163         MODEBUF_DEST_HACK4
164
165         * ircd/channel.c: Add another argument to build_string() to handle
166         numeric nicks; implemented MODEBUF_DEST_SERVER to send MODEs to
167         servers; implemented MODEBUF_DEST_HACK4 to cause HACK(4) notices
168         to be sent out
169
170 2000-03-27  Perry Lorier <isomer@coders.net>
171
172         * ircd/s_bsd.c: fixed missing 'u' typo.
173
174 2000-03-26  Kevin L. Mitchell  <klmitch@emc.com>
175
176         * ircd/channel.c: implement modebuf_init(), _mode(), _mode_uint(),
177         _mode_string(), _mode_client(), _flush(); also implemented a
178         simple build_string()
179
180         * include/channel.h: added definition of ModeBuf, modebuf_*
181         manipulation functions, and a couple of helper macros
182
183 2000-03-24 Thomas Helvey <tomh@inxpress.net>
184   * numicks.c: convert extended numerics to use original mask version
185   * numnicks.h: ""
186   * s_user.c:
187 2000-03-23 Thomas Helvey <tomh@inxpress.net>
188   * Merge in changes from production
189 2000-03-22 Thomas Helvey <tomh@inxpress.net>
190   * numicks.c: Tweak to numnick generator to reduce possibility of duplicates.
191   * rfc1459.unet: Add Maniac's documentation for /names 0
192 * Fix misc. jupe bugs that somehow made it into the tree
193 * Escape /names 0 to mean /names --Maniac
194 * Don't core when server asks for info --Maniac 
195 * Add Kev's jupe patch --Bleep
196 * Add Maniacs squit patch --Bleep
197 * Merge in u2_10_10_beta07 changes --Bleep
198 * Merge in u2_10_10_beta06 changes --Bleep
199 * Start ircu2.10.11 development, beta branch u2_10_10 --Bleep
200 #-----------------------------------------------------------------------------
201 #
202 # ChangeLog for ircu2.10.11
203 #
204 # $Id: ChangeLog,v 1.45 2000-03-30 22:03:36 kev Exp $
205 #
206 # Insert new changes at beginning of the change list.
207 #