ChangeLog 276 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2002-02-15  Per Cederqvist  <ceder@moria>

	Added support for the "Jubel: public" parameter, that enforces
	the policy that certain texts must be created in public
	conferences.
	* src/server/testsuite/lyskomd.0/25.exp: Test public jubels.
	* src/server/text.c (create_text_check_misc): New argument:
	need_public_jubel.
	(struct jubel): New field: public.
	(register_jubel): New argument: public.
	(ok_to_create_next_text): New result parameter: must_be_public.
	(do_create_text): Check for jubels that must be public.
	* src/server/standalone.c (register_jubel): New argument: public.
	* src/server/server-config.c (jubel): Handle the new "public" form.
	* src/server/manipulate.h (register_jubel): New argument: public.
	* doc/lyskomd.texi (Parameter Types): These are standard types,
	not all legal types.
	(Parameters): Document the "public" forms of the Jubel parameters.
	Mention that there may be several Jubel parameters.

21
22
2002-02-11  Per Cederqvist  <ceder@moria>

23
24
25
26
27
	Don't emit garbage statistics.  (Bug 390).
	* src/server/connections.c (dump_statistics): Don't emit
	statistics for the dummy request used to skip unimplemented
	requests.

28
29
30
31
32
33
34
35
36
37
	Initialize the function_index field a little earlier.
	* src/server/prot-a.c (prot_a_init): Initialize function_index.
	* src/server/internal-connections.c (init_connection): Initialize
	function_index.

	Make fnc-def-init.incl look nicer.  (Bug 381).
	* src/server/fnc-def-init.awk: Make certain that the final entry,
	that is only used to skip all arguments of requests that are not
	implemented, gets a unique number.

38
39
40
41
42
43
2002-02-10  Per Cederqvist  <ceder@moria>

	Bugzilla affects the release procedures.
	* HACKING: Mention that the version number should be added to
	Bugzilla when releases are made.

44
45
46
47
48
2002-01-23  Per Cederqvist  <ceder@ingate.com>

	Added missing include statement.  (Bug 385).
	* src/server/log.c: Include stdlib.h.

49
50
51
52
53
54
55
2002-01-18  Per Cederqvist  <ceder@moria>

	Quote backslashes properly in Texinfo macro calls.  (Bug 376).
	* doc/Protocol-A.texi (create-text-old): Properly quote \n in
	macro call.
	(create-anonymous-text-old): Ditto.

56
57
58
59
60
61
2002-01-03  Per Cederqvist  <ceder@ingate.com>

	Document that ``last-login'' is also updated on logout.
	* doc/Protocol-A.texi (Person Status Types): Don't forget to
	mention that ``last-login'' is also updated on logout.

62
2002-01-01  Per Cederqvist  <ceder@moria>
63
64
65
66
67
68
69
70
71
72
73
74
	
	Check @field{} usage.  (Bug 206).
	* doc/checkargs.py (defined_fields): New variable.
	(undefined_fields): New variable.
	(prot_a_struct.add_field): Handle defined_fields and
	undefined_fields.
	(prot_a_bitstring.add_field): Ditto.
	(lexer.toplevel_bye): Check for undefined fields.
	(lexer.toplevel_field): New method.
	* doc/Makefile.am (check): Removed a fixed FIXME comment.
	* doc/Protocol-A.texi (Future changes): Don't use @field{} when
	talking about stuff that might be a field some day in the future.
75

76
77
78
79
80
81
82
	Check @priv{} usage, and that all implemented Priv-Bits are
	documented, and vice versa.  (Bug 207).
	* doc/Makefile.am (check): Create privbits.tmp.  Check @priv{}
	usage.
	* doc/checkargs.py (lexer.__init__): Load "privbits.tmp".
	(lexer.toplevel_bye): Check Priv-Bits.

83
84
85
	Document the ``change-name'' capability.
	* doc/Protocol-A.texi (Security): Document ``change-name''.

86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
	Remove the unused and undocumented privilege bit ``extern_gw''.
	* src/include/kom-types.h (Priv_bits): Renamed the unused bit
	``extern_gw'' to ``flg7'', and reserve it for future use.
	* src/server/ram-parse.c (fparse_priv_bits): Parse flg7
	instead of extern_gw.
	* src/server/ram-output.c (foutput_priv_bits): Emit flg7 instead
	of extern_gw.
	* src/server/prot-a-parse.c (prot_a_parse_priv_bits): Parse flg7
	instead of extern_gw.
	* src/server/prot-a-output.c (prot_a_output_priv_bits): Emit flg7
	instead of extern_gw.
	* src/server/memory.c (init_priv_bits): Initialize flg7 instead of
	extern_gw.
	* src/server/dbck.c (check_persons): Set Priv_bits flg7 instead of
	extern_gw.

102
103
2001-12-31  Per Cederqvist  <ceder@moria>

104
105
106
107
108
109
110
111
	Fix documentation of error code ``client-is-crazy''.
	* doc/Protocol-A.texi (Error Codes): client-is-crazy is actually
	used, so don't say it isn't.

	Check @errorcode usage.
	* doc/Makefile.am (check): Create files for all error codes that
	are implemented.  Check @errorcode{} usage.  (Bug 205).

112
113
114
115
116
117
118
119
120
121
122
123
124
	Check that all implemented Conf_type bits are documented, and vice
	versa.
	* doc/Makefile.am (check): Don't ignore the reserved bits of
	Conf_type.
	* doc/checkargs.py (prot_a_bitstring.__init__): New method.
	(prot_a_bitstring.add_field): Store the field, and check for
	duplicates.
	(prot_a_bitstring.check_implemented): New method.
	(lexer.__init__): Read conftypes.tmp.
	(lexer.toplevel_bye): Check Extended-Conf-Type.
	(lexer.__parse_userdefined_bitstring): Be prepared that
	prot_a_bitstring.add_field can return an error message.

125
126
127
128
129
130
131
132
133
134
135
136
	Check that all implemented misc-infos are documented, and vice
	versa.
	* doc/Makefile.am (check): Create miscs-numbered.tmp based on the
	contents of kom-types.h.
	* doc/checkargs.py (prot_a_selection.check_implemented): New
	method.
	(prot_a_selection.all_names): New method.
	(lexer.__init__): Check that the same number isn't used twice in
	asyncs-numbered.tmp.  Read miscs-numbered.tmp.
	(lexer.toplevel_bye): Check that all implemented misc-infos are
	documented, and vice versa.

Per Cederqvist's avatar
Per Cederqvist committed
137
138
2001-12-30  Per Cederqvist  <ceder@moria>

Per Cederqvist's avatar
Per Cederqvist committed
139
140
141
142
143
	Code cleanup.  (Bug 346).
	* src/server/aux-items.c (aux_item_default_definition): Removed
	left-over traces of "extended aux-items", a concept that didn't
	scale and was abandoned a long time ago.

Per Cederqvist's avatar
Per Cederqvist committed
144
145
146
147
148
149
150
151
152
153
154
155
	Document supervisors better.
	* doc/Protocol-A.texi (Conferences): State that a person is a
	supervisor of himself, except for the set-supervisor call.

	Fix "make check".
	* doc/constructs.expected: Updated.
	* doc/checkargs.py (lexer.pushback): Pushback @cindex.

	Code cleanup.
	* src/server/aux-items.c (conf_stat_check_add_aux_item_list):
	Removed confusing comment.

Per Cederqvist's avatar
Per Cederqvist committed
156
157
2001-12-29  Per Cederqvist  <ceder@moria>

Per Cederqvist's avatar
Per Cederqvist committed
158
159
160
161
162
163
164
165
	Code cleanup.
	* src/server/aux-items.h, src/server/aux-items.c
	(prepare_aux_item): Now a static function.
	(filter_aux_item_list): Comment updated.

	Fixed typos.
	* doc/Protocol-A.texi (Reformattable Text (text/x-kom-basic)):
	Removed duplicated "as".
Per Cederqvist's avatar
Per Cederqvist committed
166
167
	* src/server/aux-items.c: Fixed typo in comment.

168
169
2001-12-28  Per Cederqvist  <ceder@moria>

170
171
172
173
	Talk about character sets.  (Bug 339).
	* doc/Protocol-A.texi (Simple Data Types): Talk a little about
	character sets under HOLLERITH, without saying anything definite.

174
175
176
177
178
179
180
181
182
183
	Check for __attribute__((__noreturn__)) support at configuration
	time instead of at compile time.  (Bug 57).
	* src/include/compiler.h: Removed.
	* src/include/Makefile.am (noinst_HEADERS): Removed compiler.h.
	* configure.in: Check for __attribute__((__noreturn__)).
	* acconfig.h (HAVE_ATTRIBUTE_NORETURN): Added.
	* src/server/lyskomd.h: Don't include compiler.h.  Use
	HAVE_ATTRIBUTE_NORETURN instead of the NORETURN symbol, that
	previously was defined by compiler.h.

Per Cederqvist's avatar
Per Cederqvist committed
184
185
186
187
	Don't include config.h twice.
	* src/libraries/libcommon/kom-errno.c: Don't include both
	<config.h> and "config.h".

188
189
190
191
192
	Don't declare kom_errno and err_stat twice.  (Bug 343).
	* src/server/ramkomd.c (kom_errno): Removed, since this is already
	defined in src/libraries/libcommon/kom-errno.c.
	(err_stat): Ditto.

193
194
195
196
197
198
199
200
201
202
203
	Use ``union result_holder'' instead of ``Result_holder''.  (Bug 337).
	* src/server/connections.h (union result_holder): Result_holder
	typedef removed.
	* src/server/connections.c: Use ``union result_holder'' instead of
	``Result_holder''.
	* src/server/prot-a.h: Ditto.
	* src/server/prot-a.c: Ditto.
	* doc/lyskomd.texi (Adding New Result Types): Use ``union
	result_holder'' instead of ``Result_holder''. 
	(Modifying Output Types): Ditto.

204
205
206
207
208
209
	Use ``union info_datum instead of ``Info_datum''.  (Bug 337).
	* src/server/manipulate.h (ADD_MISC): Use ``union info_datum
	instead of ``Info_datum''.
	* src/include/kom-types.h (union info_datum): Removed Info_datum
	typedef.

210
211
212
213
214
215
216
	Use ``enum kom_err'' instead of ``Kom_err''.  (Bug 335).
	* src/libraries/libcommon/kom-errno.c: Use ``enum kom_err''
	instead of ``Kom_err''.
	* src/server/aux-items.c: Ditto.
	* src/server/ramkomd.c: Ditto.
	* src/include/kom-errno.h (enum kom_err): Removed Kom_err typedef.

217
218
219
220
221
222
223
	Use ``enum res_type'' instead of ``Res_type''.  (Bug 335).
	* src/server/connections.h (enum res_type): Removed the Res_type
	typedef.  The only user updated.
	* doc/lyskomd.texi (Adding New Result Types): Use ``enum
	res_type'' instead of ``Res_type''.
	(Modifying Output Types): Ditto.

224
225
226
227
228
	Use ``enum log_class'' instead of ``Log_class''.  (Bug 335).
	* src/server/logII.c (enum log_class): Removed the Log_class
	enum.
	(log): Use ``enum log_class'' instead of ``Log_class''.

