ChangeLog 538 KB
Newer Older
1
2
2006-07-26  Per Cederqvist  <ceder@lysator.liu.se>

3
4
5
6
7
8
9
	Use strtol instead of atol.  (Bug 143).
	* src/server/conf-file.c (convert_to_long): New function.
	(assign_text_no): Use it instead of using atol.  Check for
	overflow.
	(assign_conf_no): Ditto.
	(assign_int): Ditto.

10
11
12
13
14
15
16
17
18
19
20
21
	Log a message when a conference (or person) is deleted.
	* src/server/conference.c (delete_conf): Log a message when a
	conference is deleted, which includes the name of the conference
	and the user ID of the person that performs the deletion.
	* src/server/testsuite/config/prot-a.exp (kom_delete_conf): Expect
	the above message.
	* src/server/testsuite/lyskomd.0/03.exp: Ditto.
	* src/server/testsuite/lyskomd.0/13.exp: Ditto.
	* src/server/testsuite/lyskomd.0/32.exp: Ditto.
	* src/server/testsuite/lyskomd.0/conference-cov.exp: Ditto.
	* src/server/testsuite/lyskomd.0/person-cov.exp: Ditto.

22
23
24
25
26
27
28
2006-04-24  Per Cederqvist  <ceder@lysator.liu.se>

	Tell svn to ignore core files.
	* src/server/testsuite: Ignore core and vgcore.*.

	Replaced the "Client host" and "Client port" configuration file
	parameters with "Listen", and allow lyskomd to listen to more than
29
	one port.  (Bug 1112).
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
	* doc/lyskomd.texi (Parameters): Replaced "Client host" and
	"Client port" with "Listen".
	* src/server/ramkomd.c (start_listen_sockets): New static
	function.  Listen to all the ports specified by the "Listen:"
	parameter.
	(server_init): Use start_listen_sockets() instead of calling
	isc_listentcp().  Removed the host and client_port arguments.  All
	callers updated.
	* src/server/testsuite/lyskomd.0/54.exp: New test suite.
	* src/server/conf-file.c (ctor_ipport_list): New static function.
	(dtor_ipport_list): New static function.
	(assign_ipport_list): New static function.
	(cf_ipport_list): New constant.
	* src/server/conf-file.h (struct ipport_entry): New struct.
	(struct ipport_list): New struct.
	(cf_ipport_list): New constant.
	* src/server/param.h (struct kom_par): Replaced "ip_client_host"
	and "ip_client_port" with "listen".
	* src/server/server-config.c (parameters): Ditto.
	* src/server/prot-a-parse-arg-c.awk: Include "conf-file.h" from
	the generated files.
	* src/server/admin.c: Include "conf-file.h".
	* src/server/aux-items.c: Ditto.
	* src/server/checkkomspace.c: Ditto.
	* src/server/conference.c: Ditto.
	* src/server/connections.c: Ditto.
	* src/server/dbck-cache.c: Ditto.
	* src/server/dbck.c: Ditto.
	* src/server/disk-end-of-atomic.c: Ditto.
	* src/server/komrunning.c: Ditto.
	* src/server/lockdb.c: Ditto.
	* src/server/membership.c: Ditto.
	* src/server/person.c: Ditto.
	* src/server/prot-a-output.c: Ditto.
	* src/server/prot-a-parse.c: Ditto.
	* src/server/prot-a.c: Ditto.
	* src/server/regex-match.c: Ditto.
	* src/server/rfc931.c: Ditto.
	* src/server/send-async.c: Ditto.
	* src/server/session.c: Ditto.
	* src/server/simple-cache.c: Ditto.
	* src/server/splitkomdb.c: Ditto.
	* src/server/text-garb.c: Ditto.
	* src/server/text.c: Ditto.
	* src/server/updateLysKOM.c: Ditto.
	* run-support/config: Removed the "Client port" setting.

	Adjust the test suite for the above change.
	* src/server/testsuite/lyskomd.0/bug-64.exp: Expect memory leaks
	due to bug 1599.
	* src/server/testsuite/lyskomd.0/53.exp: Expect a more informative
	error message when isc_listentcp fails.
	* src/server/testsuite/lyskomd.0/11.exp: Expect an IP address in
	the "Listening for clients" log message.
	* src/server/testsuite/config/unix.exp (clientport_2): New
	constant.
	(clientport_3): New constant.
	(lyskomd_start): New argument: listen_messages.  Use "Listen:"
	instead of "Client port:".
	(lyskomd_fail_start): Use "Listen:" instead of "Client port:".
	(client_start): New optional argument: port.

92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
2006-02-09  Per Cederqvist  <ceder@lysator.liu.se>

	Added valgrind suppressions for optimised code.
	* src/server/testsuite/lyskomd.supp (aid_lexer_opt): New
	suppression.
	(aid_lexer_2_opt): Ditto.

	New test case: start lyskomd while the socket is bound.
	* src/server/testsuite/lyskomd.0/53.exp: New test case.  Test
	startup when the socket is already bound by another process.  This
	exposed a memory leak in libisc which is also fixed in this
	commit.
	* src/server/testsuite/tcpbind.py: New helper script.  Bind a tcp
	port, so that it is occupied.  Used by 53.exp.
	* src/server/testsuite/config/unix.exp (lyskomd_fail_start): New
	optional argument. expected_leaks.  Fix database setup.  Remove
	the server from expect_after and expect_always once it has failed.
	(utility_start): New function.
	(utility_death): New function.
	(talk_to): Handle talking to utilities.

	Use strerror() instead of logging a plain errno integer.
	* src/server/lockdb.c (lock_db): Use strerror() to get a
	human-readable error message.

Per Cederqvist's avatar
Per Cederqvist committed
117
118
2006-02-02  Per Cederqvist  <ceder@lysator.liu.se>

