ChangeLog 291 KB
Newer Older
1
2002-08-02  Per Cederqvist  <ceder@ceder.dyndns.org>
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
	
	Suppress errors from regex.c.  Handle simultaneous runs of lyskomd
	and dbck.
	* src/server/testsuite/lyskomd.supp: New file for valgrind.  This
	contains a suppression for bug 691.
	* src/server/testsuite/config/unix.exp (l2g_start): Pass a log
	file name to the valgrind wrapper.
	(dbck_run): Ditto.
	(spawn_lyskomd): New argument: log file name.  All callers
	updated.  Use the lyskomd.supp valgrind suppressions file.  Pass
	--show-reachable=yes and a log file name to valgrind.
	(check_valgrind): New arguments: logfile, need_leaks and
	need_errs.  All callers updated.
	* src/server/testsuite/Makefile.am (valgrind.wrap): Expect the log
	file name as the first argument.
	(EXTRA_DIST): Added lyskomd.supp.

	Make it possible to run lyskomd without malloc guard areas.
	* configure.in: Added --disable-malloc-guards.  This is useful
	when combined with --with-valgrind, but should not be used in a
	production setting.
	* src/server/ram-smalloc.c: Document our guard areas, and make
	them optional.
	(OVERHEAD): New macro, that computes a size including the guard
	area overhead.  Two versions, depending on if USE_MALLOC_GUARDS is
	defined or not.
	(smalloc): Reindent.  Test USE_MALLOC_GUARDS.
	(sfree): Test USE_MALLOC_GUARDS.
	(srealloc): Test USE_MALLOC_GUARDS.

	Fixed a read past the end of a buffer.
	* src/libraries/libmisc/s-string.c (s_strtol): When a string
	containing only whitespace was passed to s_strtol, s_strtol would
	attempt to read the sign ('+' or '-') past the end of the string.

	Fix the l2g test cases.
	* src/server/testsuite/l2g.0/00.exp: Destroy all structures before
	exit, so that the leak check of valgrind works properly.
	* src/server/testsuite/l2g.0/01.exp: Ditto.
	* src/server/testsuite/l2g.0/02.exp: Ditto.
	* src/server/testsuite/l2g.0/03.exp: Ditto.
	* src/server/testsuite/l2g.0/04.exp: Ditto.
	* src/server/testsuite/l2g.0/05.exp: Ditto.
	* src/server/testsuite/l2g.0/06.exp: Ditto.
	* src/server/testsuite/l2g.0/07.exp: Ditto.
	* src/server/testsuite/l2g.0/08.exp: Ditto.
	* src/server/testsuite/l2g.0/09.exp: Ditto.
	* src/server/testsuite/l2g.0/10.exp: Ditto.
50

51
52
53
	Valgrind refinements.
	* src/server/testsuite/config/unix.exp (spawn_lyskomd): Use
	valgrind.wrap.
Per Cederqvist's avatar
Per Cederqvist committed
54
55
56
57
58
	(l2g_start): Use valgrind.
	(l2g_stop): Check valgrind output.
	(lyskomd_fail_start): Use valgrind.
	(check_valgrind): Ensure that the memory report is seen.
	(dbck_run): Use valgrind.
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
	* src/server/testsuite/Makefile.am (valgrind.wrap): New target.
	Since valgrind can only send the log to a specified file
	descriptor, and expect cannot open a specified file descriptor, we
	have to use a wrapper for valgrind.
	(noinst_DATA): Added
	valgrind.exp.
	(MOSTLYCLEANFILES): Added valgrind-*.log, valgrind.log and
	valgrind.wrap.
	(check-l2g): Depend on valgrind.wrap.
	(check-lyskomd): Ditto.
	(check-leaks): Ditto.

	Plug a memory leak.
	* src/server/aux-items.c (aux_item_definition_cache_regexp): Call
	regfree() when a regex compilation fail, since our
	re_compile_pattern may leave allocated stuff in the buffer.