229
230
231
232
233
	Use ``enum log_type'' instead of ``Log_type''.  (Bug 335).
	* src/server/simple-cache.c (enum log_type): Removed the Log_type
	typedef.
	(log_access): Use ``enum log_type'' instead of ``Log_type''.

234
235
236
237
238
	Use ``enum aux_item_validation_type'' instead of
	``Aux_Item_Validation_Type''.  (Bug 335).
	* src/server/aux-items.h (enum aux_item_validation_type): Removed
	the Aux_item_validation_type typedef.  The only user updated.

239
240
241
242
243
244
	Use ``enum call_header'' instead of ``Call_header''.  (Bug 335).
	* src/server/connections.h: Use ``enum call_header'' instead of
	``Call_header''.
	* src/server/prot-a.c: Ditto.
	* src/server/com-h.awk: Don't create the Call_header typedef.

245
246
247
248
249
250
251
252
253
254
255
256
257
258
	Use ``enum access'' instead of ``Access''.  (Bug 335).
	* src/server/manipulate.h: Use ``enum access'' instead of
	``Access''.
	(enum access): Removed ``Access'' typedef.
	* src/server/conference.c: Use ``enum access'' instead of
	``Access''.
	* src/server/membership.c: Ditto.
	* src/server/person.c: Ditto.
	* src/server/text.c: Ditto.
	
	Updated a comment.
	* src/server/session.c (accept_async): Updated a comment that
	talked about ``Async'' instead of ``enum async''.

259
260
261
262
263
264
265
266
	Use ``enum object_type instead of ``Object_type''.  (Bug 335).
	* src/include/kom-types.h (enum object_type): Removed Object_type
	typedef.  All types that contain an enum object_type updated.
	* src/server/aux-items.c: Use ``enum object_type'' instead of
	``Object_type''.
	* src/server/aux-items.h: Ditto.
	* src/server/ram-parse.c: Ditto.

267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
	Use ``enum info_type instead of ``Info_type''.  (Bug 335).
	* src/include/kom-types.h (enum info_type): Removed Info_type
	typedef.  All types that contain an enum info_type updated.
	* doc/Makefile.am (check-doc): Extract ``enum info_type'' instead
	of ``Info_type'' from kom-types.h.
	* src/server/text.c (do_add_recipient): Use ``enum info_type''
	instead of ``Info_type''.
	(send_async_sub_recipient): Ditto.
	(remove_misc_item): Ditto.
	(create_text_add_miscs): Ditto.
	(send_async_add_recipient): Ditto.
	(add_recipient): Ditto.
	* src/server/send-async.h, src/server/send-async.c
	(async_new_recipient): Use ``enum info_type'' instead of
	``Info_type''.
	(async_sub_recipient): Ditto.
	* src/server/ram-parse.c (fparse_misc_info): Use ``enum info_type''
	instead of ``Info_type''.
	* src/server/prot-a-send-async.h, src/server/prot-a-send-async.c
	(prot_a_async_new_recipient): Use ``enum info_type'' instead of
	``Info_type''.
	(prot_a_async_sub_recipient): Ditto.
	* src/server/memory.c (clear_text_stat): Use ``enum info_type''
	instead of ``Info_type''.
	* src/server/manipulate.h (ADD_MISC): Use ``enum info_type''
	instead of ``Info_type''.
	* src/include/services.h (add_recipient): Use ``enum info_type''
	instead of ``Info_type''.

	Code cleanup.
	* src/server/conference.c: Removed an obsolete comment.

299
300
2001-12-28  Per Cederqvist  <ceder@ingate.com>

301
302
303
304
	Fixed the specification of idle-time.  (Bug 197).
	* doc/Protocol-A.texi (Session Information): The idle-time is
	affected only by the user-active request, not by any request.

305
306
307
308
	Use "C" environment when sorting test output (Bug 330).
	* doc/Makefile.am (check-doc): Set LANG, LC_ALL, LC_COLLATE and
	LC_CTYPE to "C" when running sort and uniq.

309
310
311
312
313
314
315
316
317
318
319
	BUG and BUGS comments converted into FIXMEs and entered into
	Bugzilla.  (Bug 336).
	* src/server/membership.c (sub_member): Obsolete BUGS comment
	removed.
	* src/server/ram-parse.c: BUGS comment converted into FIXMEs and
	entered into Bugzilla.
	* src/server/prot-a-parse.c: BUG comment converted into FIXME and
	entered into Bugzilla.
	* src/server/conference.c: BUG and BUGS comments converted into
	FIXMEs and entered into Bugzilla.

320
321
2001-12-22  Per Cederqvist  <ceder@moria>

322
323
324
325
326
327
328
329
330
331
332
	Use ``enum async'' instead of ``Async''.  (Bug 335).
	* src/server/session.c (accept_async): Use ``enum
	async'' instead of ``Async''.
	* src/server/prot-a-send-async.c (async_header): Use ``enum
	async'' instead of ``Async''.
	* src/server/internal-connections.c (init_connection): Use ``enum
	async'' instead of ``Async''.
	* src/server/async.h (enum async): Removed the Async typedef.
	* doc/lyskomd.texi (Adding Asynchronous Messages): Use ``enum
	async'' instead of a typedef.

333
334
335
336
337
338
339
340
341
342
343
	The check for supervisor in modify_conf_info was broken.  
	(Bug 309).
	* src/server/conference.c (modify_conf_info): Fix typo: use
	conf->supervisor instead of conf->super_conf.
	* src/server/testsuite/lyskomd.0/24.exp: Check for bug 309.  Bug
	334 was found while writing this test case; setup_xfail for it.

	Fix typo in documentation.
	* doc/Protocol-A.texi (modify-conf-info): Fixed typo: changed
	"text" to "conference".

344
345
346
347
348
349
350
	Be clearer about the default prefix.  (Bug 306).
	* doc/lyskomd.texi (Parameter Types): Be clearer about the fact
	that ``Prefix:'' overrides the compile-time default.
	(Parameters): Ditto.  Added a footnote for the first path that
	reiterates this fact.
	(DBCK Files): Added a missing colon.

351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
	Document super-conf better, and simplify the rules slightly.
	Document permitted-submitters slighlty more.  (Bug 310).
	* doc/Protocol-A.texi (Conferences): Added a reference to
	``Recipients of comments'' under the explanation of rd-prot.
	(Conference Status Types): Document super-conf properly.  It has
	two different uses.
	(set-permitted-submitters): Document what it means when
	``permitted-submitters'' is zero, and that that setting is the
	default.
	(set-super-conf): Added a reference to ``Conference Status
	Types''.
	(The User Area): Spelling error fixed.
	(Recipients of comments): Simplified the rules for super-conf.
	A setting of 0 no longer means anything.  The previous meaning
	wasn't implemented.

367
368
369
370
371
372
373
374
375
376
377
378
379
380
2001-12-13  Per Cederqvist  <ceder@moria>

	Added new aux-item send-comments-to.  (Bug 308).
	* run-support/aux-items.conf: Added send-comments-to [33].
	* src/server/testsuite/lyskomd.0/01.exp: Handle send-comments-to.
	* src/server/testsuite/lyskomd.0/03.exp: Ditto.
	* src/server/testsuite/lyskomd.0/18.exp: Ditto.
	* src/server/testsuite/lyskomd.0/23.exp: Test suite implemented.

	Robustify test suite.
	* src/server/testsuite/config/unix.exp (extracting_expect): Set
	$var to the empty string even on failure, to avoid some TCL
	errors.

381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
2001-12-12  Per Cederqvist  <ceder@moria>

	Code cleanup.
	* src/server/testsuite/lyskomd.0/prot-a-parse-cov.exp: Removed
	trailing blank lines.

	Work on test case for new aux-item send-comments-to.
	* src/server/testsuite/lyskomd.0/23.exp: Check the aux-item
	send-comments-to (33).  This is an early commit of work in
	process.

2001-11-25  Per Cederqvist  <ceder@moria>

	Documentation fixes.
	* doc/Protocol-A.texi (Recipients of comments): Errata from Hans
	Persson and Per Starbck.

398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
2001-11-22  Per Cederqvist  <ceder@moria>

	Documentation clarifications.
	* doc/Protocol-A.texi (Aux-Item Types): Clarify that the address
	part of redirect is a conference number, not a name.  Clarify the
	text for send-comments-to.

2001-11-21  Per Cederqvist  <ceder@moria>

	Add documentation for aux-item send-comments-to.
	* doc/Protocol-A.texi (Article Information): Mention bcc-recpt in
	a few places where only recpt and cc-recpt was mentioned.
	(Aux-Item Types): Document send-comments-to.  (Bug 308).
	(Recipients of comments): New subsection.

413
414
415
416
417
418
419
420
421
2001-11-20  Per Cederqvist  <ceder@moria>

	Document splitkomdb.  Fix its usage message.  (Bug 21).
	* doc/lyskomd.texi (Parameters): Document "Backup export
	directory:".
	(splitkomdb): New chapter.
	* src/server/splitkomdb.c (usage): Added the "-f" option to the
	usage message.

422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
2001-11-18  Per Cederqvist  <ceder@moria>

	Replace internal-services.h with text.h.  Make sure all text in
	the file is in English.  (Bug 150.)
	* src/server/Makefile.am (lyskomd_SOURCES): Removed
	internal-services.h.  Added text.h.
	* src/server/text.h: New file, containing the prototype for
	do_delete_text(), that was moved from internal-services.h.
	* src/server/text-garb.c: Include text.h instead of
	internal-services.h.
	* src/server/text.c: Ditto.
	* src/server/ramkomd.c: Don't include internal-services.h.  It
	isn't used.
	* src/server/internal-services.h: File removed.

437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
2001-11-17  Per Cederqvist  <ceder@moria>

	Added markup for content types.  (Bug 230).
	* doc/Protocol-A.texi (LysKOM Content Types): Added markup for
	content types.
	(Reformattable Text (text/x-kom-basic)): Ditto.
	(Content type specification): Ditto.
	(Document Edition History): Ditto.
	* doc/constructs.expected: Updated.

	Document that the elisp-client has used the wrong content type.
	* doc/Protocol-A.texi (Reformattable Text (text/x-kom-basic)):
	Mention that the elisp client used to enter texts as "x-kom/text"
	instead of "text/x-kom-basic".

452
453
454
455
456
457
2001-11-16  Per Cederqvist  <ceder@moria>

	More Bugzilla references added.
	* src/server/testsuite/lyskomd.0/prot-a-parse-cov.exp: Added
	Bugzilla reference to a FIXME-style comment that wasn't marked.

Per Cederqvist's avatar
Per Cederqvist committed
458
459
460
461
462
463
2001-11-15  Per Cederqvist  <ceder@moria>

	Code cleanup.  (Bug 166).
	* src/server/session.c (accept_async): Removed redundant code.
	* src/server/testsuite/lyskomd.0/03.exp: Comments added.

464
465
2001-11-13  Per Cederqvist  <ceder@moria>

466
467
468
469
470
471
472
473
474
	Change the name of the administrator in the English database.
	Try to load that database from the test suite.
	* db-crypt/db/lyskomd-data-en: Change "Administrator (for) LysKOM"
	into "Administrator (of) LysKOM".  (Bug 13).
	* src/server/testsuite/lyskomd.0/22.exp: Test that the English
	database is loadable.
	* src/server/testsuite/config/unix.exp (lyskomd_start): New
	optional argument: db_suffix.