119
120
121
122
123
124
125
126
127
128
129
130
	Log when the test suite lock is obtained and released.
	* src/server/testsuite/locksuite.py (now): New function.
	(main): Include a timestamp in the "locked" and "bye" messages.
	* src/server/testsuite/config/unix.exp (obtain_lock): Log when the
	lock is obtained.  Log a warning if the expect statement should be
	exited for unexpected reasons.
	(release_lock): Log when the lock is released.

	Fix a minor memory leak.
	* src/server/conf-file.c (read_config): Fix a memory leak when the
	config file was not found.

Per Cederqvist's avatar
Per Cederqvist committed
131
132
133
134
	Compilation error fix.
	* src/server/server-config.c (dump_cfg_timevals): Updated to the
	changes in struct datatype introduced yesterday.

135
136
2006-02-01  Per Cederqvist  <ceder@lysator.liu.se>

137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
	Configuration cleanup: use constructor/destructor semantics.
	* src/server/conf-file.h (struct datatype): Replaced the freer
	attribute with ctor and dtor attributes.  All users updated.
	Added some documentation.
	(free_config): New function.
	* src/server/conf-file.c (init_init): Call the constructors for
	all parameters.
	(free_config): New function, that calls the destructors for all
	parameters.
	(ctor_string): New static function. 
	(dtor_string): New static function, which replaces
	unassign_string.
	(assign_string): Expect the object to already be constructed.
	(unassign_string): Removed.
	(cf_string): Use ctor_string and dtor_string.
	* src/server/server-config.c (cf_log_param): Updated for new
	struct datatype.
	(cf_jubel): Ditto.
	(cf_ident_param): Ditto.
	(free_configuration): Use free_config to do the work.

Per Cederqvist's avatar
Per Cederqvist committed
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
	Namespace cleanup.
	* src/server/conf-file.c: Moved all struct datatype objects to the
	end of the file, to avoid having to forward-declare all of the
	static functions mentioned below.
	(assign_text_no): Now static.
	(assign_conf_no): Ditto.
	(assign_int): Ditto.
	(assign_ulong): Ditto.
	(assign_uint): Ditto.
	(assign_string): Ditto.
	(assign_bool): Ditto.
	(assign_double): Ditto.
	(assign_timeval): Ditto.
	(unassign_string): Ditto.
	* src/server/conf-file.h: Don't declare the above functions, which
	are now static.

175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
	Configuration file definitions: use a datatype struct, instead of
	having separate "assigner" and "freer" fields in the parameter
	definition table.
	* src/server/conf-file.h (struct datatype): New struct.
	(struct parameter): Move the assigner and freer fields to struct
	datatype, and include a pointer to a const struct datatype.
	* src/server/conf-file.c, src/server/conf-file.h
	(cf_text_no): New constant struct.
	(cf_conf_no): Ditto.
	(cf_int): Ditto.
	(cf_ulong): Ditto.
	(cf_uint): Ditto.
	(cf_string): Ditto.
	(cf_bool): Ditto.
	(cf_double): Ditto.
	(cf_timeval): Ditto.
	* src/server/conf-file.c (assign_defaults): Handle configuration
	datatypes.
	(configure_line): Ditto.
	* src/server/server-config.c (assign_path): Removed.
	(unassign_path): Removed.
	(cf_path): New. Replaces assign_path and unassign_path.
	(cf_log_param): New const struct.
	(cf_jubel): New const struct.
	(cf_ident_param): New const struct.
	(parameters): Replaced all assigners and freers with the pointers
	to the proper datatype structs.
	(free_configuration): Handle configuration datatypes.

204
205
2006-01-04  Per Cederqvist  <ceder@lysator.liu.se>

206
207
208
209
	Made HACKING more future-proof.
	* HACKING: Refer to kom.lysator.liu.se instead of u137 (which has
	been replaced by compulsion for some time).

210
211
212
213
214
	Removed a redundant xenofarm result file.
	* scripts/xenofarm.sh: Don't create the makeinfo.txt file.  The
	information in it was already present in the id_txlog.txt file
	created by id_tx.

215
216
2006-01-03  Per Cederqvist  <ceder@lysator.liu.se>

217
218
219
220
221
	Fixed a use-after-free error found by valgrind.  This could only
	be triggered by a broken aux-item definition file, so it was
	mostly harmless.
	* src/server/aux-item-def-parse.y (aux_item_def_check_trigger):
	Don't free a string before using it.
222
	(aux_item_def_check_validate): Ditto.
223

224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
	Fixed various harmless memory and file descriptor leaks found by
	valgrind.
	* src/server/testsuite/lyskomd.supp: Added aid_lexer_2.
	* src/server/testsuite/lyskomd.0/regexp-match-cov.exp (shutdown):
	Don't expect any suppressed leaked blocks.
	* src/server/testsuite/lyskomd.0/aux-items-cov.exp: Expect less
	suppressed leaked blocks.
	* src/server/testsuite/lyskomd.0/37.exp: Adjusted to new report
	format when configuration errors are found.
	* src/server/testsuite/lyskomd.0/conf-file-cov.exp: Ditto.
	* src/server/simple-cache.c (free_all_cache): Close text_file and
	file_a.
	* src/server/testsuite/lyskomd.supp: Removed i_fopen-2.3.1 and
	i_fopen-2.3.5, which were actually caused by the above problem.
	* src/server/server-config.c (read_configuration): Check the
	return value of read_config().  Free the configuration before
	calling restart_kom if there are any problems with the
	configuration.  Report the name of the configuation file if
	problems are found.
	* src/server/ramkomd.c (dump_exit_statistics): Call clear_info()
	instead of free_kom_info.
	(free_kom_info): Removed.  The new clear_info() function contains
	a better implementation, with less code duplication.
	* src/server/memory.c, src/server/kom-memory.h (clear_info): New
	function.
	* src/server/dbck.c (free_person_scratchpad): New static function.
	(free_person_scratch): Ditto.
	(main): Call free_person_scratch(), clear_info(),
	free_configuration() and free_all_dbck_cache() when terminating to
	make it possible to check for leaks with valgrind.
	* src/server/dbck-cache.c, src/server/dbck-cache.h
	(free_all_dbck_cache): New function.
	* src/server/conf-file.c, src/server/conf-file.h (read_config):
	Changed return type from void to Success.  Return FAILURE instead
	of calling restart_kom when configuration errors are found.

