… | |
… | |
144 | { |
144 | { |
145 | tstamp stamp; |
145 | tstamp stamp; |
146 | const packet_type *handler; |
146 | const packet_type *handler; |
147 | char *data; |
147 | char *data; |
148 | int datalen; |
148 | int datalen; |
149 | |
|
|
150 | ~command () |
|
|
151 | { |
|
|
152 | sfree<char> (data, datalen + 1); |
|
|
153 | } |
|
|
154 | }; |
149 | }; |
155 | |
150 | |
156 | /* how many times we are allowed to give the wrong password before being kicked. */ |
151 | /* how many times we are allowed to give the wrong password before being kicked. */ |
157 | #define MAX_PASSWORD_FAILURES 5 |
152 | #define MAX_PASSWORD_FAILURES 5 |
158 | |
153 | |
… | |
… | |
261 | MTH void flush_fx (); // send fx if required |
256 | MTH void flush_fx (); // send fx if required |
262 | |
257 | |
263 | void do_destroy (); |
258 | void do_destroy (); |
264 | void gather_callbacks (AV *&callbacks, event_type event) const; |
259 | void gather_callbacks (AV *&callbacks, event_type event) const; |
265 | |
260 | |
266 | iow socket_ev; void socket_cb (iow &w, int got); |
261 | iow socket_ev; void socket_cb (iow &w, int revents); |
267 | |
262 | |
268 | std::deque< command, slice_allocator<command> > cmd_queue; |
263 | std::deque< command, slice_allocator<command> > cmd_queue; |
269 | |
264 | |
270 | // large structures at the end please |
265 | // large structures at the end please |
271 | struct Map lastmap; |
266 | struct Map lastmap; |