Per Cederqvist's avatar
Per Cederqvist committed
475
476
477
478
479
480
481
482
	Test suite cleanup.
	* src/server/testsuite/leaks.0/leaks99.exp: Remove redundant
	tests.  The tests in lyskomd.0 automatically check for memory
	leaks, so there is no need to rerun those the tests here.  (Bug
	219).
	* src/server/testsuite/leaks.0/leaks00.exp: Remove obsolete
	comments.  (Bug 218).

483
484
485
486
487
488
489
	Fixed bogus examples in Protocol-A.texi.
	* doc/Protocol-A.texi (query-read-texts): Fixed the example.  It
	was missing both the "position" and "added-at" fields.  (Bug 198,
	reported by Kent.)
	(get-membership): Ditto. (Bug 223).
	* doc/constructs.expected: Updated.

490
491
2001-11-11  Per Cederqvist  <ceder@moria>

492
493
494
495
496
497
498
499
500
501
502
503
504
	Remove some uses of rcs.h that was overlooked 2001-11-04.
	(Bug 140).
	* src/libraries/libansi/memchr.c: Don't include rcs.h.  Remove
	rcsid variable.
	* src/libraries/libansi/memcmp.c: Ditto.
	* src/libraries/libansi/memcpy.c: Ditto.
	* src/libraries/libansi/memset.c: Ditto.
	* src/libraries/libansi/remove.c: Ditto.
	* src/libraries/libansi/strerror.c: Ditto.
	* src/libraries/libmisc/numlist.c: Ditto.
	* src/libraries/libmisc/numlist2.c: Ditto.
	* src/libraries/libmisc/testnumlist.c: Ditto.

505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
	Several files didn't include <config.h>.  (Bug 191).
	* src/libraries/libansi/empty.c: Include <config.h> if
	HAVE_CONFIG_H is defined.
	* src/libraries/libansi/memchr.c: Ditto.
	* src/libraries/libansi/memcmp.c: Ditto.
	* src/libraries/libansi/memcpy.c: Ditto.
	* src/libraries/libansi/memset.c: Ditto.
	* src/libraries/libansi/remove.c: Ditto.
	* src/libraries/libansi/setsid.c: Ditto.
	* src/libraries/libansi/strdup.c: Ditto.
	* src/libraries/libansi/strerror.c: Ditto.
	* src/libraries/libcommon/kom-errno.c: Ditto.
	* src/libraries/libcommon/misc-parser.c: Ditto.
	* src/libraries/libcommon/parser.c: Ditto.
	* src/libraries/libmisc/ldifftime.c: Ditto.
	* src/libraries/libmisc/numlist.c: Ditto.
	* src/libraries/libmisc/numlist2.c: Ditto.
	* src/libraries/libmisc/s-collat-tabs.c: Ditto.
	* src/libraries/libmisc/s-string.c: Ditto.
	* src/libraries/libmisc/testnumlist.c: Ditto.
	* src/server/Makefile.am (version-info.c): Ditto.

527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
	More Bugzilla references added.
	* src/server/testsuite/lyskomd.0/03.exp: Removed obsolete FIXME
	comments.
	* src/server/testsuite/lyskomd.0/06.exp: Ditto.
	* configure.in: Added references to Bugzilla for all FIXME
	comments.
	* src/server/testsuite/l2g.0/09.exp: Ditto.
	* src/server/testsuite/leaks.0/leaks00.exp: Ditto.
	* src/server/testsuite/lyskomd.0/aux-items-cov.exp: Ditto.
	* src/server/testsuite/lyskomd.0/prot-a-parse-cov.exp: Ditto.

	Don't build libcheck.a unless we are running the test suite.
	* src/server/Makefile.am (check_LIBRARIES): This target was
	formerly named noinst_LIBRARIES, but there is no reason to build
	the libcheck.a library unless we are running the checks.
	(all-recursive): Don't depend on libcheck.a.

2001-11-10  Per Cederqvist  <ceder@moria>

	More Bugzilla references added.
	* src/server/testsuite/Makefile.am: Added references to Bugzilla
	for all FIXME comments.

550
551
552
553
554
555
2001-11-09  Per Cederqvist  <ceder@moria>

	More Bugzilla references added.
	* doc/Makefile.am: Added references to Bugzilla for all FIXME
	comments.

556
557
558
559
560
561
2001-11-08  Per Cederqvist  <ceder@moria>

	More Bugzilla references added.
	* doc/Protocol-A.texi: Added references to Bugzilla for all
	FIXME comments.

Per Cederqvist's avatar
Per Cederqvist committed
562
563
2001-11-06  Per Cederqvist  <ceder@moria>

564
565
566
567
568
569
570
571
572
	Code cleanup: Remove all traces of logins_allowed.  (Bug 151).
	* src/server/session.c (login_old): Removed #if 0'd
	code that referenced logins_allowed.
	(login): Ditto.
	* src/server/person.c (create_person_generic): Removed #if 0'd
	code that referenced logins_allowed.
	* src/server/internal-services.h (logins_allowed): Removed
	declaration of this unused variable.

Per Cederqvist's avatar
Per Cederqvist committed
573
574
575
576
577
578
	Code cleanup.
	* src/server/cache-node.c (EMPTY_CACHE_NODE): Don't initialize the
	"snapshot" member.  (Bug 100).
	* src/server/cache-node.h (cache_node): Removed the unused
	"snapshot" member.  (Bug 100).

579
580
2001-11-04  Per Cederqvist  <ceder@moria>

581
582
583
584
585
586
587
	Added bug tracking numbers to the expected failures in the test
	suite.
	* src/server/testsuite/lyskomd.0/14.exp: Added bug tracking
	numbers to the setup_xfail statements.
	* src/server/testsuite/lyskomd.0/20.exp: Added bug tracking
	numbers to the setup_xfail statements.

588
589
590
591
592
593
594
595
596
597
598
599
600
	Removed the unused pom.c and pom.h files.  We don't have explicit
	permission to distribute them under GPL.
	* src/libraries/libmisc/Makefile.am (libmisc_a_SOURCES): Removed
	pom.h.
	* src/libraries/libmisc/pom.h: Removed.
	* src/libraries/libmisc/pom.c: Removed.

	Remove rcs.h and all uses of it.  (Bug 140).
	* src/include/Makefile.am (noinst_HEADERS): Removed rcs.h.
	* src/include/rcs.h: Removed.
	* src/libraries/libcommon/kom-errno.c: Ditto.
	* All files: Don't include rcs.h.  Remove rcsid variable.

601
602
603
604
605
606
	Simplify the code by breaking out loops from do_sub_comment and
	do_sub_footnote.
	* src/server/text.c (remove_misc_item): New function.
	(do_sub_comment): Use it to simplify code.
	(do_sub_footnote): Ditto.  (Bug 186).

607
608
609
610
611
612
613
614
615
616
617
	Simplify the code by unifying do_add_recpt, do_add_cc_recpt and
	do_add_bcc_recpt.  (Bug 190).
	* src/server/text.c (do_add_recipient): New function, that is like
	do_add_recpt, but with an additional Info_type argument that
	specifies what kind of recipient to add.
	(do_add_recpt): Function removed.
	(do_add_cc_recpt): Function removed.
	(do_add_bcc_recpt): Function removed.
	(create_text_add_miscs): Use do_add_recipient.  Simplify code.
	(add_recipient): Ditto.

618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
	Unify several fields in the Info_datum union.  This makes it
	possible to handle recpt, cc_recpt and bcc_recpt by the same code
	in many places, resulting in the removal of approximately 300
	lines of code.  (Bug 139).
	* src/include/kom-types.h (Info_datum): Removed cc_recipient and
	bcc_recipient -- use recipient instead.  Removed comment_to,
	commented_in, footnote_to and footnoted_in, and added text_link
	as a replacement.
	* src/server/text.c (find_recipient): Adjusted to Info_datum
	unification.  Simplified code.
	(is_member_in_recpt): Ditto.
	(do_sub_recpt): Ditto.
	(is_sender): Ditto.
	(filter_secret_info): Ditto.
	(person_text_read_access): Ditto.
	(do_delete_text): Ditto.
	(check_double_subm): Ditto.
	(check_double_comm): Ditto.
	(create_text_check_misc): Ditto.
	(create_text_add_aux): Ditto.
	(is_comment_to): Adjusted to Info_datum unification.
	(is_footnote_to): Ditto.
	(do_add_footnote): Ditto.
	(do_add_comment): Ditto.
	(do_add_bcc_recpt): Ditto.
	(do_add_cc_recpt): Ditto.
	(do_sub_comment): Ditto.
	(do_sub_footnote): Ditto.
	(is_comm_sender): Ditto.
	(create_text_add_miscs): Ditto.
	* src/server/text-garb.c (garb_text): Adjusted to Info_datum
	unification.  Simplified code.
	* src/server/ram-parse.c (fparse_misc_info): Ditto.
	* src/server/ram-output.c (foutput_misc_info): Ditto.
	* src/server/prot-a-parse.c (prot_a_parse_misc_info): Ditto.
	* src/server/prot-a-output.c (prot_a_output_misc_info): Ditto.
	* src/server/membership.c (add_rec_time): Ditto.
	* src/libraries/libcommon/misc-parser.c (parse_next_misc):
	Adjusted to Info_datum unification.
	* src/server/dbck.c (is_comment_to, is_commented_in) 
	(is_footnote_to, is_footnoted_in): Adjusted to Info_datum
	unification.
	(is_recipient): Adjusted to Info_datum unification.  Simplified
	code.

663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
2001-11-03  Per Cederqvist  <ceder@moria>

	Add references to Bugzilla for all relevant FIXME comments, and
	remove the others.  All FIXME comments now use the same format.
	* src/server/aux-items.c: Added references to Bugzilla for all
	FIXME comments.
	* src/server/conference.c: Ditto.
	* src/server/conf-file.c: Ditto.
	* src/server/dbck.c: Ditto.
	* src/server/disk-end-of-atomic.c: Ditto.
	* src/server/internal-connections.c: Ditto.
	* src/server/internal-services.h: Ditto.
	* src/server/local-to-global.c: Ditto.
	* src/server/person.c: Ditto.
	* src/server/prot-a-parse.c: Ditto.
	* src/server/regex-match.c: Ditto.
	* src/server/server-config.c: Ditto.
	* src/server/simple-cache.c: Ditto.
	* src/server/text-garb.c: Ditto.
	* src/server/updateLysKOM.c: Ditto.
	* src/server/admin.c: Removed obsolete FIXME comments.
	* src/server/cache-node.c: Ditto.
	* src/server/log.c: Ditto.
	* src/server/session.c: Removed obsolete FIXME comments.  Added
	references to Bugzilla for all remaining FIXME comments.
	* src/server/text.c: Ditto.
	* src/libraries/libmisc/numlist.c: Use FIXME instead of "+++" to
	note stuff that needs fixing.  Don't enter these things into
	Bugzilla, since numlist.c isn't used.

	Remove unneeded casts.
	* src/server/ram-parse.c (fparse_aux_item_link): Removed unneeded
	cast.
	* src/server/prot-a.c (prot_a_parse_packet): Removed unneeded
	cast.

	Log warning messages for two conditions that should never occur.
	* src/server/membership.c: Added references to Bugzilla for all
	FIXME comments. 
	(access_perm_helper): Log a warning if viewer_p == NULL.
	* src/server/connections.c: Added references to Bugzilla for all
	FIXME comments.
	(logout_client): Log a warning message if active_connection != NULL.