Per Cederqvist's avatar
Per Cederqvist committed
260
261
2006-01-02  Per Cederqvist  <ceder@lysator.liu.se>

262
263
264
265
266
267
268
269
270
271
	Update valgrind options to valgrind-2.4.0.
	* src/server/testsuite/lyskomd.supp (i_fopen-2.3.1): New name for
	former i_fopen.
	(i_fopen-2.3.5): New suppression.
	* src/server/testsuite/config/unix.exp (l2g_start): Use valgrind
	option --leak-check=full, not the obsolete variant
	--leak-check=yes.
	(spawn_lyskomd): Ditto.
	(dbck_run): Run with --leak-check=full.

272
273
274
275
	Fixed a type mismatch in adns.
	* src/libraries/adns/src/event.c (adns_processreadable):
	udpaddrlen should be a socklen_t, not int.

Per Cederqvist's avatar
Per Cederqvist committed
276
277
278
279
280
281
282
	Xenofarm warning fixes.
	* src/libraries/adns/src/check.c: Include <stdlib.h>, which is
	needed since abort() is used here.
	* scripts/warnings.sed: gcc 3.4.3 uses 'foo' instead of `foo' to
	mark identifiers.  Adjusted a few warnings that were found by
	various Xenofarm machines.

283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
2006-01-01  Per Cederqvist  <ceder@lysator.liu.se>

	Since .cvsignore no longer exist, we cannot distribute it.
	* Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* db-crypt/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* db-crypt/db/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* doc/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* doc/man/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* run-support/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* scripts/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* scripts/lyskomd-copyrights: Removed .cvsignore.
	* src/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* src/include/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* src/include/server/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* src/libraries/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* src/libraries/adns/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* src/libraries/adns/client/Makefile.am (EXTRA_DIST): Removed
	.cvsignore.
	* src/libraries/adns/src/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* src/libraries/libansi/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* src/libraries/libcommon/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* src/libraries/libeintr/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* src/libraries/libmisc/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* src/libraries/liboop/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* src/server/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* src/server/testsuite/Makefile.am (EXTRA_DIST): Removed .cvsignore.
	* src/server/testsuite/config/Makefile.am (EXTRA_DIST): Removed
	.cvsignore.
	* src/server/testsuite/lyskomd.0/Makefile.am (EXTRA_DIST): Removed
	.cvsignore.

Per Cederqvist's avatar
Per Cederqvist committed
314
315
2005-12-28  Per Cederqvist  <ceder@lysator.liu.se>

316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
	Cleanup of simple-cache.c.  (Bug 172).  Allocate less memory when
	performing a pattern name match.  
	* src/server/simple-cache.c: Removed obsolete comments.  Fixed
	spelling errors in comments.
	(find_matching_info_compare): Don't overflow if a Conf_no doesn't
	fit in an int.
	(find_matching_info): Removed obsolete comments (bug 172).
	(rebuild_matching_info_entry): Added a comment that explains a
	magic "2" in the code.
	(build_matching_info): Use cached_no_of_existing_conferences()
	instead of next_free_num when deciding how large temporary table
	we need.  Reduce the number of loop induction variables.
	(cached_lookup_name): Made code more readable by introducing a
	temporary variable.

Per Cederqvist's avatar
Per Cederqvist committed
331
332
333
334
335
	Improved test suite logging.
	* src/server/testsuite/config/unix.exp (simple_expect): Log what
	we are looking for and when we are done looking at verbosity level
	2 and above.

336
2005-12-27  Per Cederqvist  <ceder@lysator.liu.se>
337
338
339
340

	Add a testsuite temporary file to svn:ignore.
	* src/server/testsuite: Add locksuite.lock to svn:ignore.

341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
	Don't overestimate the number of conferences as next_free_num when
	allocating certain data structures.  (Bug 164).
	* src/server/simple-cache.c (existing_confs): New static
	variable.
	(cached_no_of_existing_conferences): Return existing_confs,
	instead of overestimating the number of conferences as
	next_free_num.  (Bug 164).
	(cached_create_conf): Increase existing_confs.
	(cached_delete_conf): Decrease existing_confs.
	(init_cache): Increase existing_confs when a new conference is
	created.
	(free_all_cache): Decrease existing_confs when conferences are
	deallocated.
	(dump_cache_mem_usage): Dump existing_confs.
	* src/server/testsuite/config/unix.exp (check_memory_usage): Check
	the dump of existing_confs.  Fail if allocated_strings or
	allocated_blocks isn't found in the file.
358
359
360
361
362
363
364
365
366
367
368
369

	Simplified the name parsing routing, and save some small amount of
	memory, by removing the priority field of Matching_info.
	* src/libraries/libcommon/parser.c (parse): Don't let the priority
	influence the match.  The priority functionality was poorly
	documented, not used by lyskomd, and made the code more complex.
	* src/libraries/libcommon/parser.h (Matching_info): Removed the
	priority field, which is no longer used.
	* src/server/simple-cache.c (rebuild_matching_info_entry): Don't
	initialize the priority field.
	(build_matching_info): Ditto.

Per Cederqvist's avatar
Per Cederqvist committed
370
371
372
373
374
375
376
2005-12-25  Per Cederqvist  <ceder@lysator.liu.se>

	Minor code cleanup.
	* src/libraries/libcommon/parser.c (parse): Code cleanup: get rid
	of one level of indentation, and avoid using multiple ways to get
	to the next iteration of the main loop.

377
378
379
380
381
382
383
384
2005-12-24  Per Cederqvist  <ceder@lysator.liu.se>

	Writing to a client that was disconnecting and blocked could cause
	the server to crash.  (Bug 1403).
	* src/server/connections.c (check_idle_callback): Don't crash if
	isc_enable() fails.  Emit the session number in the log, mostly
	for debug purposes.

Per Cederqvist's avatar
Per Cederqvist committed
385
386
2005-12-23  Per Cederqvist  <ceder@lysator.liu.se>

387
388
389
390
391
392
393
394
395
	Add automake-generated files to svn:ignore.
	* scripts: Add depcomp, install-sh, mdate-sh, missing,
	mkinstalldirs and texinfo.tex to svn:ignore.
	* src/libraries/adns: Add depcomp, missing,  and mkinstalldirs to
	svn:ignore.
	* src/libraries/libisc-new: Add depcomp to svn:ignore.
	* src/libraries/liboop: Add depcomp, install-sh, missing and
	mkinstalldirs to svn:ignore.

Per Cederqvist's avatar
Per Cederqvist committed
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
	Add TAGS to svn:ignore.
	* src/include/server: Add TAGS to svn:ignore.
	* src/include: Ditto.
	* src/libraries/adns/client: Ditto.
	* src/libraries/adns/src: Ditto.
	* src/libraries/adns: Ditto.
	* src/libraries/libansi: Ditto.
	* src/libraries/libcommon: Ditto.
	* src/libraries/libeintr: Ditto.
	* src/libraries/libisc-new/src: Ditto.
	* src/libraries/libisc-new: Ditto.
	* src/libraries/libmisc: Ditto.
	* src/libraries/liboop: Ditto.
	* src/libraries/regex: Ditto.
	* src/libraries: Ditto.
	* src/server/testsuite: Ditto.
	* src/server: Ditto.
	* src: Ditto.
	* .: Ditto.

416
417
418
419
420
421
422
423
424
425
2005-12-22  Per Cederqvist  <ceder@lysator.liu.se>

	Don't hang if "Use DNS" is off.  (Bug 1318.)  Thanks to Rasmus
	Sten who reported the bug and proposed an alternate fix.
	* src/server/connections.c (login_request): Don't hang if the "Use
	DNS" option is false.  (Bug 1318).  Log a warning message if
	isc_resolve_remote() fails.
	(src/server/testsuite/lyskomd.0/bug-1318.exp): New file.  Test the
	"Use DNS: off" configuration option.

426
427
428
429
430
431
432
433
434
435
436
437
2005-12-21  Per Cederqvist  <ceder@lysator.liu.se>

	"make check" without a previous "make" failed, because
	checkkomspace was not built early enough.  Also, the test suite
	should not fail on platforms that don't support fsusage.c.
	* src/server/Makefile.am (CHECKKOMSPACE): New empty variable.
	Append checkkomspace$(EXEEXT) to it if we HAVE_FSUSAGE.
	(check-lyskomd): Depend on $(CHECKKOMSPACE).
	(check-recursive): Ditto.
	* src/server/testsuite/lyskomd.0/50.exp: Report "unsupported" if
	checkkomspace is not built.  (Don't fail with fatal errors.)

438
439
2005-12-19  Per Cederqvist  <ceder@lysator.liu.se>

Per Cederqvist's avatar
Per Cederqvist committed
440
441
442
443
444
445
	Fixed test suite bitrot.
	* src/server/testsuite/lyskomd.0/11.exp: Handle the message that
	is emitted when the debug calls are disabled.  That message was
	introduced 2004-07-21; apparently, nobody has used the test suite
	without debug calls since then.

446
447
	* Switched from CVS to Subversion.

Per Cederqvist's avatar
Per Cederqvist committed
448
449
450
451
452
453
454
455
2005-12-18  Per Cederqvist  <ceder@lysator.liu.se>

	Update copyright headers.
	* <all files>: update the year in the copyright notice.
	* scripts/lyskomd-copyrights: Ignore m4/* and
	src/server/testsuite/lyskomd.0/*.aux.  Updated year in copyright
	statement.  Ignore src/server/fsusage.[hc].
	
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
2005-12-18  Per Cederqvist  <ceder@moria.cederqvist>

	Implemented the disable-client debug call, and use it in a test
	suite.  Some minor code refactoring.
	* src/include/services.h (disable_client): New debug request.
	* src/server/fncdef.txt (disable_client): New debug request.
	* src/server/connections.h (Connection) [DEBUG_CALLS]: New field:
	blocked_by_disable_client.
	* src/server/internal-connections.c (init_connection)
	[DEBUG_CALLS]: Initialize blocked_by_disable_client.
	(new_client): Ditto.
	* src/server/connections.c (parse_unparsed) [DEBUG_CALLS]: Don't
	process any request if the client is disabled by disable_client.
	(may_read_more): New method, extracted from read_from_connection.
	Return false if disabled by disable_client.
	(should_be_disabled): New method, extracted from
	read_from_connection and check_idle_callback. Return true if
	disabled by disable_client.
	(read_from_connection): Simplified code by using may_read_more and
	should_be_disabled.
	(check_idle_callback): Simplified code by using should_be_disabled.
	(disable_client): New debug request.
	* src/server/testsuite/lyskomd.0/51.exp: New test suite. Test that
	nothing is read from a disabled client, and that the output queue
	fills up properly.

482
483
484
485
486
487
2005-12-12  Per Cederqvist  <ceder@ingate.com>

	x-face is a broken and historical image format, so don't promote
	it.
	* doc/Protocol-A.texi (Aux-Item Types): Deprecate x-face.

Per Cederqvist's avatar
Per Cederqvist committed
488
489
490
491
492
2005-12-12  Per Cederqvist  <ceder@lysator.liu.se>

	Added on assert.
	* src/server/stats.c (update_one_stat): Added an assert.

493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
2005-12-11  Per Cederqvist  <ceder@lysator.liu.se>

	The get-members-old request is often better than get-members, so
	remove the "Obsolete" status from it.
	* doc/Protocol-A.texi (Protocol Requests): get-members-old is now
	being promoted from "Obsolete" to "Recommended".
	(get-members-old): Ditto.  Discuss get-members versus
	get-members-old.
	(get-members): Ask client writers to consider using
	get-members-old.

	Clarify how create-conf-old works.
	* doc/Protocol-A.texi (create-conf-old): Document when the ability
	to send an Extended-Conf-Type was introduced, and what it means to
	send a four-bit Conf-Type.

	Doc fixes.
	* doc/Protocol-A.texi (create-text): Typo fixed.
	(Mapping Local to Global Text Numbers): Typo fixed.

Per Cederqvist's avatar
Per Cederqvist committed
513
514
515
516
517
518
2005-12-11  Per Cederqvist  <ceder@moria.cederqvist>

	Doc fixes.
	* doc/Protocol-A.texi (set-membership-type): Typo fixed.
	* HACKING: Update paths to the files on the Lysator web server.  

Per Cederqvist's avatar
Per Cederqvist committed
519
520
521
522
523
524
2005-11-28  Per Cederqvist  <ceder@moria.cederqvist>

	Comment fix.
	* doc/checkargs.py (generate_summary_output): Fixed a typo in the
	generated comment.

Per Cederqvist's avatar
Per Cederqvist committed
525
526
527
528
529
530
531
2005-05-06  Per Cederqvist  <ceder@lysator.liu.se>

	Doc fix.
	* doc/Protocol-A.texi (get-uconf-stat): Don't state that this is
	the only way to get all the flag bits of the conference.  It
	isn't; get-conf-stat works just fine.

Per Cederqvist's avatar
Per Cederqvist committed
532
533
534
535
536
537
2005-04-04  Per Cederqvist  <ceder@lysator.liu.se>

	Doc fix.
	* doc/Protocol-A.texi (local-to-global-reverse): Fixed typo.
	* doc/constructs.expected: Updated.

538
539
540
541
542
543
2004-12-13  Per Cederqvist  <ceder@ingate.com>

	Added a comment.
	* src/server/person.c (get_person_stat): Added a comment that
	explains why get-person-stat is allowed without logging in.

Per Cederqvist's avatar
Per Cederqvist committed
544
545
546
547
548
549
2004-12-02  Per Cederqvist  <ceder@ingate.com>

	Doc fix.
	* doc/Protocol-A.texi (mark-as-read): Document the error code
	long-array.

550
551
2004-11-30  Per Cederqvist  <ceder@ingate.com>

Per Cederqvist's avatar
Per Cederqvist committed
552
553
554
555
	Release doc fix.
	* HACKING (Release generation): Check third-party packages for new
	versions.

556
557
558
559
	Allocate a range of aux-item types to Canidius.  (Bug 1440).
	* doc/Protocol-A.texi (Client-Specific Aux-Item Types): Allocate
	10300-10399 to Canidius.

560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
2004-08-03  Per Cederqvist  <ceder@ceder.dyndns.org>

	Minor cleanup of the multipart-related documentation supplied by
	Rasmus Sten.
	* doc/Protocol-A.texi (Aux-Item Types): Remove inferior
	documentation of multipart handling by allowed-content-type; that
	is now obsoleted by the better documentation that Rasmus Sten
	provided.  Fix markup and language errors in the documentation by
	Rasmus.
	(Multipart (multipart/mixed)): Fixed markup errors.  Clarify that
	text/x-kom-basic is preferred.
	(MHTML (message/rfc822;x-lyskom-variant=rfc2557)): Fixed markup
	errors.  Clarify that it is automatic access to external resources
	that should be stopped.

575
576
577
578
579
580
581
582
583
584
585
586
587
588
2004-08-02  Per Cederqvist  <ceder@ceder.dyndns.org>

	* AUTHORS: Added Rasmus Sten.

2004-08-02  Rasmus Sten  <rasmus@bricole.se> (committed by ceder)

	Document how multipart content should be handled by Protocol A
	clients, and document MHTML and multipart/mixed.
	* doc/Protocol-A.texi (Aux-Item Types): State that
	allowed-content-type should be applied recursively to all content
	types, in much more detail than in the change of 2004-07-18.
	(Multipart (multipart/mixed)): New section.
	(MHTML (message/rfc822;x-lyskom-variant=rfc2557)): New section.

589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
2004-07-21  Per Cederqvist  <ceder@ingate.com>

	Increase coverage of the aux-item definitions parser.  (Bug 64).
	Get rid of a spurious error message found in the process.  Use
	less preprocessor macro magic.
	* src/server/testsuite/lyskomd.0/bug-64.exp: New file.  Increase
	test coverage of aux-item-def-parse.y.
	* src/server/testsuite/lyskomd.0/bug-64.aux: New file.
	* src/server/testsuite/lyskomd.0/bug-64-2.aux: New file.
	* src/server/simple-cache.c (pre_sync): Use VBUG instead of BUG to
	report sync start and stop.
	* src/server/aux-item-def-parse.y (CHK_ASSIGN): Macro rewritten as
	the new chk_assign() function, with a slightly different API.
	This was mainly done to get rid of the error message "invalid
	field name: xyzzy" that occured if the value of xyzzy was bogus,
	even if xyzzy itself was a valid name.  All callers updated.
	(CHK_FLAG_A): Similarly rewritten as chk_flag_a().
	(assign): Check for valid field name and valid field content
	separately, so that the "invalid field name: xyzzy" message isn't
	printed just because the content is bad.
	(chk_assign): New name for former aux_item_def_check_assign.  New
	arguments: found and good; return status via them.
	(chk_flag_a): New function.
	(aux_item_def_check_trigger): New arguments: found and good;
	return status via them.
	(aux_item_def_check_validate): Ditto.
	
	Test suite framework improvements: simple_expect can now expect
	lines that don't contain the line leader, and lyskomd_start and
	lyskomd_fail_start can now handle output sent before the database
	lock is taken.
	* src/server/testsuite/config/unix.exp (simple_expect): If the
	regexp starts with "<<<", remove it, and don't expect a line
	leader.  This is useful for catching messages from lyskomd that
	are created by libraries that we have no control over, and that
	don't emit the expected line leader.
	(set_debug_calls): New proc, extracted from lyskomd_start and 
	lyskomd_fail_start.  Expect the new message that is emitted when
	the debug calls are disabled.
	(lyskomd_start): New optional argument: pre_lock_messages.  Moved
	code to set_debug_calls().
	(lyskomd_fail_start): Ditto.
	* src/server/ramkomd.c (main): Write a message when debug calls
	are disabled, to help the test suite.

	Fixed a comment.
	* src/server/testsuite/timeval-overflow.c: Fixed a comment.

637
638
2004-07-18  Per Cederqvist  <ceder@ingate.com>

639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
	Implement async-text-read and async-invalidate-text-read.  (Bug
	985).
	* src/server/testsuite/lyskomd.0/52.exp: Test async-text-read and
	async-invalidate-text-read.
	* src/server/testsuite/lyskomd.0/03.exp: Handle async-text-read
	and async-invalidate-text-read.
	* src/server/session.c (accept_async): Handle ay_text_read and
	ay_invalidate_text_read.
	* src/server/send-async.h, src/server/send-async.c
	(async_text_read): New function.
	(async_invalidate_text_read): New function.
	* src/server/prot-a-send-async.h, src/server/prot-a-send-async.c
	(prot_a_async_text_read): New function.
	(prot_a_async_invalidate_text_read): Ditto.
	* src/server/membership.c (mark_as_read): Send async-text-read.
	(mark_as_unread): Send async-invalidate-text-read.
	(set_read_ranges): Ditto.
	(set_unread): Ditto.
	(set_last_read): Ditto.
	* src/server/async.h (enum async): Added ay_text_read and
	ay_invalidate_text_read.
	* doc/Protocol-A.texi (Membership Information): Added the Text-Id
	type.
	(async-text-read): New async message.
	(async-invalidate-text-read): New async message.
	* doc/constructs.expected: Updated.

	Added missing newline in kom_log call.
	* src/server/connections.c: (set_time): Added a missing newline in
	a log message.

	Doc fixes.
	* src/server/testsuite/locksuite.py: Doc fixes. 
	* src/server/connections.c: Doc added.
	* doc/Protocol-A.texi (Person Status Types): Added missing closing
	parenthesis.
	(Who Information): Ditto.
	(modify-system-info): Fixed references to argument names in the
	error code descriptions.
	(Aux-Item Types): Don't use @field for anything but Protocol A
	structure fields.  

	Specify how multipart contents should be handled by the aux-item
	allowed-content-type.
	* doc/Protocol-A.texi (Aux-Item Types): State that
	allowed-content-type should be applied recursively to all content
	types.

687
688
689
690
691
692
693
694
	Fix bit decay in the test suite.
	* src/server/testsuite/lyskomd.0/bug-1121.exp: Turn off garbing
	when reading the old bug-1121 database so that the garb doesn't
	remove our test data.
	* src/server/testsuite/lyskomd.0/46.exp: Bison 1.875 uses a
	slightly different error message; update the regexp to accept it
	as well as older versions.

David Byers's avatar
David Byers committed
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
2004-06-19  David Byers  <byers@lysator.liu.se>

	Documentation improvements:
	* doc/lyskomd.texi (Aux-Item Definition File): Documented
	supervisor-only and author-only more accurately (bug 530).

	* doc/Protocol-A.texi (Aux-Item Types): Document letterbox, text
	and other type parameters of aux-item definitions (bug 9).
	(Person Status Types, Who Information, Session Information):
	Improved documentation of the username field (bug 196).
	(add-member): Fixed documentation of error codes (bug 199).
	(async-i-am-on): Fixed error in the message description (bug 200).
	(Importing and Exporting E-Mail): Improved documentation on what
	aux-items affect importers (bug 201).

710
711
712
713
714
715
2004-04-26  Per Cederqvist  <ceder@ceder.dyndns.org>

	Added weblatte to the list of registered clients.
	* doc/Protocol-A.texi (set-client-version): Added weblatte to the
	list of registered clients.

Per Cederqvist's avatar
Per Cederqvist committed
716
717
718
719
720
721
2004-04-02  Per Cederqvist  <ceder@ingate.com>

	Gentoo portability.
	* mkmi (WANT_AUTOMAKE): Set it.
	(WANT_AUTOCONF): Set it.

Per Cederqvist's avatar
Per Cederqvist committed
722
723
724
725
726
2004-01-06  Per Cederqvist  <ceder@ceder.dyndns.org>

	Fix "make check".
	* doc/constructs.expected: Updated.

727
728
729
730
731
732
2004-01-05  Per Cederqvist  <ceder@ceder.dyndns.org>

	Xenofarm: detect warnings during ckprg.
	* scripts/xenofarm.sh (ckprg): Use the ckprgwarn function, so that
	warnings during ckprg are detected.

733
734
735
736
737
738
739
740
2003-12-28  Per Cederqvist  <ceder@ceder.dyndns.org>

	Protocol A whitespace usage was only documented in the direction
	from the client to the server!
	* doc/Protocol-A.texi (Client-Server Dialog): Document how
	elements sent from the server to the client are separated and
	terminated.

741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
2003-11-28  Per Cederqvist  <ceder@ceder.dyndns.org>

	Protocol A clarifications: %g uses the "C" locale, no-of-texts is
	misnamed, read-ranges is sorted, and the description of what is
	unread was outdated.
	* doc/Protocol-A.texi (Simple Data Types): The %g format specifier
	is locale-dependent in the C specification, so say that FLOAT is
	formatted as %g is formatted in the "C" locale.
	(Conference Status Types): Fixed the description of the
	no-of-texts field.  It is actually the difference between the
	first unused local text number and first-local-no, and that will
	differ from the number of texts in the conference if a text other
	than the oldest one is removed.
	(Membership Information): Document that read-ranges is kept in
	ascending order.
	(What do I have unread): Update the description with the version
	11 requests.

Per Cederqvist's avatar
Per Cederqvist committed
759
760
761
762
763
764
2003-10-06  Per Cederqvist  <ceder@ceder.dyndns.org>

	Port to IRIX make.
	* doc/Makefile.am (check-doc): Don't have blank lines among the
	commands, since make on IRIX chokes on them.

765
766
767
768
769
770
771
772
773
774
775
776
2003-10-04  Per Cederqvist  <ceder@ceder.dyndns.org>

	The timestamp in a database file shold be the time when the
	snapshot was taken.  It should not be updated when the file is
	changed from DIRTY to CLEAN state.
	* src/server/simple-cache.c (sync_output_header): New argument:
	include_timestamp.
	(pre_sync): The header should include a timestamp.
	(save_one_text): The header should not include a timestamp when
	the "CLEAN" marker is written.  We want the timestamp in the file
	to be the time when the snapshot was taken.

777
778
2003-10-03  Per Cederqvist  <ceder@ceder.dyndns.org>

779
780
781
	Ignore harmless warnings from fsusage.c.
	* scripts/warnings.sed: Ignore warnings produced by fsusage.c.
	
Per Cederqvist's avatar
Per Cederqvist committed
782
783
784
785
	Fixed typo.
	* m4/Makefile.am (EXTRA_DIST): Fixed typo: "intmax_t.m4" ->
	"uintmax_t.m4".

786
787
788
	Port checkkomspace to non-GNU systems.
	* src/server/Makefile.am (checkkomspace_SOURCES): Added $(GETOPT).

Per Cederqvist's avatar
Per Cederqvist committed
789
790
791
792
793
794
795
796
797
	Port fsusage to FreeBSD.
	* m4/Makefile.am (EXTRA_DIST): Added intmax_t.m4, inttype_h.m4 and
	ulonglong.m4.
	* m4/ulonglong.m4: New file, taken verbatim from GNU fileutils-4.1.
	* m4/uintmax_t.m4: New file, taken verbatim from GNU fileutils-4.1.
	* m4/inttypes_h.m4: New file, taken verbatim from GNU fileutils-4.1.
	* configure.in: Added jm_AC_TYPE_UINTMAX_T and remove the too
	simple check for inttypes.h.

798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
	Added the checkkomspace program.
	* doc/lyskomd.texi (Parameters): Document these:
	    Free space warning level
	    Free space warning percent
	    Free inodes warning level
	    Free inodes warning percent
	    Free space critical level
	    Free space critical percent
	    Free inodes critical level
	    Free inodes critical percent
	(Invoking checkkomspace): New node.
	* src/server/stderrlog.c: New file.
	(kom_log): Moved here from dbck.c
	(restart_kom): Ditto.
	* src/server/server-config.c (parameters): Added these parameters:
	    Free space warning level
	    Free space warning percent
	    Free inodes warning level
	    Free inodes warning percent
	    Free space critical level
	    Free space critical percent
	    Free inodes critical level
	    Free inodes critical percent
	* src/server/param.h (struct kom_par): Added
	chkspc_warn_space_abs, chkspc_warn_space_percent,
	chkspc_warn_inode_abs, chkspc_warn_inode_percent,
	chkspc_crit_space_abs, chkspc_crit_space_percent,
	chkspc_crit_inode_abs and chkspc_crit_inode_percent.
	* src/server/dbck.c (kom_log): Moved to stderrlog.c.
	(restart_kom): Ditto.
	* src/server/checkkomspace.c: New file.
	* src/server/Makefile.am (sbin_PROGRAMS): Added checkkomspace, but
	only if HAVE_FSUSAGE.
	(READ_CONFIG): Removed log.c.
	(komrunning_SOURCES): Added log.c.
	(updateLysKOM_SOURCES): Added log.c.
	(checkkomspace_SOURCES): New variable.
	(dbck_SOURCES): Added strderrlog.c.
	(splitkomdb_SOURCES): Added log.c.
	* src/server/.cvsignore: Added checkkomspace.
	* src/server/testsuite/lyskomd.0/Makefile.am (EXTRA_DIST): Added
	50.exp.
	* src/server/testsuite/lyskomd.0/50.exp: New file.  Test
	checkkomspace.

	Import fsusage, from GNU fileutils-4.1.
	* AUTHORS: Document the origin of fsusage.
	* Makefile.am (SUBDIRS): Added m4.
	(ACLOCAL_AMFLAGS): Added -I m4.
	* m4/fsusage.m4: New file, taken verbatim from GNU fileutils-4.1.
	* m4/Makefile.am: New file.
	* mkmi: Added "-I m4" to top-level aclocal.
	* src/server/fsusage.h: New file, taken verbatim from GNU
	fileutils-4.1.
	* src/server/fsusage.c: New file, taken verbatim from GNU
	fileutils-4.1.
	* configure.in: Added several tests required by fsusage:
	(AC_C_VOLATILE): Required by fsusage.
	(AC_CHECK_HEADERS): Added inttypes.h, limits.h, sys/mount.h,
	sys/vfs.h, sys/fs/s5param.h, sys/filsys.h, sys/statfs.h,
	sys/statvfs.h, sys/dustat.h, fcntl.h.
	(jm_FILE_SYSTEM_USAGE): Call it.
	(HAVE_FSUSAGE): New automake conditional.
	(AC_CONFIG_FILES): Added m4/Makefile.

	Testsuite: slow machines workaround.
	* src/server/testsuite/lyskomd.0/29.exp (startup): Increase the
	sync interval to 6 hours, so that it doesn't interfere on slow
	machines.

868
869
870
871
872
873
874
875
876
877
2003-08-31  Per Cederqvist  <ceder@ceder.dyndns.org>

	Fixed errors in the generated grammars found by Peter Zander.
	* doc/checkargs.py (generate_stable_output): Don't forget to
	convert type names for functions and asynchronous messages that
	take a single argument.  Use "%Async name" instead of
	"%Async-Name".
	(generate_summary_output): Use "%Async name" instead of
	"%Async-Name".

Per Cederqvist's avatar
Per Cederqvist committed
878
879
880
881
2003-08-30  Per Cederqvist  <ceder@ceder.dyndns.org>

	* Release 2.1.2.

882
883
2003-08-29  Per Cederqvist  <ceder@ceder.dyndns.org>

Per Cederqvist's avatar
Per Cederqvist committed
884
885
886
887
888
889
890
	Spelling fixes.
	* doc/Protocol-A.texi: Spelling errors fixed.

	Makefile fix.
	* doc/Makefile.am (DISTCLEANFILES): Added protocol-a-current.txt,
	protocol-a-recommended.txt and protocol-a-full.txt.

891
892
893
894
895
896
897
898
899
900
901
902
903
904
	Release administrativa.
	* configure.in: Set version 2.1.2.
	* versions (SERVER-VERSION): Set to 2.1.2.
	(SERVER-COMPAT-VERSION): Set to 20102.
	* doc/Protocol-A.texi (PROTOEDITION): Set to 11.1.
	(VERSION): Set to 2.1.2.
	(Document Edition History): Added an entry for 11.1.  Added
	missing "Distributed with" line for 11.0.
	(Top): Say that this was "first distributed with" a certain
	lyskomd release, not that it "corresponds to" a release.  This
	way, the text is more accurate if a bug-fix release of lyskomd is
	made without updating the Protocol-A.texi file.
	* NEWS: Updated for the 2.1.2 release.
	* README: Mention that the bug 1121 fix will write stuff to the
Per Cederqvist's avatar
Per Cederqvist committed
905
906
907
908
909
	log.  Update the year in the copyright notice.
	* scripts/lyskomd-copyrights: The top-level README file has a
	copyright statement, so don't forget to update that file.  Don't
	update the generated machine-readable grammars.  Don't update the
	data files for bug-1121.exp.
910
911
912
913
914
915
916
917
918
919
920

	Don't allow the garb thread to be starved.  Tune the garb
	parameters.  (Bug 1129).
	* src/server/text-garb.c (garb_callback): Always run the garb, so
	that it cannot be completely starved.
	* src/server/server-config.c (parameters): Changed "Garb busy
	postponement" from 20 to 50 milliseconds.  Changed "Garb timeout"
	from 100 to 0 milliseconds.
	* src/include/kom-types.h (Text_stat): Remove swedish in a comment.
	* doc/lyskomd.texi (Parameters): Updated "Garb busy postponement"
	and "Garb timeout".
921
922
	* src/server/testsuite/lyskomd.0/37.exp: Updated the expected
	timeouts for the garb tuning.
923
924
925
926
	
	Document the garb.  (Bug 194).
	* doc/Protocol-A.texi (Garb): New chapter.
	
927
928
929
930
931
	Check for a potential memory leak when killing a client.
	(Bug 149).
	* src/server/internal-connections.c (kill_client): Check that no
	aux_item_list remains.

932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
	Don't produce overlapping ranges in the read-ranges part of a
	membership.  (Bug 1121).  Make lyskomd fix the errors introduced
	by bug 1121.
	* src/server/membership.c (insert_loc_no): Handle the case where
	adjoining ranges exists properly instead of producing overlapping
	ranges.
	* src/server/ram-parse.c (fparse_read_range_0): Handle the errors
	introduced by bug 1121.  Log an error message if any damage was
	repaired.
	* src/server/testsuite/config/unix.exp (lyskomd_start): New
	argument: db_messages.
	(dbck_run): New argument: extra_lines.
	* src/server/testsuite/lyskomd.0/Makefile.am (EXTRA_DIST): Added
	bug-1121.exp, bug-1121.data and bug-1121.texts.
	* src/server/testsuite/lyskomd.0/bug-1121.exp: Test for bug 1121:
	mark-as-read mishandles read texts in some circumstances.  Also
	test that lyskomd can repair the problems introduced by this bug.
	* src/server/testsuite/lyskomd.0/bug-1121.texts: New file.
	* src/server/testsuite/lyskomd.0/bug-1121.data: New file.

952
953
2003-08-28  Per Cederqvist  <ceder@ceder.dyndns.org>

Per Cederqvist's avatar
Per Cederqvist committed
954
955
956
957
	Reduce the noise in the log.
	* src/server/connections.c (read_from_connection): Don't report
	ETIMEDOUT errors, as they seem to be quite common.

958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
	Generate two now forms of extracted grammars.  Publish them on the
	web.  Mention them in Protocol-A.texi.
	* doc/Protocol-A.texi (Extracted grammar): New appendix that
	discusses the extracted files.
	* doc/Makefile.am (update-www): Depend on protocol-a-full.txt, so
	that checkargs.py is run first.  Copy the generated grammars to
	the web dir.
	(protocol-a-full.txt): New target.
	* doc/checkargs.py: Generate protocol-a-recommended.txt and
	protocol-a-current.txt.
	(prot_a_type.__init__): Initialize __recommended to 0.
	(prot_a_type.use): New argument: recommended.  All callers
	updated.  Set the __recommended flag once a recommended request or
	async uses this type.
	(prot_a_builtin.use_recurse): Ditto.
	(prot_a_type.recommended): New method.
	(lexer.__parse_type): Replaced the protover arguemnt with a
	request object.  All callers updated.
	(lexer.__parse_request_arg): Ditto.
	(generate_stable_output): New argument: filename,
	only_recommended.
	(generate_summary_output): New function.
	* doc/constructs.expected: Updated.

982
983
984
985
986
987
988
989
2003-08-28  Kent Engstrm  <kent@lysator.liu.se>

        Add support for the "html" alternative of mx-refuse-import.
	* run-support/aux-items.conf: Update validation regexp. Also
	set the unique flag to false.
	* doc/Protocol-A.texi (Aux-Item Types): Document "html".
	* doc/constructs.expected: Add @code{html}.

990
991
992
993
994
995
996
997
998
999
1000
2003-08-28  Per Cederqvist  <ceder@ceder.dyndns.org>

	Don't crash if a person has read more than 65535 texts after the
	first unread.
	* src/server/ram-parse.c (fparse_read_range_0): Use int, not
	short, in case a person has read many texts after the first unread
	text.

	Complete the renaming of aux.h.
	* scripts/lyskomd-copyrights: src/server/aux.h has been renamed to
	src/server/aux-no.h.
For faster browsing, not all history is shown. View entire blame