76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
	Improved valgrind support.
	* configure.in: Remove all remnants of the purify support, since
	it was broken when we switched to automake.  Added valgrind
	support.
	* src/server/testsuite/.cvsignore: Ignore valgrind-*.log.
	* src/server/testsuite/Makefile.am (site.exp): Set valgrind.
	* src/server/testsuite/config/unix.exp: Use the "valgrind"
	variable from site.exp.  It contains a the path name of the
	valgrind binary to use.
	(spawn_lyskomd): Adjust accordingly.  Don't use -v.
	(check_valgrind): New argument: expected_leaks.
	(lyskomd_death): Pass the new optional argument "expected_leaks"
	to check_valgrind.

	Note a memory leak.
	* src/server/testsuite/lyskomd.0/regexp-match-cov.exp: Bug 689 is
	a hard-to-fix memory leak.  Mark it as an expected failure.
	(shutdown): Pass info about expected leaks to lyskomd_death.
94
95
	* src/server/testsuite/lyskomd.0/aux-items-cov.exp: This triggers
	a hard-to-fix memory leak (Bug 689).
96
97
98
99
100
101
102
103
104
105
106

	Shut up valgrind.
	* src/server/memory.c (init_person): Clear the pwd field.  This
	way, we avoid writing junk to the database file, and we make
	valgrind happy.  The junk was never used, so this is not a
	bugfix.

	Test suite fix.
	* src/server/testsuite/lyskomd.0/27.exp: Use idholl where
	appropriate.

107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
	Fix a minor memory leak.
	* src/server/aux-items.c (free_aux_item_definitions): Fixed a
	memory leak.  We have to call regfree() to deallocate stuff within
	the compiled regular expression.  This bug was found with
	valgrind.

	Added some valgrind support.  (Bug 514).
	* src/server/testsuite/config/unix.exp: Handle the VALGRIND
	command line argument.
	(spawn_lyskomd): New proc, that knows how to use valgrind.
	(lyskomd_fail_start): Use spawn_lyskomd.
	(parse_valgrind_leak): New proc.
	(check_valgrind): New proc.
	(lyskomd_death): Call check_valgrind.

2002-08-01  Per Cederqvist  <ceder@ceder.dyndns.org>

	Minor doc fix.
	* doc/Protocol-A.texi (Preface): Fix markup.
	* doc/constructs.expected: Updated.

128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
2002-07-31  Per Cederqvist  <ceder@ceder.dyndns.org>

	Updated send-comments-to [33] so that it now allows an optional
	recipient type.
	* run-support/aux-items.conf: Updated send-comments-to [33].
	* doc/Protocol-A.texi (Aux-Item Types): Ditto.
	* src/server/testsuite/lyskomd.0/23.exp: Refer to 28.exp.
	* src/server/testsuite/lyskomd.0/28.exp: Test the aux-item
	send-comments-to (33) with a specified recipient type.

	More membership visibility tests. 
	* src/server/testsuite/lyskomd.0/27.exp: Test basic visibility of
	a secret conference for the supervisor of a member.  Version 2.0.6
	of lyskomd passes the test as written.

143
144
145
146
147
148
149
2002-07-22  Per Cederqvist  <ceder@ceder.dyndns.org>

	Fix typo in Protocol A example.
	* doc/Protocol-A.texi (re-z-lookup): Fixed ref-id error in
	example.  Thanks to Joorin for pointing it out.
	(Preface): Mention that bugs should be reported via Bugzilla.

Per Cederqvist's avatar
Per Cederqvist committed
150
151
2002-06-22  Per Cederqvist  <ceder@ceder.dyndns.org>