2001-10-29  Per Cederqvist  <ceder@moria>

	* src/libraries/libansi/setsid.c (setsid): Updated a comment.
	(rcsid): Removed.

712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
2001-10-28  Per Cederqvist  <ceder@moria>

	Make more symbols private to aux-items.c.
	* src/server/aux-items.h (aux_item_add_perm): Now static; removed
	from this file.
	(find_aux_item_definition): Ditto.
	(find_aux_item_index): Ditto.
	(find_aux_item): Ditto.
	* src/server/aux-items.c (simple_aux_item): Added a cast for the
	name.
	(find_aux_item_definition): Added static modifier.
	(find_aux_item_index): Ditto.
	(aux_item_add_perm): Ditto.
	(find_aux_item): Ditto.
	(aux_item_trigger_mirror_faq): Ditto.
	(aux_item_trigger_link_item): Ditto.
	(aux_item_validate_existing_text): Ditto.
	(aux_item_trigger_mark_text): Ditto.
	(aux_item_trigger_unmark_text): Ditto.

	Code cleanup.
	* src/server/prot-a-parse.c (prot_a_parse_misc_info): Removed a
	couple of unnecessary casts.

	Enter "Future Changes" notes into Bugzilla.
	* doc/Protocol-A.texi (Future changes): Entered all future changes
	into Bugzilla.  Refer to Bugzilla.  (Bug 131).
	* doc/constructs.expected: Updated.

	Handle @w{} in Protocol-A.texi, and refine the checkargs.py.
	* doc/checkargs.py (lexer.pushback): New function.  Use it for @w.
	Also use it, intstead of lexer.ignore, for @code, @uref,
	@footnote, @email, @asis, @samp, @pxref, @var, @emph, @xref,
	@badspell, @holl and @file.
	(lexer.__read_arg): Handle nested braces properly.
	* doc/Protocol-A.texi (Future changes): Fix markup error.

749
750
2001-10-27  Per Cederqvist  <ceder@moria>

751
752
753
754
755
756
	Fixed the documentation of the user area.
	* doc/Protocol-A.texi (The User Area): The documented format was
	not the one used by the elisp-client and kom++.  Updated the
	documentation to the current practice.  (Bug 97).
	(Future changes): Added a link to Bugzilla for one of the ideas.

757
758
759
760
761
762
763
	The TODO list is now moved to Bugzilla @ Lysator.
	* README (Contact information): Mention
	http://bugzilla.lysator.liu.se/.
	* doc/IDEAS: All items are now moved to Bugzilla.
	* TODO: All unfixed items are now moved to Bugzilla.
	* HACKING: Mention bug 77 (removal of man-pages).

764
765
766
767
768
769
770
771
2001-10-26  Per Cederqvist  <ceder@moria>

	Use difftime() to subtract time_t values.
	* src/server/rfc931.c (get_real_username): Use difftime() instead
	of '-'.  (Bug 103).
	* src/server/dbck-cache.c (timerdiff): The tv_usec part of the
	timeval is ignore.  Added a comment documenting that that is OK.

772
773
774
775
776
777
2001-10-04  Per Cederqvist  <ceder@moria>

	* TODO (BUGZILLA-MARKER): Start to move stuff to
	http://bugzilla.lysator.liu.se/.  Everything above the marker is
	copied into that bug reporting system.

778
779
2001-09-30  Per Cederqvist  <ceder@moria>

780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
	* Release 2.0.5.

	Release administrativa.
	* configure.in: Set version 2.0.5.
	* versions (SERVER-VERSION): 2.0.5.
	(SERVER-COMPAT-VERSION): 20005.
	* NEWS: Documented 2.0.5.
	* doc/Protocol-A.texi (Document Edition History): Document edition
	10.5.

	Doc fix.
	* doc/lyskomd.texi (Aux-Item Definition File): Define what is
	meant by "owner" for the owner-delete property.

	Expand the test suite.
	* src/server/testsuite/lyskomd.0/21.exp: Test owner-delete
	handling, currently only on conferences.

798
799
800
801
802
803
804
805
806
807
808
809
810
	Release preparations.
	* README: Updated required version of Dejagnu.  Say that it needs
	TCL and expect, and add URL:s to them.
	* HACKING: Updated required versions for automake and autoconf.
	Mention Python and DejaGnu.

	The validate regexp for mx-date allowed junk before and after the
	time.
	* run-support/aux-items.conf (mx-date): Anchor the regexp.
	Reported by Per Starbck.
	* src/server/testsuite/lyskomd.0/20.exp: Added tests for the
	syntax of the mx-date aux-item.

Per Cederqvist's avatar
Per Cederqvist committed
811
812
2001-09-29  Per Cederqvist  <ceder@moria>

813
814
815
816
817
818
819
820
821
822
	Write tests for aux-items 32 and 10100-10104, and discover a minor
	conference number leak.
	* src/server/testsuite/lyskomd.0/20.exp: Write tests for aux-items
	32 and 10100-10104.
	* src/server/person.c (create_person_generic): This can leak
	conference numbers.  Write a comment about it.
	* src/server/conference.c (do_create_conf): Ditto.
	* doc/lyskomd.texi (Adding Aux-Item Types): Talk more about test
	cases.

823
824
825
826
827
828
829
830
831
832
833
834
835
	Write test cases for aux-item 31 (canonical-name), and fix a bug
	in the validate regexp.
	* src/server/testsuite/lyskomd.0/Makefile.am (EXTRA_DIST): Added
	20.exp.
	* run-support/aux-items.conf (canonical-name): Added a missing "?"
	to the validate regexp: the port number part should be optional.
	* src/server/testsuite/lyskomd.0/20.exp: New file that is intended
	to check aux-item 31, 32 and 10100-10104.  Tests for aux-item 31
	are written now.

	Cleanup.
	* src/server/testsuite/lyskomd.0/13.exp: State what this test is
	about.
836
837
838
	* src/server/testsuite/lyskomd.0/03.exp: Removed an unneeded
	"sleep 2" and some disabled code that is no longer needed.  Mark
	where letterbox auxitems should be added.
839

Per Cederqvist's avatar
Per Cederqvist committed
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
868
869
870
	Fix release lint.
	* src/server/testsuite/lyskomd.0/Makefile.am (MOSTLYCLEANFILES):
	Added aux-items-18.conf.
	(EXTRA_DIST): Added regexp-match-cov.exp.
	* src/server/testsuite/lyskomd.0/18.exp (copy_aux): New function.
	Use built-in TCL support instead of system "cp ..." to copy
	files.  Remove the target file before copying a file to it, to
	avoid permission problems.  Use copy_aux everywhere that
	aux-items-18.conf was created.
	* src/server/testsuite/Makefile.am (EXTRA_DIST): Added l2g.0/12.exp
	(MOSTLYCLEANFILES): Added usage.all.
	* src/server/Makefile.am (MOSTLYCLEANFILES): Added version-info.c
	and prot-a-parse-arg.c.
	(nodist_lyskomd_SOURCES): New target.
	(nodist_dbck_SOURCES): New target.
	(NODIST_PROTA): New variable.  Moved prot-a-parse-arg.c from PROTA
	to this variable.
	(NODIST_GENOBJS): New variable.  Moved version-info.c from
	DISKOBJS to this variable.
	(NODIST_DISKOBJS): New variable.
	(NODIST_DBCK): New variable.  Moved version-info.c from DBCK to
	this variable.
	* src/libraries/libansi/Makefile.am (MOSTLYCLEANFILES): Added
	*.da, *.bb, *.gcov and *.bbg.
	* run-support/Makefile.am (EXTRA_DIST): Added aux-items.conf.
	(uninstall-local): Remove config, but only if it isn't modified.
	* doc/Makefile.am (MOSTLYCLEANFILES): Added *.tmp.
	(EXTRA_DIST): Added checkargs.py and constructs.expected.
	* db-crypt/db/Makefile.am (uninstall-local): New target.  Remove
	lyskomd-data and lyskomd-texts, but only if they are unmodified.

871
872
2001-09-23  Per Cederqvist  <ceder@moria>

Per Cederqvist's avatar
Per Cederqvist committed
873
874
	* HACKING: Run extended tests as part of the release process.

875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
	Fixed a bug that caused async-new-recipient to not be sent in some
	cases when passive memberships were involved.
	* src/server/text.c (is_member_in_recpt): Added patch by Joel
	Rosdahl so that bcc-recpt are really skipped over instead of
	producing false negatives -- a later cc-recpt or recpt can now
	produce a positive answer.
	* src/server/testsuite/lyskomd.0/gen-19.py: New file.  This is
	mostly a copy of gen-15.py, but changed so that combinations of
	passive and active memberships are tested.
	* src/server/testsuite/lyskomd.0/Makefile.am (check_DATA): Added
	19.exp.
	(19.exp): New target.
	(EXTRA_DIST): Added 16.exp, 17.exp, 18.exp, 19.exp and gen-19.py.

	Add progress message on slow tests.
	* src/server/testsuite/lyskomd.0/gen-15.py: Added some
	documentation.
	(simple_create_delete): Print progres messages when running
	extended tests.
	(simple_create_add_delete): Likewise.

Per Cederqvist's avatar
Per Cederqvist committed
896
897
	Re-enable all tests.
	* src/server/testsuite/lyskomd.0/01.exp: Enable some matching that
898
899
	David Byers commented out yesterday.  The test works for me.  The
	re-enabled lines are marked with a "NOTE:" comment.
Per Cederqvist's avatar
Per Cederqvist committed
900
901
	* src/server/testsuite/lyskomd.0/03.exp: Ditto.

902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
	Port to DejaGnu 1.4.2/TCL 8.3/expect 5.32.2.
	* src/server/testsuite/lyskomd.0/14.exp: Use "*-*-*" instead of
	"*" as argument to setup_xfail, as required by DejaGnu 1.4.2.
	* src/server/testsuite/config/leaks.exp (startup_leaks): Don't use
	variable substitution in default arguments.  It doesn't work.

	Port to Python 2.1.
	* src/server/testsuite/tcpconnect.py: Use string.replace instead
	of regsub.gsub.

	Port to autoconf 2.52/automake 1.5.
	* doc/Makefile.am: Stop complaints from automake by using "##"
	instead of "#" as comment leader in commands.
	* configure.in: Adjusted to autoconf 2.52: AC_INIT now takes
	package name and version as arguments.  Use AC_CONFIG_SRCDIR.  Use
	AC_HELP_STRING to format help strings.  Use CMOD_CHECK_CC_OPT
	instead of CMOD_COMPILER_CC_ACCEPTS.  Use AC_CONFIG_FILES.
	* acinclude.m4 (CMOD_COMPILER_CC_ACCEPTS): Removed.
	(CMOD_CHECK_CC_OPT): New macro.