Per Cederqvist's avatar
Per Cederqvist committed
152
153
154
155
156
157
158
159
160
161
162
163
	New membership-related tests.
	* doc/Protocol-A.texi (Person Status Types): Explicitly say that
	the supervisor of a person bypasses the unread-is-secret bit.
	* src/server/testsuite/lyskomd.0/bug-37-4.exp: New test cases.
	Like bug-37.exp, but let the observer be supervisor of all
	conferences, and let all memberships be secret.
	* src/server/testsuite/lyskomd.0/bug-37-3.exp: New test cases.
	Like bug-37.exp, but let the observer be supervisor of all
	conferences.
	* src/server/testsuite/lyskomd.0/bug-37-2.exp: Don't set the flg3
	flag of the Personal-Flags.

Per Cederqvist's avatar
Per Cederqvist committed
164
165
166
167
168
	Removed a comment.
	* src/server/conference.c (set_conf_type): David Byers is no
	longer a supporter of secret persons, so remove a comment that
	states that he is.

169
170
2002-06-15  Per Cederqvist  <ceder@ceder.dyndns.org>

171
172
173
174
175
176
177
178
179
180
	get_unread_confs no longer censors rd-prot conferences. (Bug 596).
	* src/server/membership.c (get_unread_confs): It is sufficient
	that the viewer has read_protected access to a conference for it
	to be returned.
	* src/server/testsuite/lyskomd.0/bug-37.exp: Bug 596 is fixed.
	This also causes two other tests to fail in a different way.
	* src/server/testsuite/lyskomd.0/bug-37-2.exp: Adjusted to the
	resolution of bug 596.  This only affects how certain tests
	fails.

181
182
183
184
185
186
187
188
	Don't lose the array size of get-membership and
	get-membership-old.  (Bug 598).
	* src/server/membership.c (copy_public_confs): Removed the
	"copy_secret" argument.  Simplify the code, and don't lose the
	array size just because want_read is false.
	* src/server/testsuite/lyskomd.0/bug-598.exp (want_array_size):
	Don't expect failure.

189
190
191
192
193
194
195
	Added test cases for bug 598: get-membership and
	get-membership-old sometimes drops the array size.
	* src/server/testsuite/lyskomd.0/bug-598.exp: New file.  Test 
	bug 598.
	* src/server/testsuite/lyskomd.0/bug-598-2.exp: A version of the
	bug-598.exp test with unread-is-secret set.

Per Cederqvist's avatar
Per Cederqvist committed
196
197
198
199
	Fixed minor doc error.
	* doc/Protocol-A.texi (get-membership-old): Fixed error in
	description of index-out-of-range.
	(get-membership): Ditto.
200
	* doc/constructs.expected: Updated.
Per Cederqvist's avatar
Per Cederqvist committed
201

202
203
204
205
206
	Introduce good_bad_expect, for trapping XFAIL situations nicely.
	* src/server/testsuite/config/unix.exp (good_bad_expect): New proc.
	* src/server/testsuite/renumber.el
	(renumber-lyskom-send-simple-expect): Handle good_bad_expect.

Per Cederqvist's avatar
Per Cederqvist committed
207
	Write a test cases for bug 37.
208
209
210
	* src/server/testsuite/lyskomd.0/bug-37.exp: New test case for bug
	37.  Bugs 593, 594, 595 and 596 were found while writing this test
	case...
Per Cederqvist's avatar
Per Cederqvist committed
211
212
	* src/server/testsuite/lyskomd.0/bug-37-2.exp: Like bug-37.exp,
	but with all memberships being secret.  Found bug 597.
213

214
215
216
217
218
219
220
	Document unread-is-secret.  (Bug 593).
	* doc/Protocol-A.texi (Person Status Types): Added a reference to
	Security, for an explanation of the privileges.  Document the bits
	in Personal-Flags.
	(Membership Information): Document how unread-is-secret affects
	some parts of Membership and Membership-Old.

221
222
223
224
	Added a test case for bug 349.
	* src/server/testsuite/lyskomd.0/bug-349.exp: Test case for bug
	349: wrong error code from set_supervisor.

Per Cederqvist's avatar
Per Cederqvist committed
225
226
2002-06-14  Per Cederqvist  <ceder@ceder.dyndns.org>

227
228
229
230
	Document the Message-ID format of exported texts.  (Bug 574).
	* doc/Protocol-A.texi (Importing and Exporting E-Mail): Document
	the Message-ID format of exported texts.

Per Cederqvist's avatar
Per Cederqvist committed
231
232
233
234
235
236
	Remove autoconf-2.53 warning.
	* configure.in: Use all three arguments of AC_DEFINE.
	* acinclude.m4 (CMOD_C_ATTRIBUTE_UNUSED): Use all three arguments
	of AC_DEFINE.
	* acconfig.h: File removed.

237
238
239
240
241
242
2002-05-20  Per Cederqvist  <ceder@ceder.dyndns.org>

	Minor doc fix.
	* doc/Protocol-A.texi (Client-Server Dialog): Don't mention
	feature-disabled twice.

243
244
245
246
2002-05-07  David Byers  <david.byers@swipnet.se>

	* Updated message from 2002-04-11.

247
248
249
250
251
2002-04-14  David Byers  <david.byers@swipnet.se>

	* doc/Protocol-A.texi (Aux-Item Types): Documented
	elisp-client-read-faq and elisp-client-rejected-recommendation.

David Byers's avatar
David Byers committed
252
253
254
255
256
257
258
2002-04-13  David Byers  <david.byers@swipnet.se>

	Test for fix of bug 145:
	* src/server/testsuite/config/prot-a.exp (kom_delete_conf): New
	function.
	(kom_lookup_z_name): New function.

259
260
2002-04-12  David Byers  <david.byers@swipnet.se>

David Byers's avatar
David Byers committed
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
	Fix bug 145:
	* src/server/conference.c (do_delete_conf): Removed lines that
	cleared the name of the conference. That is done in
	cached_delete_conf.

	Fix bug 38:
	* src/server/testsuite/lyskomd.0/bug-38.exp: New file.

	* src/server/testsuite/config/prot-a.exp (kom_set_user_area): New
	function.
	(kom_shutdown_server): New function.
	(kom_create_text_simple): New function.
	(cres): The else branch which does eval actually works now. Made
	ref_no global in this function.

	* src/server/person.c (do_set_user_area): Copied check for read
	access to new user area from get_text_stat.

279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
	Fix bug 331:
	* src/server/testsuite/lyskomd.0/03.exp: Use idholl and
	lyskomd_host for hostname-dependend strings.

	* src/server/testsuite/lyskomd.0/16.exp: Use idholl and
	lyskomd_host for hostname-dependend strings.

	* src/server/testsuite/lyskomd.0/01.exp: Use idholl and
	lyskomd_host for hostname-dependend strings.

	* src/server/testsuite/lyskomd.0/00.exp: Use idholl and
	lyskomd_host for hostname-dependend strings.

	* src/server/testsuite/config/unix.exp (idholl): New function to
	create hollerith with at sign and name of localhost appended.
	(lyskomd_server): New variable containing the name of this host.

296
297
2002-04-11  David Byers  <david.byers@swipnet.se>

298
299
300
301
	* src/server/aux-items.c (aux_item_trigger_mirror_faq): Don't just
	return when the object type is INFO_OBJECT_TYPE (which represents
	server aux-items). Instead, create the mirror aux-item as required
	by the protocol.
302

303
304
	* configure.in: Added AC_PREREQ.

305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
2002-04-07  Per Cederqvist  <ceder@ceder.dyndns.org>

	Added the world-readable aux item.  (Bug 5).
	* run-support/aux-items.conf: Added world-readable [34].
	* src/server/text.c (person_text_read_access): Give everybody read
	access to texts with a world-readable aux-item.
	* doc/Protocol-A.texi (Aux-Item Types): New aux-item: world-readable.
	(get-text): Mention the world-readable aux
	item under the no-such-text error code.
	(get-text-stat-old): Ditto.
	(get-text-stat): Ditto.
	* src/server/testsuite/lyskomd.0/01.exp: Handle world-readable.
	* src/server/testsuite/lyskomd.0/03.exp: Ditto.
	* src/server/testsuite/lyskomd.0/18.exp: Ditto
	* src/server/testsuite/lyskomd.0/26.exp: Test world-readable.