Per Cederqvist's avatar
Per Cederqvist committed
922
923
924
925
926
927
2001-09-22  Per Cederqvist  <ceder@lysator.liu.se>

	Code cleanup.
	* src/server/updateLysKOM.c (checkstatus): Use sizeof(lbuf)
	instead of 80.

928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
2001-09-22  Per Cederqvist  <ceder@moria>

	Document the "owner-delete" aux-item configuration parameter.
	* doc/lyskomd.texi (Aux-Item Definition File): Document
	owner-delete.

	Back out the patch from Joel Rosdahl for now.
	* src/server/text.c: Back out a patch from Joel Rosdahl that was
	included in the last commit by David Byers.  The patch is probably
	good, but there was no changelog entry, and (more importantly) I
	want to write test cases that illustrates the problem before
	applying the fix.

	Whitespace fixes.
	* src/server/aux-items.c (check_delete_aux_item_list): Indentation
	fixes.
	(aux_inherit_items): Indentation fix.
David Byers's avatar
David Byers committed
945

946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
2001-09-22  David Byers  <davby@ida.liu.se>

	Port the test suite to a modern dejagnu.
	* src/server/testsuite/config/unix.exp (l2g_start): Use
	exp_continue instead of continue -expect.
	(lyskomd_start, lyskomd_fail_start, dbck_run): Ditto.
	* src/server/testsuite/lyskomd.0/11.exp: Use exp_continue instead
	of continue -expect.

	Test suite fixes.
	* src/server/testsuite/lyskomd.0/01.exp: Expect aux-item 31, 32
	and 10100-10104 to exist.
	* src/server/testsuite/lyskomd.0/03.exp: Ditto.
	* src/server/testsuite/lyskomd.0/18.exp: Ditto.

	Added the "owner-delete" aux-item configuration parameter.
David Byers's avatar
David Byers committed
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
	* src/server/aux-items.c (check_delete_aux_item_list): Rewrote
	check for delete permissions as multiple if-elseif statements
	instead of a compound expression, 'cause the compound expression
	was getting just a little bit difficult to understand.
	* run-support/aux-items.conf (redirect): Set owner-delete.
	(x-face): Ditto.
	(pgp-public-key): Ditto.
	(e-mail-address): Ditto.
	(faq-text): Ditto.
	(allowed-content-type): Ditto.
	* src/server/text.c (modify_text_info): Added author as owner
	argument to check_delete_aux_item_list.
	* src/server/admin.c (modify_system_info): Added zero as owner
	argument to check_delete_aux_item_list.
	* src/server/aux-item-def-parse.y (assign): Added owner-delete.
	* src/server/aux-items.c (empty_aux_item_definition): Added
	value for owner_delete.
	(simple_aux_item): Ditto.
980
981
982
	* src/server/aux-items.h (struct Aux_item_definition_s): Added
	owner_delete field after may_not_delete.
	(check_delete_aux_item_list): Added owner parameter.
David Byers's avatar
David Byers committed
983
984
985
986
987
988
	* src/server/aux-items.c (check_delete_aux_item_list): Add owner
	parameter. Check owner_delete to see if object owner may delete
	item.
	* src/server/conference.c (modify_conf_info): Pass conference
	supervisor to check_delete_aux_item_list.

989
990
991
992
993
994
995
2001-09-22  Per Cederqvist  <ceder@moria>

	Document that clients should allow conferences to be looked up by
	number.
	* doc/Protocol-A.texi (VERSION): Bugfix: set to 2.0.4, not 1.0.4.
	(Client-side name expansion): New node.

996
997
2001-05-24  Per Cederqvist  <ceder@moria>

998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
	* Protocol-A.texi 10.4 released.

	Added new aux-items to aux-items.conf.
	* run-support/aux-items.conf: Added canonical-name [31],
	mx-list-name [32] mx-mime-belongs-to [10100], mx-mime-part-in
	[10101], mx-mime-misc [10102], mx-envelope-sender [10103] and
	mx-mime-file-name [10104].

	Fix "make check".
	* doc/checkargs.py (lexer.ignore): Ignore @file and @TeX.

1009
1010
	New aux-items: canonical-name and mx-list-name.  Two cross
	references added.
1011
1012
	* doc/Protocol-A.texi (Aux-Item Types): Added canonical-name [31]
	and mx-list-name [32].
1013
1014
1015
	(Predefined Aux-Item Types): Added a cross reference to Aux-Item
	Types.
	(query-predefined-aux-items): Likewise.
1016
	(Document Edition History): Document edition 10.4.
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029

2001-05-23  Per Cederqvist  <ceder@moria>

	Fix the update-www target in doc.
	* doc/Makefile.am (protocol-a.html): New target.
	(update-www): Give up on DVI and PDF.  texinfo.tex is currently
	too broken for my macro usage.  Fix the generation of HTML and
	Info for the web page.

	Texinfo tweaking.
	* doc/Protocol-A.texi (Preface): Rearrange conditionals so that
	some duplicated text can be removed.

1030
1031
2001-05-20  Per Cederqvist  <ceder@moria>

1032
	The documentation for the old-pwd argument to set-passwd was
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
	wrong.
	* doc/Protocol-A.texi (set-passwd): old-pwd must match the
	password of the currently logged in person, not of the person
	whose password is being changed.

	Texinfo tweaking.
	* doc/Protocol-A.texi (Top): Fix braino ("protocol" -> "request").
	(get-session-info-ident): Fix TeX complaints.
	(map-created-texts): Likewise.
	Remove trailing @c in macro blocks.  They are not needed, and they
	do some harm.
	(daemon): Move macro definition to avoid using @badspell before
	that macro is defined.

Per Cederqvist's avatar
Per Cederqvist committed
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
2001-05-17  Per Cederqvist  <ceder@moria>

	More Protocol-A.texi tweaks.
	* doc/Protocol-A.texi (Top, Concepts, The Aux-Item List) 
	(Fundamentals, LysKOM Data Types, Who Information) 
	(Protocol Requests, Asynchronous Messages, Common Commands): Menu
	descriptions added.
	(get-text): @badspell added in example.
	(Who Information): These types are all obsolete.  Almost.
	(Client-Server Dialog): Mention asynchronous messages.

Per Cederqvist's avatar
Per Cederqvist committed
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
2001-05-13  Per Cederqvist  <ceder@moria>

	Spell-check Protocol-A.texi.
	* doc/Makefile.am (check-doc): Ignore @holl and @badspell.
	* doc/checkargs.py (lexer): Ignore @badspell, @holl and @daemon.
	* doc/Protocol-A.texi: Added spell-ignore and spell-end-ignore
	about several regions where spell checking doesn't make sense.
	Removed rcsid line.  Added ispell magic after @bye.  Several
	spelling errors fixed.
	(daemon, badspell): New macros.  Use them where appropriate.
	(holl): New macro.  Change all examples of Hollerith-coded strings
	to use this.
	(re-z-lookup): Fixed broken length of Hollerith string in the
	example.
	* doc/Makefile.am (check-doc): Ignore stuff after @bye.

1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
2001-05-09  Per Cederqvist  <ceder@moria>

	New predefined aux-items: 10100-10104.
	* doc/Protocol-A.texi (Predefined Aux-Item Types): State that
	client-specific aux-items can be redefined as predefined.
	(Client-Specific Aux-Item Types): Likewise.
	(komimportmail Aux-Item Types): Node removed.  Contents moved to
	"Aux-Item Types".
	(Aux-Item Types): Added mx-mime-belongs-to [10100],
	mx-mime-part-in [10101], mx-mime-misc [10102],
	mx-envelope-sender [10103] and mx-mime-file-name [10104].

1086
1087
2001-05-08  Per Cederqvist  <ceder@moria>

1088
1089
1090
1091
1092
1093
	* doc/Protocol-A.texi (Aux-Item Types): Use text/x-kom-basic
	instead of x-kom/basic in the examples.
	(Reformattable Text (text/x-kom-basic)): New name for former 
	"Reformattable Text (x-kom/basic)".  Mention that the type was
	previously known as x-kom/basic.

1094
1095
1096
1097
1098
1099
1100
	Removed a few nodes that contained no information.
	* doc/Protocol-A.texi (Conference Lists (x-kom/conflist)): Empty
	node removed.
	(Only read the most recent N texts): Likewise.
	(Review the last N by FOO to BAR): Likewise.
	(Remote control): Likewise.

1101
1102
2001-05-05  Per Cederqvist  <ceder@moria>

1103
1104
1105
1106
1107
1108
	Update checkargs.py for todays edits of Protocol-A.texi.
	* doc/checkargs.py (lexer.run): It is not OK to reach EOF.
	(lexer.ignore): Ignore @display.
	(lexer.toplevel_bye): Exit when reaching "bye".
	(lexer.__parse_userdefined_types): Ignore @need commands.

1109
1110
1111
1112
1113
1114
1115
	Separate sentences with two spaces, not one, as per the Texinfo
	documentation.
	* doc/Protocol-A.texi: Sentences in Texinfo should end with double
	spaces.  Set sentence-end and sentence-end-double-space in the
	local variables section, and update the entire document with lots
	of scattered whitespace changes.

1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
	Split and move text in Protocol-A.texi to make the generated Info
	file more useful.
	* doc/Protocol-A.texi (LysKOM Data Types): Split into several
	subnodes.  Updated all cross references to point to the relevant
	subnode.
	(Protocol Notation): New node.  Move text here to avoid too much
	text before menus in Info and HTML output.  Describe the syntax of
	call headings.
	(About Asynchronous Messages): New node.  Move text here to avoid
	too much text before menus in Info and HTML output.

1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
	Remove redundancy in the description of error messages.  Fix the
	wording of the error messages that may be sent during connection
	establishment.  Mention that the client can issue several calls at
	once, and that replies are sent in order.
	* doc/Protocol-A.texi (Connecting to the Server): New node,
	containing the first part of the "Client-Server Dialog" node.
	Added a footnote about "Protocol A" and "Protocol B".  Added some
	missing markup.  Don't talk about what happens when a protocol
	other than Protocol A is used.  The error message for an
	unsupported protocol is "%%LysKOM unsupported protocol.", not
	"%%Unsupported protocol".  The error message used when no
	connections are available was lacking the trailing dot.
	(Client-Server Dialog): Much text moved to "Connecting to the
	Server".  Mention that the client can issue several calls without
	waiting for the replies, but that it must read replies when they
	arrive.  Mention that the replies are sent back in the proper
	order, but that clients are wise not to rely on that.  Renamed
	error-no in the error-reply to error-code, to make the document
	more coherent.  Changed the type of error-code to INT32, and
	removed the types Error-No and error-no.  Added the "insane token
	length" and "insane array size" error messages to protocol-error.
	(Error Responses): Node removed.  The old contents were moved into
	"Client-Server Dialog" or discarded because it was redundant.
	(Protocol Error Messages): New name for former "Special Errors".
	Removed "%%No connections left.", since that message is only sent
	during connection establishment.
	(Error Codes): Refer to error-status, not error-code.
	(Future changes): Talk about why giving the server freedom to
	reorder the replies may be beneficial, and how it can be done
	without breaking any clients.