2002-04-06  Per Cederqvist  <ceder@ceder.dyndns.org>

	Use symbolic names for aux item tags.
	* src/server/aux-items.c (aux_item_trigger_mirror_faq): Use
	aux_faq_for_conf from aux.h instead of a hardcoded 28.
	* src/server/Makefile.am (aux.h): New target.
	(MOSTLYCLEANFILES): Added aux.h.
	(NODIST_GENOBJS): Added aux.h.
	(BUILT_SOURCES): Added aux.h.
	(version.incl): Fixed spelling error.
	(version-info.c): Ditto.

Per Cederqvist's avatar
Per Cederqvist committed
333
334
2002-04-02  Per Cederqvist  <ceder@ceder.dyndns.org>

335
336
337
338
	Fix the documentation of no-of-created-texts (Bug 384).
	* doc/Protocol-A.texi (Person Status Types): Fix the documentation
	of no-of-created-texts.  (Bug 384).

339
340
341
342
343
344
	Clarify the description of get-person-stat-old.
	* doc/Protocol-A.texi (get-person-stat-old): Don't call the
	"username" field "name".  Add markup for it.  Clarify that the
	empty string is returned; dont say that the "name is not
	returned".

Per Cederqvist's avatar
Per Cederqvist committed
345
346
347
348
349
	Automake improves.
	* src/server/testsuite/Makefile.am (noinst_DATA): Removed a
	comment about an Automake deficiency that is no longer there.
	(Bug 208).

350
351
352
353
354
2002-03-29  Per Cederqvist  <ceder@moria>

	* Release 2.0.6.

	Release administrativa.
Per Cederqvist's avatar
Per Cederqvist committed
355
356
	* doc/checkargs.py: Copyright header added.
	* scripts/lyskomd-copyrights: Updated.
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
	* HACKING: Updated version numbers.  Mention Bugzilla.
	* configure.in: Set version 2.0.6.
	* versions (SERVER-VERSION): 2.0.6.
	(SERVER-COMPAT-VERSION): 20006.
	* README: Updated for the 2.0.6 release.
	* NEWS: Updated for the 2.0.6 release.
	* doc/Protocol-A.texi (PROTOEDITION): Set to 10.6.
	(VERSION): Set to 2.0.6.
	(Document Edition History): Document changes in edition 10.6.
	* doc/constructs.expected: Updated.

	Create PDF and DVI output from the protocol specification.
	* doc/Makefile.am (pdf): New target.
	(html): New target.
	(Protocol-A.dvi): New target.
	(Protocol-A.pdf): Use texi2dvi --pdf instead of texi2pdf.
	(protocol-a.texi): New target.  Major hack.  Expand a few of the
	macros so that texinfo.tex can cope with the rest.
	(protocol-a/index.html): New target.
	(.texi.notab): Use automake comments instead of /bin/sh comments.
	(update-www): Also depend on protocol-a/index.html, Protocol-A.dvi
	and Protocol-A.pdf, and install them.
	(check): Also depend on the targets pdf and dvi.

	Doc fixes.
	* doc/Protocol-A.texi (create-person-old): Moved a misplaced brace
	to its proper place.
	(get-text): State that ^J represents a newline in the example.
	(create-person-old): Move punctuation outside of quotes, according
	to the Texinfo style guide.

Per Cederqvist's avatar
Per Cederqvist committed
388
389
390
391
392
393
394
2002-03-26  Per Cederqvist  <ceder@ingate.com>

	Port to Cygwin.
	* src/server/Makefile.am (all-recursive): Added the $(EXEEXT)
	suffix to lyskomd and dbck, so that the makefile works on cygwin.
	(check-recursive): Ditto.

395
396
2002-03-24  Per Cederqvist  <ceder@moria>