Per Cederqvist's avatar
Per Cederqvist committed
1158
1159
1160
1161
1162
2001-05-04  Per Cederqvist  <ceder@moria>

	Minor Protocol-A edits.
	* doc/Protocol-A.texi (Error Codes): Introductory text added.

Per Cederqvist's avatar
Per Cederqvist committed
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
2001-05-03  Per Cederqvist  <ceder@lysator.liu.se>

	More minor Protocol-A fixes.
	* doc/Protocol-A.texi (Future changes): The mark-as-unread call is
	missing.
	(Error Responses): New name for former "Error Codes".  Moved to
	inside the "Client-Server Dialog" chapter.
	(Special Errors): Moved inside the "Client-Server Dialog" chapter.
	(Error Codes): New name for former "Normal Errors".

1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
2001-05-01  Per Cederqvist  <ceder@moria>

	Some minor Protocol-A.texi fixes.
	* doc/Protocol-A.texi (mark-as-read): Typo fixed: "as" -> "at".
	(create-text): Added missing @misc markup.
	(Name Expansion): Removed the "Case Conversion" heading, as the
	collate table is only relevant for "KOM Conventions" name
	expansion.  Update the information with a link to the
	get-collate-table request.
	(The Misc-Info List): Mention that bcc-recpt are converted to
	cc-recpt only when visible.
	(Client-Server Dialog): Spelling error fixed.  Mention that
	not-implemented works only if the client follows the strict rules
	regarding whitespace in protocol requests.
	(set-conf-type): Name the "four-bit conference type".
	(get-conf-stat-old): This returns a Conference-Old, not a
	Conference.
	(Future changes): Complain about super conferences, the securty
	system, and last-text-read/read-texts.
	
	Move some stuff to appendices in Protocol-A.texi, and move some
	other stuff around.
	* doc/Protocol-A.texi (Concepts): New name for former
	"Introduction".
	(The User Area (x-kom/user-area)): Added a reference to "The User
	Area".
	* doc/Protocol-A.texi (Preface): New name for former "Overview".
	(Notation): Section moved from "Overview" to "Fundamentals".
	(Client-Server Dialog): Section moved from "Introduction" to
	"Fundamentals".
	(Fundamentals): New name for former chapter "Data Types".
	(LysKOM Data Types): Moved from "Data Types" to a separate
	chapter.  All subsections moved up one level.
	(Name Expansion): All subsections moved up one level -- the level
	was wrong.
	(Aux-Item Types, Predefined Aux-Item Types): Moved the list of
	predefined aux-items to the new chapter Aux-Item Types.
	* doc/checkargs.py (lexer): Ignore @appendix.
	* doc/Protocol-A.texi (Document Edition History): Moved to a
	separate appendix.
	(Protocol Version History): Moved to a separate appendix.
	(Name Expansion): Moved to a separate chapter.
	(Writing Clients): Now an appendix, not a chapter.
	(Importing and Exporting E-Mail): Likewise.
	(Articles, LysKOM Data Types): Don't say that the misc-info list
	will be removed in the future.  Move such speculation to a new
	appendix.
	(Future changes): New appendix.
	(Articles): Clarify the discussion about local and global text
	numbers.
	(Persons and Sessions): Make this a @section instead of a
	@subsection to Conferences.

1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
2001-05-01  Per Cederqvist  <ceder@moria>

	Make all types in requests and asynchronous messages clickable in
	HTML.  Prepend @i{Example:} to *all* request examples.  Added a
	missing example.  Avoid @iftex constructs in the document body.
	* doc/Makefile.am (check-doc): Ignore @anchor and @lt.
	* doc/checkargs.py (lexer): Ignore @need, @reqexample and @anchor.
	(lexer.__parse_userdefined_types): Handle @anchor.
	(lexer.__parse_type): Requre @lt markup.
	(lexer.__get_lt_token): New method.
	(lexer.__get_token): Handle the new tokens '{' and '}'.
1237
1238
1239
1240
	(lexer.__parse_userdefined_types): Expect @lt{} markup
	(lexer.__parse_userdefined_struct): Likewise.
	(lexer.__parse_userdefined_selection): Likewise.
	(lexer.__parse_userdefined_enumeration_of): Likewise.
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
	* doc/Protocol-A.texi (@reqexample): New macro.  Use it in front
	of every example of request usage.  Previously, many but not all
	examples were introduced by a @i{Example:} line.  That line is now
	included in the @reqexample macro, together with a "@need 2000"
	statement.
	(IAM, Pell, Kent, presconf): New values, to handle TeX/Info
	incompatibilities regarding Latin-1 characters without having to
	clutter the document with @iftex constructs.  Removed all related
	@iftex constructs in the body of the document.   @ae{} can be used
	in both Info and TeX mode; do so.
	(set-super-conf): Missing example added.
	(Simple Data Types): Add @anchor targets for all types.
	(LysKOM Data Types): Likewise.
	(@lt): New macro.  Use it in all requests and asynchronous
	messages to mark up the types.
1256
1257
	(LysKOM Data Types): Added @lt markup around all types on the
	right hand side.
1258

1259
1260
2001-04-30  Per Cederqvist  <ceder@moria>

1261
1262
1263
1264
1265
1266
1267
1268
	Added macros @asynclink and @asyncdlink.
	* doc/checkargs.py (lexer): Ignore asynclink.
	(lexer.toplevel_asyncdlink): New method.
	* doc/Protocol-A.texi (@asynclink, @asyncdlink): New macros.  Use
	them instead of @link where appropriate.
	(Asynchronous Messages): Use @reqlink instead of @req.
	* doc/Makefile.am (check-doc): Handle @asynclink and @asyncdlink.

1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
	Check documentation of asynchronous messages.
	* doc/Makefile.am (check-doc): Create requests-numbered.tmp.
	Create asyncs-numbered.tmp.  Omit DEBUG_CALLS-only asynchronous
	messages from "async.h".
	* doc/Protocol-A.texi: Create the "am" index for asynchronous
	messages.  Add @amindex and @aarg markup for all asynchronous
	messages, and remove the trailing semicolon in the argument list.
	Merge all indices into one.
	(add-member): Malformed sentence fixed.
	(async-i-am-off, async-i-am-on-obsolete): Mark as obsolete, and
	tell why they are no longer used.
	(async-broadcast): Mark as obsolete.
	(Type Index, Request Index): Removed.
	(Index): Added.
	* doc/checkargs.py (lexer.__init__): Initialize __amindex,
	__defined_asyncs and __implemented_asyncs.
	(lexer): Ignore @defcodeindex and @syncodeindex.
	(lexer.toplevel_node): Check for undocumentet arguments to
	asynchronous messages.
	(lexer.toplevel_findex): Check for @amindex entries in @findex
	nodes.
	(lexer.toplevel_amindex): New method.
	(lexer.__parse_async): New method.
	(lexer.toplevel_aarg): Implemented.
	(lexer.toplevel_bye): Check for unterminated @amindex nodes and
	undocumented asynchronous messages.
	* doc/checkargs.py (lexer.__init__): Read requests-numbered.tmp.
	(lexer.toplevel_findex): Check that the same request name isn't
	used twice.
	(lexer.toplevel_bye): Check that all implemented requests are
	documented.
	(lexer.__parse_request): Check that the proper request number is
	used, and that the request is really implemented.

1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
	Check type definitions, that all types are used, and some related
	stuff.  Renamed ENUMREATION_OF to ENUMERATION-OF.
	* doc/Protocol-A.texi (Simple Data Types): Renamed ENUMERATION_OF
	to ENUMERATION-OF.  Nothing else uses "_".  The only user updated.
	(LysKOM Data Types): Missing semicolon added.
	* doc/checkargs.py (defined_types): New variable.
	(number_suffixed): New function.
	(prot_a_type): New class, with several derived classes.
	(reader.error): Allow the line number to be a string, such as
	'*builtin*'.
	(lexer.__init__): Added 'ENUMERATION-OF' to the set of builtin
	aggregates.  Add builtin types to defined_types.
	(lexer): Ignore @dots{}.
	(lexer.toplevel_bye): Check that all defined types are used.
	(lexer.toplevel_tindex): Pass a list of the @tindex entries to
	__parse_userdefined_types, so that that function can check that
	they are all defined.
	(lexer.__parse_userdefined_types): Implemented.  Several helper
	functions introduced.
	(lexer.__parse_type): Simplified.  Do some error checking and
	bookkeeping.  Return a tuple, so that it is easier for the caller
	to see if an array was used.  All callers updated.
	(lexer.__bad_arg): Accept "reservedX" and "flgX" for numerical
	values of X.
	(lexer.__get_token): Handle the new tokens "::=", "|" and "=".
	Ignore comments (introduced with "!").

2001-04-29  Per Cederqvist  <ceder@moria>

	Minor fixes to the protocol specification.
	* doc/Protocol-A.texi: Use @dots{} instead of "...".
	(Simple Data Types): Use "::=" instead of ":" in two places.
	Added missing @example...@end example markup.  Fixed the SELECTION
	example -- the tail is not optional.

	@reqdlink now works when using TeX.
	* doc/Protocol-A.texi: Added a proper definition of @reqdlink for
	TeX, written by David Byers.  Use "@tex" instead of "@begin tex".
	* doc/checkargs.py (lexer): Ignore @tex.

1343
1344
2001-04-28  Per Cederqvist  <ceder@moria>

1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
	Check case of user-defined types.
	* doc/checkargs.py (lexer.__init__): Set __builtin_types,
	__builtin_aggregates, __builtin_typelike, __tindex_seen and
	__types_used.
	(lexer.__seen_type): New method.
	(lexer.toplevel_tindex): Implement.
	(lexer.__parse_userdefined_types): New method, not yet
	implemented.
	(lexer.__bad_type): Check that the casing rules for user-defined
	types are adhered to.
	* doc/Protocol-A.texi (set-pers-flags): Fixed typo.

1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
	Check @linkhere usage.  Stricter parens checking.
	* doc/checkargs.py (reader.check_paren_null): New name for former
	check_paren_eof.  All callers updated.  Clear __parenstack, so
	that errors are reported only once.
	(lexer.__init__): Initialize __linkhere.
	(lexer.toplevel_node): Check that no @linkhere or closing
	parenthesis are pending.
	(lexer.toplevel_reqdlink, lexer.__assert_no_linkhere) 
	(lexer.toplevel_linkhere): New methods.