Per Cederqvist's avatar
Per Cederqvist committed
397
	Allow faq-text to be set on letterboxes.  (Bug 423).
398
399
400
401
402
403
404
	* run-support/aux-items.conf (faq-text): Allow it on letterboxes
	as well as conferences and the server.
	* doc/Protocol-A.texi (Aux-Item Types): Document that faq-text may
	be set on letterboxes.
	* src/server/testsuite/lyskomd.0/03.exp: Set an faq-text on the
	letterbox of person 8.

405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
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.

425
426
2002-02-11  Per Cederqvist  <ceder@moria>

427
428
429
430
431
	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.

432
433
434
435
436
437
438
439
440
441
	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.

442
443
444
445
446
447
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.

448
449
450
451
452
2002-01-23  Per Cederqvist  <ceder@ingate.com>

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

453
454
455
456
457
458
459
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.

460
461
462
463
464
465
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.

466
2002-01-01  Per Cederqvist  <ceder@moria>
467
468
469
470
471
472
473
474
475
476
477
478
	
	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.
479

480
481
482
483
484
485
486
	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.

487
488
489
	Document the ``change-name'' capability.
	* doc/Protocol-A.texi (Security): Document ``change-name''.

490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
	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.

506
507
2001-12-31  Per Cederqvist  <ceder@moria>

508
509
510
511
512
513
514
515
	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).

516
517
518
519
520
521
522
523
524
525
526
527
528
	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.

529
530
531
532
533
534
535
536
537
538
539
540
	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
541
542
2001-12-30  Per Cederqvist  <ceder@moria>

Per Cederqvist's avatar
Per Cederqvist committed
543
544
545
546
547
	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
548
549
550
551
552
553
554
555
556
557
558
559
	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
560
561
2001-12-29  Per Cederqvist  <ceder@moria>

Per Cederqvist's avatar
Per Cederqvist committed
562
563
564
565
566
567
568
569
	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
570
571
	* src/server/aux-items.c: Fixed typo in comment.

572
573
2001-12-28  Per Cederqvist  <ceder@moria>

574
575
576
577
	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.

578
579
580
581
582
583
584
585
586
587
	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
588
589
590
591
	Don't include config.h twice.
	* src/libraries/libcommon/kom-errno.c: Don't include both
	<config.h> and "config.h".

592
593
594
595
596
	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.

597
598
599
600
601
602
603
604
605
606
607
	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.

608
609
610
611
612
613
	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.

614
615
616
617
618
619
620
	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.

621
622
623
624
625
626
627
	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.

628
629
630
631
632
	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''.

633
634
635
636
637
	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''.

638
639
640
641
642
	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.

643
644
645
646
647
648
	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.

649
650
651
652
653
654
655
656
657
658
659
660
661
662
	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''.

663
664
665
666
667
668
669
670
	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.

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
	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.

703
704
2001-12-28  Per Cederqvist  <ceder@ingate.com>

705
706
707
708
	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.

709
710
711
712
	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.

713
714
715
716
717
718
719
720
721
722
723
	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.

724
725
2001-12-22  Per Cederqvist  <ceder@moria>

726
727
728
729
730
731
732
733
734
735
736
	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.

737
738
739
740
741
742
743
744
745
746
747
	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".

748
749
750
751
752
753
754
	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.

755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
	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.

771
772
773
774
775
776
777
778
779
780
781
782
783
784
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.

785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
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.

802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
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.

817
818
819
820
821
822
823
824
825
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.

826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
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.

841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
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".

856
857
858
859
860
861
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
862
863
864
865
866
867
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.

868
869
2001-11-13  Per Cederqvist  <ceder@moria>

870
871
872
873
874
875
876
877
878
	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
879
880
881
882
883
884
885
886
	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).

887
888
889
890
891
892
893
	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.

894
895
2001-11-11  Per Cederqvist  <ceder@moria>

896
897
898
899
900
901
902
903
904
905
906
907
908
	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.

909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
	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.