1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
	Renamed modify_server_info to modify_system_info, to match
	Protocol-A.texi.
	* src/include/services.h (modify_system_info): New name for former
	modify_server_info().
	* src/server/admin.c: Likewise.
	* src/server/fncdef.txt: Likewise.

	Mark up all requests and fix all references in Protocol-A.texi.
	Check for balanced parenthesis.
	* doc/checkargs.py (reader.parens, reader.rev_parens): New
	constants.
	(reader.__init__): Initialise __parenstack, __errfound and
	__quoted.
	(reader.error, reader.errfound): New methods.
	(reader.ungetc, reader.getc_eofok): Handle quoting and parens
	nesting.
	(reader.check_paren_eof): Report unbalanced parens at EOF.
	(lexer.__init__): Moved __errfound to the reader class.
	(lexer.run): Check for unbalanced parens at EOF.
	(lexer.toplevel_reqlink): Ignore.
	(lexer.toplevel_reqdlink, lexer.toplevel_linkhere): Ignore, for
	now.  We should check nesting et c of these.
	(lexer.toplevel_unmacro): Ignore.
	(lexer.error): Moved the implementation to the reader class.  This
	is only a wrapper.
	* doc/Makefile.am (check-doc): Add @reqlink and @reqdlink to
	requests-@.tmp.
	* doc/constructs.expected: Added "@linkhere{}".
	* doc/Protocol-A.texi: Use @reqlink and @reqdlink where
	appropriate.  Fix lots of malformed @ref, @xref and @pxref
	usages.  Also:
	(@reqlink, @reqdlink, @linkhere): New markup macros.
	(Document Edition History): Added missing @async markup.
	(About Aux-Items): Added missing @field markup.
	(Simple Data Types): Removed an unbalanced close parenthesis.
	(LysKOM Data Types): Added missing @field markup. Removed an
	unbalanced close parenthesis.
	(lookup-name): Added a missing close parenthesis.
	(get-info-old): Added a missing close parenthesis.  This returns
	Info-Old, not Info.
	(create-anonymous-text-old): Added missing @field markup.
	(login): Added missing close parenthesis.
	(local-to-global): Don't use fancy mathemtical notations for
	half-closed intervals.  Added missing @type markup.

2001-04-23  Per Cederqvist  <ceder@moria>

	Don't omit stuff when formatting Protocol-A.texi as HTML.
	* doc/Protocol-A.texi: Use @ifnottex instead of @ifinfo almost
	everywhere that @ifinfo was used.
	(re-z-lookup): Added missing spaces in the
	example.
	(lookup-z-name): Likewise.
	(get-members): Likewise.
	(Protocol Requests): Removed text about "upright text" in
	the replies in the examples, since no such text exists.

2001-04-19  Per Cederqvist  <ceder@moria>

	Fix a couple of Protocol-A.texi errors.
	* doc/Protocol-A.texi (Protocol Requests): Mention that extra
	newlines sometimes are used in the examples.
	(create-person): Language fix.

1431
1432
2001-04-18  Per Cederqvist  <ceder@moria>

1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
	Fix a few more Protocol-A.texi errors.
	* doc/Protocol-A.texi (get-membership-old): Use a "want-read-texts
	: BOOL" argument instead of "mask : BITSTRING(want-read-texts)".
	The result is the same, but using BOOL makes the prototype easier
	to read.  Document the argument more verbosely.
	(get-membership): Do likewise.
	(login): Do likewise for the "invisible" argument.
	(create-anonymous-text-old): Added @misc{} markup.
	* doc/constructs.expected: Updated.

1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
	Fix lots of minor errors in Protocol-A.texi.  Document that the
	invitation membership flag is automatically set in some
	circumstances.
	* doc/checkargs.py (lexer.__bad_arg): Added a missing
	__unget_token to get a better error message.
	* doc/Protocol-A.texi: Fix all @rarg{} arguments that used
	the wrong argument name.  Edit all request prototypes so that the
	consistently use semicolon as an argument delimiter, not an
	argument terminator.  Add missing @rarg{} markup.
	(Protocol Version History): Remove a
	trailing space.
	(get-membership-old): Use @field{read-texts} instead of
	@rarg{read-texts}.
	(get-created-texts): Added missing '->' token.
	(create-anonymous-text): Added @misc{} markup.
	(create-person): Use @priv{create-pers} instead of
	@rarg{create-pers}.
	(modify-system-info): Docuent items-to-delete and items-to-add.
	(add-member): Document type, including the fact that the
	invitation field is sometimes set automatically.

1464
1465
1466
1467
1468
1469
1470
	Check that @rarg{} is used correctly.
	* doc/Makefile.am (check-doc): Depend on info. so that
	checkargs.py is only run on a file that makeinfo can process.
	Run checkargs.py on Protocol-A.texi.
	* doc/checkargs.py: New file.
	* doc/lyskomd.texi: Break overly long lines.

1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
2001-04-16  Per Cederqvist  <ceder@moria>

	Fix comments.
	* src/server/async.h: Don't refer to removed files.
	* src/include/kom-types.h: Likewise.

	* HACKING: There are version numbers in Protocol-A.texi as well.

	Prepare Protocol-A.texi for web publication.  Add and check
	domain-specific markup.
	* doc/Makefile.am (.texi.notab): Check that no lines are more than
	79 characters long.
	(update-www): New target.  This is work in progress and does not
	yet work.
	(Protocol-A.pdf): New target.
	(check): Depend on check-doc.
	(check-doc): New target.  This is work in progress, but it already
	performs several useful sanity checks on Protocol-A.texi.
	* doc/.cvsignore: Ignore *.tmp, Protocol-A.pdf, protocol-a.html,
	and stamp-vti1.
	* doc/constructs.expected: New file, that enumerates the expected
	@-constructs in Protocol-A.texi.
	* doc/Protocol-A.texi (PROTOEDITION, PROTOVER, VERSION): New
	constants.  Use them throughout the document instead of 10.3, 10
	and 1.0.4.  Bump PROTOEDITION to 10.4.  Added an explicit
	permission to process the texi file with TeX.  Ensure that all
	permission notices are equal.  Print all version information on
	the title page.  Moved the contents to the front of the document,
	and avoid printing them in the html document.  Add HTML links to
	Lysator and LysKOM before the first node.
	(Top): Enclose this node in @ifnottext instead of @ifinfo.  Refer
	to the web site.
	(Overview): Include all version numbers and the canonical URL for
	the protocol specification here as well, but only @iftex.
	(Document Edition History): New name for former node "Document
	Revision History".  Use the term "edition" throughout the
	document.  Added a not for edition 10.4.
	(Predefined Aux-Item Types, create-anonymous-text-old)
	(create-anonymous-text, modify-system-info): Get rid of overfull
	hbox messages from TeX.
	(Type Index, Request Index): Use @unnumbered instead of @chapter.
	(all call nodes): Replaced "@unnumberedsubsec Error codes" with
	"@subheading Error codes" so that they are not included in the
	table of contents, and so that the PDF menus work better.
	(Overview, Document Edition History): TeX lint.
	(@req, @aux, @async, @type, @priv, @conftype, @misc, @rarg, @aarg)
	(@errorcode, @field): New Texinfo macros.  Use them where
	appropriate.

1520
1521
1522
1523
1524
1525
1526
2001-04-13  Per Cederqvist  <ceder@lysator.liu.se>

	Register the undocumented "rkom" user-area block.
	* doc/Protocol-A.texi (set-client-version): The client names are
	"registered", not "reserved".
	(The User Area): Registered the "rkom" block.

1527
1528
1529
1530
1531
1532
1533
1534
1535
2001-04-10  Per Cederqvist  <ceder@cendio.se>

	Protocol A: Document the hello string.  Improve the recommended
	algorithm for determining what a client has unread.
	* doc/Protocol-A.texi (Client-Server Dialog): Document the format
	of the hello string.  Fix the example.
	(What do I have unread): Recommend that clients use get-uconf-stat
	instead of get-conf-stat.

Per Cederqvist's avatar
Per Cederqvist committed
1536
1537
1538
1539
1540
1541
2000-11-08  Per Cederqvist  <ceder@lysator.liu.se>

	Typo fixed.
	* README: Fixed typo ("IP address" -> "hostname").  Reported by
	Andreas Ehliar.

1542
1543
2000-09-06  Per Cederqvist  <ceder@lysator.liu.se>

Per Cederqvist's avatar
Per Cederqvist committed
1544
1545
	* Release 2.0.4.

1546
1547
1548
1549
	Remove Y2k bug.
	* src/server/prot-a-output.c (prot_a_output_time): Remove stupid
	Y2k joke.q

1550
1551
1552
1553
	Added missing files to the distribution.
	* src/server/testsuite/lyskomd.0/Makefile.am (EXTRA_DIST): Added
	gen-15.py.

1554
1555
1556
1557
1558
1559
1560
1561
	Test and document SIGWINCH (re-read aux-item.conf).
	* src/server/testsuite/lyskomd.0/18.exp: New file, testing SIGWINCH.
	* src/server/testsuite/lyskomd.0/04.exp: Add $srcdir to the
	front of the aux-item file name when calling lyskomd_start.
	* src/server/testsuite/lyskomd.0/aux-items-cov.exp: Likewise.
	* src/server/testsuite/leaks.0/leaks10.exp: Add $srcdir to the
	front of the aux-item file name when calling startup_leaks.
	* src/server/testsuite/leaks.0/leaks99.exp: Likewise.
1562
1563
	* src/server/testsuite/config/leaks.exp (startup_leaks): Added
	$srcdir to aux-item file.
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
	* src/server/testsuite/config/unix.exp (lyskomd_start): Don't add
	$srcdir to the name of the aux-item file.
	(lyskomd_fail_start): Likewise.
	* doc/lyskomd.texi (Parameters): aux-items.conf is reread when a
	SIGWINCH is received.
	(Signals): Likewise.

	Document the new visibility rules for bcc-recpt.
	* doc/Protocol-A.texi (The Misc-Info List): Fix the description of
	the visibility of bcc-recpt.

	Clarify the documentation for mark-as-read.
	* doc/Protocol-A.texi (mark-as-read): State that it isn't
	necessary for clients to call mark-as-read on deleted texts.

1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
2000-09-05  Per Cederqvist  <ceder@moria>

	Set version numbers.
	* versions (SERVER-VERSION): 2.0.4.
	(SERVER-COMPAT-VERSION): 20004.
	* configure.in: Set version number to 2.0.4.
	* README: Updated for the 2.0.4 release.
	* doc/Protocol-A.texi: This is revision 10.3.
	(Document Revision History): Documented changes for 10.3.

	Various cleanup.
	* doc/lyskomd.texi (Overview): Remove mal-placed plug about the
	cool free software company Cendio Systems.
	* src/server/testsuite/lyskomd.0/gen-15.py (DEBUG): Set to 0.

	Don't leak secret information when telling about the current
	working conference.
	* src/server/testsuite/lyskomd.0/16.exp (assert_0): No longer
	excpect these tests to fail.
	* src/server/session.c (who_is_on): Don't send info about
	secret conferences.
	(who_is_on_ident): Likewise.
	(who_is_on_dynamic): Likewise.
	(get_session_info): Likewise.
	(get_session_info_ident): Likewise.
	(who_is_on_old): Likewise.
	* src/server/send-async.c (async_i_am_on): Don't send info about
	secret conferences.
	* src/server/membership.c (filter_conf_no): New function.
	* src/server/manipulate.h (filter_conf_no): New function.

1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
2000-09-04  Per Cederqvist  <ceder@moria>

	Implement the aux-items recommended-conf and allowed-content-type.
	* src/server/testsuite/lyskomd.0/01.exp: Expect aux-item 29 and 30
	to exist.
	* src/server/testsuite/lyskomd.0/03.exp: Expect aux-item 29 and 30
	to exist.  Give Kelly Talisman two allowed-content-type
	aux-items.  Renumber.
	* run-support/aux-items.conf: faq-text may be set on the server.
	Added recommended-conf and allowed-content-type.