931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
	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.

954
955
956
957
958
959
2001-11-09  Per Cederqvist  <ceder@moria>

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

960
961
962
963
964
965
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
966
967
2001-11-06  Per Cederqvist  <ceder@moria>

968
969
970
971
972
973
974
975
976
	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
977
978
979
980
981
982
	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).

983
984
2001-11-04  Per Cederqvist  <ceder@moria>

985
986
987
988
989
990
991
	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.

992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
	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.

1005
1006
1007
1008
1009
1010
	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).

1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
	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.

1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
	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.

1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
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.

1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
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
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.

1153
1154
2001-10-27  Per Cederqvist  <ceder@moria>

1155
1156
1157
1158
1159
1160
	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.

1161
1162
1163
1164
1165
1166
1167
	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).

1168
1169
1170
1171
1172
1173
1174
1175
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.

1176
1177
1178
1179
1180
1181
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.

1182
1183
2001-09-30  Per Cederqvist  <ceder@moria>

1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
	* 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.

1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
	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
1215
1216
2001-09-29  Per Cederqvist  <ceder@moria>

1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
	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.

1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
	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.
1240
1241
1242
	* 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.
1243

Per Cederqvist's avatar
Per Cederqvist committed
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
	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.

1275
1276
2001-09-23  Per Cederqvist  <ceder@moria>

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

1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
	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
1300
1301
	Re-enable all tests.
	* src/server/testsuite/lyskomd.0/01.exp: Enable some matching that
1302
1303
	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
1304
1305
	* src/server/testsuite/lyskomd.0/03.exp: Ditto.

1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
	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
1326
1327
1328
1329
1330
1331
2001-09-22  Per Cederqvist  <ceder@lysator.liu.se>

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

1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
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
1349

1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
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
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
	* 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.
1384
1385
1386
	* 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
1387
1388
1389
1390
1391
1392
	* 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.

1393
1394
1395
1396
1397
1398
1399
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.

1400
1401
2001-05-24  Per Cederqvist  <ceder@moria>

1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
	* 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.

1413
1414
	New aux-items: canonical-name and mx-list-name.  Two cross
	references added.
1415
1416
	* doc/Protocol-A.texi (Aux-Item Types): Added canonical-name [31]
	and mx-list-name [32].
1417
1418
1419
	(Predefined Aux-Item Types): Added a cross reference to Aux-Item
	Types.
	(query-predefined-aux-items): Likewise.
1420
	(Document Edition History): Document edition 10.4.
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433

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.

1434
1435
2001-05-20  Per Cederqvist  <ceder@moria>

1436
	The documentation for the old-pwd argument to set-passwd was
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
	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
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
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
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
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.

1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
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].

1490
1491
2001-05-08  Per Cederqvist  <ceder@moria>

1492
1493
1494
1495
1496
1497
	* 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.

1498
1499
1500
1501
1502
1503
1504
	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.

1505
1506
2001-05-05  Per Cederqvist  <ceder@moria>

1507
1508
1509
1510
1511
1512
	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.

1513
1514
1515
1516
1517
1518
1519
	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.

1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
	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.

1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
	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
1562
1563
1564
1565
1566
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
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
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".

1577
1578
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
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
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.

1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
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 '}'.
1641
1642
1643
1644
	(lexer.__parse_userdefined_types): Expect @lt{} markup
	(lexer.__parse_userdefined_struct): Likewise.
	(lexer.__parse_userdefined_selection): Likewise.
	(lexer.__parse_userdefined_enumeration_of): Likewise.
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
	* 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.
1660
1661
	(LysKOM Data Types): Added @lt markup around all types on the
	right hand side.
1662

1663
1664
2001-04-30  Per Cederqvist  <ceder@moria>

1665
1666
1667
1668
1669
1670
1671
1672
	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.

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
	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.

1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
	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.

1747
1748
2001-04-28  Per Cederqvist  <ceder@moria>

1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
	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.

1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
	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.

1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
	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-0