1620
	* src/server/testsuite/lyskomd.0/17.exp: New test.
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
	* doc/Protocol-A.texi (Predefined Aux-Item Types): Added lots of
	things that aux-items can be set on:
	    cross-reference += letterbox
	    redirect += letterbox
	    x-face += letterbox, server
	    alternate-name += letterbox
	    mx-allow-filter += letterbox
	    mx-reject-forward += letterbox
	    allowed-content-type += letterbox, server
	Updated the description of the allowed-content-type aux item.
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717

	Typo fixed.
	* doc/Protocol-A.texi (Protocol Requests): Typo in menu fixed.

	Fix the visibility of bcc-recipients, so that the same rules are
	used everywhere.  Tighten the rules so that secret info cannot
	leak through get-text-stat.
	* src/server/testsuite/lyskomd.0/gen-15.py (text_stat): New
	class.  Rewrite the rest of this file to use it.  Give authors
	special privileges regarding bcc-recpts.
	* src/server/testsuite/lyskomd.0/10.exp: Removed an obsolete
	comment, since this test no longe fails.
	* src/server/testsuite/config/unix.exp (lyskomd_start): The tests
	now require more than 2000 texts.  Give them 20000.
	* src/server/text.c (send_async_sub_recipient): Use
	filter_secret_info() so that the exact same visibility is used by
	async-sub-recipient and get-text-stat.
	(filter_secret_info): Don't allow the author of a text to see
	bcc-recpt which are secret to him.  Simplify the code slightly.
	(send_async_add_recipient): Use filter_secret_info() so that the
	exact same visibility is used by async-add-recipient and
	get-text-stat.

2000-09-02  Per Cederqvist  <ceder@moria>

	Re-indent text.c.  Add a few const qualifiers.
	* src/server/text.c: Code re-indented.
	(count_recipients): const qualifiers added
	to some arguments.  Code simplified.
	(count_footn): Likewise.
	(count_comment): Likewise.
	(text_read_access): Code clarified.
	(delete_text): Likewise.
	(find_recipient): qualifiers added to some arguments.  
	(is_comment_to): Likewise.
	(is_footnote_to): Likewise.
	(submit_to): Likewise.
	(is_member_in_recpt): Likewise.
	(send_async_sub_recipient): Likewise.
	(sender): Likewise.
	(is_sender): Likewise.
	(is_comm_sender): Likewise.
	(check_footn): Likewise.
	(check_comm): Likewise.
	(locate_mark): Likewise.
	(skip_recp): Likewise.
	(recp_sent_by): Likewise.
	(filter_secret_info): Likewise.
	(send_async_deleted_text): Likewise.
	(check_double_subm): Likewise.
	(check_double_comm): Likewise.
	(send_async_new_text_old): Likewise.
	(send_async_new_text): Likewise.
	(send_async_add_recipient): Likewise.
	* src/server/membership.c (access_perm_helper): const qualifiers added
	to some arguments.
	(access_perm): Likewise.
	(locate_membership): Likewise.
	* src/server/dbck.c (locate_membership): const qualifiers added
	to some arguments.
	* src/server/conference.c (is_supervisor): const qualifiers added
	to some arguments.
	(is_strictly_supervisor): Likewise.
	* src/server/manipulate.h: (access_perm): const qualifiers added
	to some arguments.
	(is_supervisor): Likewise.
	(is_strictly_supervisor): Likewise.
	(locate_membership): Likewise.
	* src/server/aux-items.c: Lots of const qualifiers added.
	* src/server/aux-items.h (Aux_item_validation_data): const
	qualifiers added to the item and def members.
	(aux_inherit_items): const qualifiers added to some arguments.
	(aux_item_add_perm): Likewise.
	(prepare_aux_item): Likewise.
	(find_aux_item_definition): Likewise.
	(aux_item_find_trigger): Likewise.
	(aux_item_find_validator): Likewise.
	(find_aux_item): Likewise.
	(filter_aux_item_list): Likewise.
	(delete_aux_item_list): Likewise.
	(undelete_aux_item_list): Likewise.
	(check_delete_aux_item_list): Likewise.

	Test suite cleanup.
	* src/server/testsuite/lyskomd.0/16.exp (assert_0): New proc.  Use
	it to simplify the code.

1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
2000-08-28  Per Cederqvist  <ceder@moria>

	Secret conference numbers can apparently leak from the
	get-session-info and who-is-on family of functions.  Test cases
	added.
	* src/server/testsuite/lyskomd.0/16.exp: Added test cases for 
	async-i-am-on, who-is-on-old, who-is-on, get-session-info,
	who-is-on-ident, get-session-info-ident and who-is-on-dynamic.
	They all leak info about secret conferences.

1728
1729
1730
1731
1732
1733
2000-08-12  Per Cederqvist  <ceder@moria>

	More work on test cases for async messages 14-17.
	* src/server/testsuite/lyskomd.0/gen-15.py: Test simple
	create+add+delete.

1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
2000-08-09  Per Cederqvist  <ceder@moria>

	Start writing test cases for async messages 14-17.
	* src/server/testsuite/lyskomd.0/gen-15.py: New file.  This is
	very far from complete.
	* src/server/testsuite/Makefile.am (SUBDIRS): Added lyskomd.0.
	(EXTRA_DIST): Moved all files in lyskomd.0 to that makefile.
	(check-lyskomd): Depend on check-recursive.
	* configure.in: Remove -Wpointer-arith since it gives a lot of
	false warnings when using glibc-2.1.3 and gcc-2.95.2.  Create
	src/server/testsuite/lyskomd.0/Makefile.
	* src/server/testsuite/lyskomd.0/Makefile.am: New file, mostly
	extracted from ../Makefile.am.
	(15.exp): New target.
	(check_DATA): New target.  Added 15.exp.

1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
2000-08-05  Per Cederqvist  <ceder@moria>

	The dummy_aux_item introduced 2000-05-09 was not properly
	initialized.
	* src/server/prot-a.c (prot_a_init): Initialize
	dummy_aux_item.data and aux_item.data.
	* src/server/internal-connections.c (init_connection): Initialize
	dummy_aux_item.data.
	(kill_client): Check dummy_aux_item.data and aux_item.data.

2000-08-04  Per Cederqvist  <ceder@moria>

	Minor documentation improvement.
	* doc/lyskomd.texi (Parameters): Clarified the warning about
	"Never save".

	Documented the allowed-content-type aux item.
	* doc/Protocol-A.texi (Predefined Aux-Item Types): Added a draft
	description of the allowed-content-type aux item.

1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
2000-05-09  David Byers  <davby@ida.liu.se>

	The server could crash when parsing over-long aux-item lists.
	* src/server/connections.h: Added dummy_aux_item field.
	* src/server/prot-a-parse.c (prot_a_parse_string): 
	(prot_a_parse_aux_item_list): Use dummy_aux_item in client
	structure instead of an auto variable.
	* src/server/connections.c (free_parsed): Clear
	client->dummy_aux_item.

1780
1781
1782
1783
1784
1785
1786
1787
1788
2000-04-28  Per Cederqvist  <ceder@lysator.liu.se>

	The data base was saved even when "Never save: true" was used.
	* src/server/simple-cache.c (cache_sync_all): Return early if
	param.never_save is set, so that the database won't be saved even
	at normal server shutdown.
	* doc/lyskomd.texi (Parameters): Updated the documentation for
	"Never save".

1789
1790
1791
1792
1793
1794
1795
2000-03-13  Per Cederqvist  <ceder@biffen.cendio.se>

	Large garb-nice values could be truncated.
	* src/server/text-garb.c (garb_text): Avoid overflow when
	converting the garb-nice value from days to seconds.  (Suspected
	by Anders ke Carlsson.)

1796
1797
1798
1799
1800
1801
1999-11-20  Per Cederqvist  <ceder@lysator.liu.se>

	Fixed a cut-n-paste error in the protocol spec.
	* doc/Protocol-A.texi (LysKOM Data Types): bcc-recpt is of course
	a Conf-No, not a Text-No.  (Reported by Anders Franzn.)

1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1999-10-28  David Byers  <davby@ida.liu.se>

	* src/server/text.c (send_async_sub_recipient): Don't send
	sub-recipient messages for bcc recipients to users who are not
	members of the bcc recipient.

	* src/server/testsuite/lyskomd.0/06.exp (shutdown_06): Added test
	cases to test async messages when adding and removing BCC
	recipients. 

1999-10-27  David Byers  <davby@ida.liu.se>

	* src/server/ramkomd.c (dump_exit_statistics): Free
	read_config_file
	(main): Save name of configuration file in read_config_file.
	Handle WINCH signal (re-read config file.)

	* src/server/param.h: Added reread_param.
	Added read_config_file

	* src/server/server-config.c: Added reread_param.

1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1999-10-20  Kent Engstrm  <kent@lysator.liu.se>

	Documentation updates w.r.t. e-mail import.
	* doc/Protocol-A.texi (Predefined Aux-Item Types): Introduced some
	hints for client authors and clarified the description of some
	aux-items based on experiences from writing "komimportmail";
	changed definition of mx-in-reply-to to specify that is should
	really be the Message-ID used for threading, regardless of which
	header line that supplied it. Marked mx-allow-filter and
	mx-reject-forward obsolete.
	(komimportmail Aux-Item Types): new node describing
	the aux-items introduced by this importer.
	(Importing and Exporting E-Mail): rewrote most of the chapter,
	using experience from "komimportmail". Removed text about
	export, as it was rather naive.

Kent Engström's avatar
Kent Engström committed
1840
1841
1842
1843
1844
1845
1999-10-12  Kent Engstrm  <kent@lysator.liu.se>

	Documentation fix.
	* doc/lyskomd.texi (Parameters): Moved cross-reference
	to stop newer makeinfo versions from complaining.

1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1999-10-09  David Byers  <davby@ida.liu.se>

	* doc/Protocol-A.texi (Client-Specific Aux-Item Types): Added
	komimportmail to reserved range.

	* run-support/aux-items.conf: Fixed date validation regexp.

1999-08-13  David Byers  <davby@ida.liu.se>

	* doc/Protocol-A.texi (Predefined Aux-Item Types): Changed "of" to 
	"or" in documentation of content-type. The old wording was
	incorrect and conveyed the wrong idea.

Per Cederqvist's avatar
Per Cederqvist committed
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1999-09-19  Per Cederqvist  <ceder@lysator.liu.se>

	Prepare for dbck improvement.
	* src/server/local-to-global.c (add_block_before): New static function.
	(find_block): Return a pointer to the last block instead of a NULL
	pointer if a too large local text number is supplied.
	(l2g_expensive_set): Now fully implemented.
	* src/server/testsuite/l2g.0/12.exp: New file, that tests
	l2g_expensive_set.
	* src/server/testsuite/test-l2g.c (main): Handle l2g_expensive_set.

	Code cleanup.
	* src/server/dbck.c (check_misc_any_recipient): New static function.
	(check_misc_infos): Use it, to avoid repeating the same code
	inline three times.

1875
1876
1999-09-18  Per Cederqvist  <ceder@lysator.liu.se>

Per Cederqvist's avatar
Per Cederqvist committed
1877
1878
1879
1880
1881
	Prepare for dbck improvement.
	* src/server/local-to-global.c (l2g_expensive_set): New function,
	not yet completely implemented.
	* src/server/local-to-global.h (l2g_expensive_set): New function.

</