ChangeLog 90.7 KB
Newer Older
Per Cederqvist's avatar
Per Cederqvist committed
1
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
Fri Aug  2 01:44:11 1996  Per Cederqvist  <ceder@lysator.liu.se>

	* ramkomd.c (server_init): Fixed typo introduced Jul 30: ignore
	SIGPIPE, not SIGHUP.

	* Handle idle-time.
	* fncdef.txt (user_active): New function.
	(who_is_on_dynamic): New function.
	(get_static_session_info): New function.
	* connections.h (Connection): Removed field last_request.
	Added field active_time.
	(Res_type): New values: rt_dynamic_session_info_list,
	rt_static_session_info.
	(Result_holder): New fields: dynamic_session_info_list,
	static_session_info.
	* session.c (who_is_on_dynamic): New function.
	(get_session_info): The idle-time is calculated using active_time
	instead of last_request.
	(get_session_info_ident): Likewise.
	(get_static_session_info): New function.
	(user_active): New function.
	* prot-a.c (prot_a_reply): Handle rt_dynamic_session_info_list and
	rt_static_session_info.
	(prot_a_is_legal_fnc): Added user_active, who_is_on_dynamic and
	get_static_session_info.
	* prot-a-output.c (prot_a_output_dynamic_session_info): New
	function.
	* prot-a-output.h, prot-a-output.c:
 	(prot_a_output_static_session_info): New function.
	(prot_a_output_dynamic_session_info_list): New function.
	* kom-memory.h, memory.c (init_dynamic_session_info): New function.
	(init_static_session_info): New function.
	* internal-connections.c (init_connection): Set active_time to
	now.  Don't set last_request.
	(new_client): Likewise.
	* connections.c (parse_unparsed): Don't set client->last_request.

38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
Thu Aug  1 20:23:04 1996  Per Cederqvist  <ceder@lysator.liu.se>

	* Improved handling of unknown calls: the server now assumes the
	incoming message is terminated by a newline, and responds with
	error code KOM_NOT_IMPL instead of with a protocol error.
	* prot-a.c (prot_a_parse_packet): Set client->function to
	illegal_fnc if the requested function is not supported instead of
	raising an ISC_PROTOCOL_ERR.
	* prot-a-parse.h, prot-a-parse.c (prot_a_hunt_nl): New function.
	* fnc-def-init.awk: Output a trailing entry which uses
	prot_a_hunt_nl to parse when client->function is illegal_fnc.
	* connections.c: Include prot-a-parse.h and kom-errno.h.
	(call_function): Treat illegal_fnc specially: set kom_errno to
	KOM_NOT_IMPL and return FAILURE.
	* com-h.awk (enum call_header): New value: illegal_fnc (which is
	always one greater than the highest supported call number).
	* call-switch.awk: Output code that calls restart_kom if
	illegal_fnc is ever attempted to be called.

Wed Jul 31 21:43:19 1996  Per Cederqvist  <ceder@lysator.liu.se>

	* server-config.c (WHITESPACE): According to prot-A.txt, form-feed
	is not a valid whitespace character, so remove it.

Per Cederqvist's avatar
Per Cederqvist committed
62
63
64
65
66
67
68
69
70
71
72
Tue Jul 30 16:31:03 1996  Per Cederqvist  <ceder@lysator.liu.se>

	* ramkomd.c (server_init): Use sigaction instead of signal if
	available.
	(go_daemon): Likewise.
	(main): Likewise.
	(sighandler_hup): Don't reinstall the signal if sigaction is
	available.
	(sighandler_usr1): Likewise.
	(sighandler_usr2): Likewise.

73
74
75
76
77
78
Mon Jul 29 10:41:41 1996  David Byers  <davby@sen2.ida.liu.se>

	* simple-cache.c (init_cache): Call get_version with the right
 	file name. Previously get_version was always called with the
 	datafile name. Initialize data file version before using it.

79
80
Mon Jul 29 01:30:17 1996  Per Cederqvist  <ceder@lysator.liu.se>

Per Cederqvist's avatar
Per Cederqvist committed
81
82
83
84
	* Handle sysv signal semantics:
	* ramkomd.c (sighandler_hup): Reinstall the SIGHUP handler.
	(sighandler_usr2): Reinstall the SIGHUSR2 handler.

85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
	* simple-cache.c (init_cache): The local loop variable 'i' must be
	a long, so that a Text_no fits.  The local variables done,
	read_text_no and read_conf_no are now of type Bool (not int).
	The local variable c is an int, so that it can safely be compared
	against EOF.  Call restart_kom if an unknown deletion block is
	found in the data file.

	* prot-a.c (prot_a_reply): Fixed long/int mismatch in call to
	mux_printf.
	* prot-a-output.c (prot_a_output_num_list): Removed erronous
	argument in call to mux_printf.

	* log.h (log): Tell GCC that an argument is a printf-style
	format string if HAVE_ATTRIBUTE_FORMAT_PRINTF is set.
	(logv): Likewise.
	* lyskomd.h (restart_kom): Likewise.
	* mux.h (mux_printf): Likewise.
	* admin.c: Fixed bogus printf-style modifiers in calls to log
	and/or restart_kom.
	* cache-node.c: Likewise.
	* conference.c: Likewise.
	* connections.c: Likewise.
	* dbck-cache.c: Likewise.
	* dbck.c: Likewise.
	* internal-connections.c: Likewise.
	* person.c: Likewise.
	* ram-output.c: Likewise.
	* ram-parse.c: Likewise.
	* ramkomd.c: Likewise.
	* simple-cache.c: Likewise.
	* text.c: Likewise.

Sun Jul 28 14:41:13 1996  Per Cederqvist  <ceder@lysator.liu.se>

	* tmp-limits.h (MAX_TEXT): Increased to 2000000.

	* text.c (create_text_check_misc): Return KOM_ANON_REJECTED
 	instead of KOM_ACCESS if the conference does not accept anonymous
 	texts.
	(create_text): Use FALSE instead of 0 as Bool constant.
	(create_anonymous_text): Use TRUE instead of 1 as Bool constant.

	* send-async.c, send-async.h (async_send_group_message): The
	force_message argument is a Bool, not a char.
	(async_send_message): Likewise.

	* connections.h (Connection::username_valid): Mention that this
	field is used to determine if async messages are sent.
	* send-async.c (async_new_text): Don't send any message unless
	username_valid is set.
	(async_i_am_on): Likewise.
	(async_logout): Likewise.
	(async_new_name): Likewise.
	(async_sync_db): Likewise.
	(async_forced_leave_conf): Likewise.
	(async_login): Likewise.
	(async_rejected_connection): Likewise.
	(async_send_group_message): Likewise.
	* prot-a.c (prot_a_parse_packet): FIXME-comment regarding this
	removed.

	* Removed an unnecessary field in Connection:
	* prot-a-parse.c (prot_a_parse_info): Use struct_parse_pos instead
	of info_parse_pos.
	* connections.h (Connection::info_parse_pos): Removed.
	* connections.c (free_parsed): Don't set info_parse_pos.
	* internal-connections.c (init_connection): Likewise.
	
	* Use Bool instead of int for truth values and flags:
	* connections.h (Connection::want_async): Now an array of Bool
	instead of an array of int.
	* internal-connections.c (init_connection): Adjust for the above.
	* send-async.c (async_send_group_message): Likewise.
	* session.c (query_async): Likewise.
	(accept_async): Likewise.
	* prot-a-send-async.h (ASYNC_CHECK_ACCEPT): Likewise.

162
163
Sat Jul 27 17:26:19 1996  Per Cederqvist  <ceder@lysator.liu.se>

164
165
166
	* text.c (check_anonymous_subm): Removed two unused arguments.
	All callers updated.

167
168
169
170
171
172
173
174
175
176
177
178
	* New rules for adding and subtracting comment links:
	* text.c (create_text_check_misc): Check that the author can read
	the text he is commenting.
	(add_comment): Check that the adder can read the text he is adding
	a comment link to.
	(sub_comment): The user does not have to be able to read either of
	the texts to remove the comment link.  On the other hand, it
	doesn't help if he is supervisor of the author of the parent.
	(sub_footnote): The user does not have to be able to read either
	of the texts to remove the footnote link.  He must be supervisor
	of the author of the footnote, but not necessarily the author.

David Byers's avatar
David Byers committed
179
180
181
182
183
Sat Jul 27 13:17:05 1996  David Byers  <davby@sen2.ida.liu.se>

	* simple-cache.c (save_one_text): Removed code that printed dollar
 	sign at end of data file.

184
185
186
187
188
Fri Jul 26 02:11:38 1996  Per Cederqvist  <ceder@lysator.liu.se>

	* simple-cache.c (init_cache): Added a missing parameter in a log
	statement.

David Byers's avatar
David Byers committed
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
Fri Jul 26 10:40:12 1996  David Byers  <davby@sen2.ida.liu.se>

	* simple-cache.c (init_cache): Data file is now terminated by EOF,
 	not a dollar sign.

	* ram-output.h: Declare foutput_conf_type_0 and
 	foutput_conference_0.

	* ram-output.c (foutput_conf_type_0): New function. Outputs an old
 	four-bit conf_type.
	(foutput_conference_0): New function. Outputs conference with a
 	four_bit conf type.

	* dbck-cache.c (cache_sync): Fix bug that crashed the program on
 	nonexistent texts, persons and conferences. Rewrote
 	format-dependent code as switches rather than ifs. Output
 	passwords to the database. Output old-type conference records in
206
 	version zero files. Data file is no longer terminated by a dollar
David Byers's avatar
David Byers committed
207
208
209
210
 	sign.
	(init_cache): Rewrote format-dependent code as switches rather
 	than ifs. Data file is terminated by EOF rather than dollar.

211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
Fri Jul 26 02:11:38 1996  Per Cederqvist  <ceder@lysator.liu.se>

	* Protect against too large arrays sent to accept_async:
	* prot-a-parse.c, prot-a-parse.h (prot_a_parse_num_list): New
	argument: maxlen.  Rewritten.
	* session.c (accept_async): prot_a_parse_num_list sets data to
	NULL and length to a non-zero value if the client sent a too big
	array.  Check for that condition instead of checking if the length
	was greater than ay_dummy_last.  Set kom_errno to KOM_LONG_ARRAY
	instead of KOM_INDEX_OUT_OF_RANGE if the array was too big.
	* server-config.c (parameters): New config: "Max accept_async len".
	* fncdef.txt (mark_as_read): Make param.mark_as_read_chunk visible
 	here.
	(create_text, create_anonymous_text): Make param.max_crea_misc
 	visible here.
	(accept_async): Added param.accept_async_len.
	* param.h (kom_par): New field: accept_async_len.
	* prot-a.c (prot_a_init): Set array_parse_index.
	* prot-a-parse-arg-c.awk: Make prot-a-parse-arg.c include async.h.
	c_local_text_no_p, c_misc_info_p and num_list should be followed
	by a maximum array length in fncdef.txt.  Use array_parse_index
	instead of array_parse_pos to count the array index.  Added a
	missing newline in the generated code.
	* internal-connections.c (init_connection): Initialize
	array_parse_index.
	* connections.h (Connection): New field: array_parse_index.
	* connections.c (free_parsed): Set array_parse_index.

	* cache.h (match_table): Added a missing "extern".
	* dbck.c (kom_info): Added a missing "extern".

	* connections.h: Don't include async.h -- no .h file in lyskomd
 	should include another .h file.  Why?  Well, mostly because that
	is the way it is in the rest of lyskomd.
	* admin.c, conference.c, connections.c, internal-connections.c,
 	isc-parse.c, membership.c, mux-parse.c, mux.c, person.c,
 	prot-a-output.c, prot-a-parse.c, prot-a-send-async.c, prot-a.c,
 	ramkomd.c, regex-match.c, send-async.c, session.c, simple-cache.c,
 	text.c: Include async.h before connections.h.

Thu Jul 25 01:30:53 1996  Per Cederqvist  <ceder@lysator.liu.se>

	* simple-cache.c: Include string.h.
 	(TIMESTAMP_FORMAT): Unused define removed.
	(pre_sync): Removed a call to time() whose return value was never
	used.

David Byers's avatar
David Byers committed
258
259
260
261
262
263
264
Wed Jul 24 18:36:17 1996  David Byers  <davby@sen2.ida.liu.se>

	* simple-cache.c (save_one_text): Don't output an extra space
 	after the text number. foutput_long will place the necessary space
 	there anyway. (Top level): Include string.h for strerror, test for
 	unistd.h.
	
265
266
267
268
269
270
271
272
273
Wed Jul 24 03:05:48 1996  Per Cederqvist  <ceder@link>

	* dbck.c (main): Die with an error message if an unsupported
	output format version is requested.

	* dbck-cache.c (cache_sync): Don't write 'I' records in version 0
	files.  Ignore 'I' records in version 0 files, but warn about
	them.

David Byers's avatar
David Byers committed
274
275
276
277
278
Mon Jul 22 11:38:08 1996  David Byers  <davby@sen2.ida.liu.se>

	* ram-output.c (foutput_conf_type): Output anarchy, rsv1, rsv2
	and rsv3 bits of conference type to the database file.
	
279
280
281
282
283
Sun Jul 14 23:01:37 1996  Per Cederqvist  <ceder@lysator.liu.se>

	* ChangeLog: Added several details in entries below that David
 	Byers forgot to talk about.

284
285
286
287
288
Sat Jul 13 15:55:43 1996  Per Cederqvist  (ceder@lysator.liu.se)

	* membership.c (set_last_read): The second argument is a
	Local_text_no, not a Text_no.

289
290
Mon Jun 10 13:38:12 1996  David Byers  <davby@sen2.ida.liu.se>

291
	* prot-a.c (prot_a_reply): Handle rt_num_list.
David Byers's avatar
David Byers committed
292
293
	(prot_a_is_legal_fnc): Added accept_async and query_async.

294
295
	* prot-a-parse.c, prot-a-parse.h (prot_a_parse_num_list): New
	function to parse num_list data.
David Byers's avatar
David Byers committed
296
297
298

	* prot-a-parse-arg-c.awk: Handle num_list data type

299
300
301
302
303
304
	* admin.c (send_message): Force message to user if it has an
 	explicit letterbox recipient or if the sender is the
 	administrator.

	* send-async.c (async_new_name): Check that the connection is
	allowed to know about the conference that changed name.
305
306

	* send-async.h, send-async.c:
307
	(async_send_group_message): Allow override of preference not to
308
309
	receive message. 
	(async_send_message) Option to force message to be sent to user.
310

David Byers's avatar
David Byers committed
311
	* fncdef.txt: Added accept_async and query_async calls.
312

313
	* connections.h: Added num_list to Result_holder and Res_type.
314

315
316
	* prot-a-output.c, prot-a-output.h (prot_a_output_num_list): New
	function.
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334

	* session.c (accept_async): Added this function.

	* async.h: I-will-include-zis-only-vonce code added.

	* internal-connections.c (init_connection): Handle num_list field.
	  Sensible initialization of the want_async field.

	* connections.c (free_parsed): Handle num_list field.

	* call-switch.awk: Handle num_list input type.

	* prot-a-send-async.c: Check if client wants async messages before
 	sending them; just about all functions have been modified.

	* prot-a-send-async.h (ASYNC_CHECK_ACCEPT): New macro to check if
 	connection wants the async message at all.

335
336
337
	* connections.h: (Connection): Added fields want_async and num_list.
	(Res_type): Added rt_num_list.
	(Result_holder): Added num_list.
338

339
340
	* async.h (enum Async): Added ay_dummy_last.
	(ASYNC_DEFAULT_MESSAGES): New define.
341

342
343
344
Sun Jun  9 10:36:29 1996  David Byers  <davby@sen2.ida.liu.se>

	* server-config.c: Added "Permissive sync" option.
345
	* param.h: Added permissive_sync.
346
347
348
349
	* admin.c (sync_kom): Checks that the calling session is logged in
 	and an administrator unless the configuration file has
 	permissive_sync on.

350
351
352
353
354
355
	* admin.c (set_info): New function.
	* fncdef.txt: Added set_info.
	* prot-a.c: (prot_a_is_legal_fnc): call_fnc_set_info is now a
	valid value.
	* prot-a-parse-arg-c.awk: Handle info data type.
	* prot-a-parse.c, prot-a-parse.h (prot_a_parse_info): New function.
356
357
358
	* dbck-cache.c (init_cache): Override database kom_info with
 	command-line kom_info.
	(cache_sync): Output kom_info structure.
359
360
361
362
363
	* call-switch.awk: Handle info input type.
	* connections.c (free_parsed): Set info_parse_pos.
	* internal-connections.c (init_connection): Initialize
	info_parse_pos and info.
	* connections.h (Connection): New fields: info_parse_pos, info.
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380

	* dbck.c: Initialize oformat to -1 (no explicit output format).
	(main): Added options to set kom-info fields
	(give_help): Added help for the new options.

	* dbck-cache.c (init_cache): If no explicit output format is
 	given, select output format to be the same as the input format.

	* dbck-cache.c (init_cache): Initialize read_text_num and
 	read_conf_num to avoid compiler warnings.

	* dbck.c (locate_membership): Declared non-static to avoid
 	conflict with membership.h
	(locate_member): Declared non-static to avoid conflict with
 	membership.h
	(top level): Include crypt.h

381
382
383
384
	* person.c: Guard inclusion of <unistd.h> and <crypt.h> with
	HAVE_UNISTD_H and HAVE_CRYPT_H.

	* tmp-limits.h (MAX_TEXT): Set to 150000.
385

386
387
388
389
390
Tue Mar 12 22:40:52 1996  Per Cederqvist  (ceder@lysator.liu.se)

	* membership.c (add_member): Log a message if somebody adds
	somebody else to a conference.

391
392
393
Sun Feb 25 21:37:09 1996  Per Cederqvist  (ceder@lysator.liu.se)

	* Makefile.src (GETOPT): New variable.
394
	(DBCK): Needs GETOPT and version-info.o.
395

396
Sun Feb 25 20:53:33 1996  Per Cederqvist  (ceder@lysator.liu.se)
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419

	* Use GNU getopt in dbck.
	* dbck.c (longopts): New variable.
	(main): Rewrote the option-parsing loop to use GNU getopt.

	* Help in dbck.
	* dbck.c (give_help): New function.
	(main): Call it if -h (or --help) is given.

	* Reset passwords in dbck.
	* dbck.c (reset_pwd): New variable.
	(main): Set it if -P (or --clear-password) is given.
	(check_persons): Reset the password if the person number equals
	reset_pwd.

	* Grant permission in dbck.
	* dbck.c (grant_all): New variable.
	(main): Set it if -G (or --grant-all) is given.
	(check_persons): Give the person all privileges if the person
	number equals grant_all.

	* getopt.h, getopt.c, getopt1.c: New files taken, from GNU hello 1.3.

420
421
422
423
424
425
Fri Feb 23 21:37:09 1996  David Byers  <byers@lysator.liu.se>

	* dbck.c (oformat, force_output): New global variables.
	(main): New options: 'F' (to force output) and 'o' (to select
	output format).

David Byers's avatar
David Byers committed
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
Fri Feb 23 12:41:46 1996  David Byers  <byers@lysator.liu.se>

	* dbck.c, simple-cache.c: Added support for remove records. THIS
	SUPPORT HAS NOT BEEN TESTED AT ALL SO DON'T USE IT!

Fri Dec 15 12:48:54 1995  David Byers  <byers@lysator.liu.se>

	* dbck.c, simple-cache.c: #C and #T records in database for
	  next-free-num and next-text-num.

Sun Nov 12 16:34:34 1995  David Byers  <byers@lysator.liu.se>

	* dbck.c: Option -o to select output db format

	* dbck-cache.c: Read/write version 0 and version 1 files

	* simple-cache.c: Saves and reads version one files

444
445
446
447
448
449
	* text.c: Anarchy bit checked for anonymous texts:
	(check_anonymous_subm): New static function.
	(create_text_check_misc): New argument: anonymous.  All callers
	updated.  Check that the conference accepts anonymous texts if the
	new argument is true.
	
Per Cederqvist's avatar
Per Cederqvist committed
450
451
452
453
454
455
456
457
458
Wed Nov  8 21:59:22 1995  Per Cederqvist  (ceder@lysator.liu.se)

	* Release 1.8.0.

	* ram-output.c (foutput_conf_type): Disable output of the new bits
	until the database has a version number.

	* dbck.c (check_misc_infos): Fixed misleading error messages.

Per Cederqvist's avatar
Per Cederqvist committed
459
460
Thu Nov  2 20:58:40 1995  Per Cederqvist  (ceder@lysator.liu.se)

461
462
463
464
465
466
467
468
469
470
471
472
	* send-async.c (async_rejected_connection): Send this message at
	most once per minute.

	* log.c (log): A pid is sometimes larger than an int, so use %ld
	and proper casts when printing the pid.

	* dbck.c (dump_text_numbers): New variable.
	(check_texts): Print a line for each checked text if
	dump_text_numbers is set.
	(main): Set dump_text_numbers if -t was given.  Changed
	usage-messages to include [-t].

Per Cederqvist's avatar
Per Cederqvist committed
473
474
475
476
477
478
479
480
481
482
483
484
485
	* cache-database.c: Include "server/smalloc.h", not "smalloc.h".
	* server-config.c: Likewise.
	* conf-file.c: Likewise.
	* cache.c: Likewise.

	* Optionally use GNU Malloc.
	* Makefile.src (MALLOCLIB): New variable.  Use it everywhere a
	program is linked.
	(.gdbinit): Added libraries/gnumalloc.  Changed libraries/libisc
	to libraries/libisc-new.
	* ram-smalloc.c: Include "malloc.h" instead of <stdlib.h> if
	USE_GNU_MALLOC is defined.

486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
Tue Oct 31 12:14:15 1995  David Byers  <byers@lysator.liu.se>

	* prot-a-output.c: Added UConference and extended conf-type

	* prot-a-parse.c:  Conf-type parser accepts both extended and
	  original conf-type

	* ram-parse.c: Parse extended conf-type

	* ram-output.c: Output extended conf-type

	* simple-cache.c: Access to small_conf_arr entries

	* Added get-uconf-stat call
	  Let set-conf-type accept an extended conf-type.

502
503
Mon Oct 23 07:52:44 1995  Per Cederqvist  (ceder@lysator.liu.se)

504
505
	* tmp-limits.h (MAX_TEXT): Increased to 1500000.

506
507
508
509
510
511
512
513
514
515
516
	* ramkomd.c (go_daemon): Changed API.  Use param.logfile_name
	instead of trying to calculate it from supplied parameters.  All
	callers updated.

	* prot-a-parse.c (prot_a_parse_string): Check for overflow when
	parsing the string length.  Logout the current client if the
	string length supplied is so large that it becomes a negative
	number.
	* mux-parse.c (mux_parse_string): Likewise, but log out the entire
	mux.

517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
Sat Oct  7 15:29:05 1995  Per Cederqvist  (ceder@lysator.liu.se)

	* text-garb.c (garb_text): Don't remove any text if
	param.garb_enable is false.
	* server-config.c: (parameters): New config: "Garb".
	* param.h (kom_par): New field: garb_enable.

Tue Sep  5 20:56:23 1995  Per Cederqvist  (ceder@lysator.liu.se)

	* lyskomd.h (restart_kom): Tell gcc 2.7 (or newer) that
	restart_kom never returns.

	* conf-file.c (configure_line): Allow empty values.
	(assign_text_no, assign_conf_no, assign_int): Sanity check the
	argument.

	* updateLysKOM.c (savecore): New function.
	(main): Call it before starting a new lyskomd.

	* ramkomd.c (go_daemon): Don't go into daemon mode if in debug
	mode.
	(initialize): Fixed a printf statement.
	(main): chdir to param.core_dir before the action starts.
	* param.h (kom_par): New field: core_dir.
	* server-config.c (parameters): New config: "Core directory".

	* dbck-cache.c: Include "param.h".

	* server-config.c (add_prefix, param_name, check_abs_path): New
	static functions.
	(read_configuration): Check that all path names are complete
	paths.

	* Remove global file name variables, and use fields in param
	instead:
	* simple-cache.c, dbck-cache.c (datafilename): Removed.  All users
	modified to use param.datafile_name instead.
	(backupfilename): Removed.  All users modified to use
	param.backupfile_name instead.
	(textfilename): Removed.  All users modified to use
	param.textfile_name instead.
	* dbck.c, ramkomd.c: (datafilename): Removed.  All users modified
	to use param.datafile_name instead.
	(backupfilename): Removed.  All users modified to use
	param.backupfile_name instead.
	(textfilename): Removed.  All users modified to use
	param.textfile_name instead.
	* dbck.c (textbackupfilename): Removed.  All users modified to use
	param.textfile_name instead.
	(TEXTBACKUPFILE_NAME): Removed.
	* ramkomd.c (statisticfile, pidfile, memusefile): Removed.  All
 	callers modified to use param.statistic_name, param.pid_name and
 	param.memuse_name instead.
	* connections.c (dump_statistics): Use param.statistic_name
	instead of statisticfile.

	* text.c (find_recipient): New name for former is_recipient.  New
	API.  All callers updated.
	(add_recipient): Allow a recpt to be changed to a cc_recpt, and
	vice versa.

Fri Jan 20 23:56:14 1995  Per Cederqvist  (ceder@lysator.liu.se)

	* text.c (ok_to_create_next_text): Added a missing newline in a
	log message.

Per Cederqvist's avatar
Per Cederqvist committed
583
584
585
586
Sun Jan  8 12:13:14 1995  Per Cederqvist  (ceder@lysator.liu.se)

	* Release 1.7.1.

Per Cederqvist's avatar
Per Cederqvist committed
587
588
589
590
591
592
593
594
595
596
597
598
599
600
Sun Jan  1 14:08:34 1995  Per Cederqvist  (ceder@lysator.liu.se)

	* Makefile.src (KOMLIBS): New variable, holding all of the
	libraries included in the distribution.
	(LIBS): Now only holds the libraries found by Autoconf.
	(lyskomd, updateLysKOM, encrypt, dbck): Depend on, and 
	link with, $(KOMLIBS).
	(domostlyclean): Remove $(SPECIALS).

	* admin.c (broadcast): The argument is a const String, not a
	String.
	* conference.c (change_name, create_conf): Likewise.
	* person.c (create_person): Likewise.

Per Cederqvist's avatar
Per Cederqvist committed
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
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
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
Sat Dec 31 13:02:22 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* conference.c (lookup_z_name): New function.

	* fncdef.txt: Added lookup_z_name.

	* prot-a.c (prot_a_is_legal_fnc): call_fnc_lookup_z_name is now a
        valid value.

	* ramkomd.c (go_daemon, main): Print the full version number, not
	the compatibility version number, in logs.

	* simple-cache.c (cached_create_text): Check that writing the text
	do disk succeeds, and return KOM_TEMPFAIL if it doesn't.

Tue Dec 27 00:35:56 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* version-info.h: New file.
	* version.incl: This file is now generated.  It is no longer a
	source file, and it is no longer included in the distribution.

	* session.c (logout): No longer send any async_i_am_off.

	* send-async.h (async_send_group_message): New function.
	(async_i_am_off, async_broadcast): Removed.

	* send-async.c (async_i_am_off, async_broadcast): Removed.
	(async_send_group_message): New function, derived from
	async_send_message.
	(async_send_message): Now implemented in terms of
	async_send_group_message.

	* regex-match.c (lookup_regexp): Return a Conf_z_info_list instead
	of a Conf_no_list.  New parameter: want_confs.
	(downgrade): New static function.
	(re_lookup_person, re_lookup_conf): Use downgrade to adapt to the
	new API of lookup_regexp.
	(re_z_lookup): New function.

	* ram-parse.h (fparse_membership): Removed from the .h-file, since
	it is now static.

	* ram-parse.c (fparse_membership): Now static.
	(fparse_membership, fparse_membership_list, fparse_conf_list,
	fparse_mark_list, fparse_text_stat, fparse_text_list,
	fparse_string, fparse_member_list, fparse_who_info,
	fparse_who_info_list, fparse_misc_info): Set kom_errno to
	KOM_LDB_ERR, not KOM_SERVER_IS_CRAZY.

	* prot-a.c (prot_a_reply): Added code for rt_conf_z_info_list and
	rt_version_info.
	(prot_a_is_legal_fnc): call_fnc_re_z_lookup and
	call_fnc_get_version_info are now valid values.

	* prot-a-send-async.c, prot-a-send-async.h (prot_a_async_i_am_off,
	prot_a_async_broadcast): Removed.
	(prot_a_async_send_message): The recipient is now a Conf_no, not
	necessarily a Pers_no.

	* prot-a-output.c (prot_a_output_conf_z_info): New static
        function.
	
	* prot-a-output.c, prot-a-output.h (prot_a_output_version_info,
	prot_a_output_conf_z_info_list): New functions.

	* fncdef.txt: Added re_z_lookup and get_version_info.

	* connections.h (Res_type): Added rt_conf_z_info_list and
	rt_version_info.
	(Result_holder): Added conf_z_info_list and version_info.

	* async.h (Async): Removed ay_i_am_off, ay_i_am_on_obsolete and
	ay_broadcast since they are no longer used.  Commented out
	ay_conf_deleted and ay_conf_created since they are not yet used.

	* admin.c (get_version_info): New function.
	(broadcast): Rewritten in terms of send_message.
	(send_message): The recipient is now a Conf_no, not necessarily a
	Pers_no.

	* Makefile.src (DISKOBJS): Added version-info.o.
	(C_SPECIALS): Added version-info.c.
	(SPECIALS): Added version.incl.
	(version.incl): New target (version.incl is now built from
	../../versions, it is no longer a source file).
	(version-info.c): New target (also built from ../../versions).

Per Cederqvist's avatar
Per Cederqvist committed
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
Tue Nov 15 00:31:01 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* version.incl: Version 1.6.5.

	* membership.c (adjust_read): Don't follow NULL pointers.

	* tmp-limits.h (MAX_TEXT): Increased to 1000000.
	(MAX_CONF): Increased to 4765.

	* ramkomd.c: Include <sys/time.h>.
	(initialize): Fixed typo.

Mon Oct 24 01:30:48 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* server-config.c (parameters): New config: "Force ISO 8859-1" and
	"Open files".

	* ramkomd.c (initialize): Use setrlimit to increase the limit on
	number of open file descriptors, if the config file says to do so.
	Moved code to calculate number of open connections here from main().
	(main): Some code moved to initialize().

Sun Oct 23 16:56:30 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* ram-smalloc.c (sfree): Removed dead code.

	* param.h (struct kom_par): New fields: force_iso_8859_1 and
	no_files.

	* membership.c (adjust_read): Rewritten to fix an obscure bug.

	* conference.c (legal_name): Handle parameter "Force ISO 8859-1".
	Always force 8859-1 unless HAVE_LOCALE_H.

	* version.incl: Version 1.6.5.

Per Cederqvist's avatar
Per Cederqvist committed
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
749
750
751
752
753
754
755
Sat Oct 22 13:05:54 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* membership.c (add_rec_time): Removed unused argument
	conf_no.  The only caller updated.

	* simple-cache.c (cached_conf_exists): Explicitly return TRUE or
	FALSE, not a boolean expression, to get rid of apcc warnings.
	* text.c (adjust_text_list): Likewise.

	* ram-parse.c (fparse_misc_info): Check that the number fits in an
	Info_type before storing it there.

	* prot-a.h, prot-a.c: (prot_a_reply): Type of argument status
	should be Success, not Bool.

	* prot-a.c (prot_a_init): Initialize conn->function to
	call_fnc_login_old, not 0.

	* prot-a.c (prot_a_parse_packet): Added a cast to make apcc happy.
	* prot-a-parse.c (prot_a_parse_misc_info): Likewise.

	* connections.c (parse_forgotten, toploop): Get rid of apcc
	warning by not using "!" to negate a Bool.
	* dbck.c (adjust_text_list): Likewise.
	* session.c (login): Likewise.

	* conference.c (set_conf_type): Return FAILURE, not 0.

Sat Aug 20 00:04:37 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* log.c: Include unistd.h.

756
757
Thu Jun 30 01:05:09 1994  Per Cederqvist  (ceder@lysator.liu.se)

Per Cederqvist's avatar
Per Cederqvist committed
758
759
	* version.incl: Version 1.6.4.

Per Cederqvist's avatar
Per Cederqvist committed
760
761
762
763
764
	* text.c (greater): New function.
	(get_last_text): Use it. Maybe it now finally works?

	* ramkomd.c (go_daemon): Fixed buggy call to restart_kom.

765
766
767
768
769
770
	* text.c (add_recipient): Check that the user is allowed to write
	texts in the conference, and fail with KOM_PERM otherwise.

	* text.c (get_last_text): Fixed a bug introduced 12 oct 1993:
	dates were compared backwards.

Per Cederqvist's avatar
Per Cederqvist committed
771
772
773
774
775
776
Mon Jun 20 12:15:35 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* version.incl: Version 1.6.3.

	* simple-cache.c: Include "config.h".

Per Cederqvist's avatar
Per Cederqvist committed
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
Sat Jun 18 20:51:32 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* version.incl: Version 1.6.2.

	* connections.c: Include "config.h".

	* dbck.c: New option: -c (Consider an unset change_name an error).
	(unset_change_name_is_error): New variable.
	(check_persons): Check change_name if unset_change_name_is_error
	is set.  Set it if -r is given, or offer to set it if -i is given.
	(main): Recognize -c and set unset_change_name_is_error if given.

	* text.c (find_previous_text_no): Optimize the case where the
	requested text is larger than the highest created text.

	* ramkomd.c (go_daemon): Now static.

	* person.c (create_person): Set change_name according to
	param.default_change_name.
	Check param.anyone_can_create_new_persons and create_pers.

	* param.h (struct kom_par): Don't test DEBUG or DEFENSIVE_CHECKS.
	Always include all fields.  This wastes 8 bytes, but that way
	there is no risk that the struct looks different in different
	files.

	* internal-connections.c, membership.c: Test NDEFENSIVE_CHECKS
	instead of DEFENSIVE_CHECKS.

	* dbck.c, connections.c, ramkomd.c, server-config.c: Test NDEBUG
	instead of DEBUG.

	* Makefile.src, Makefile.in (tags): etags no longer supports the
	-t flag. Use $(srcdir) for *.c and *.h.

Per Cederqvist's avatar
Per Cederqvist committed
812
813
814
815
816
Tue Apr  5 21:14:57 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* ramkomd.c (go_daemon): Added "coming up" log message, so that
	the version number is written to the log file.

817
818
Mon Apr  4 15:58:30 1994  Per Cederqvist  (ceder@lysator.liu.se)

Per Cederqvist's avatar
Per Cederqvist committed
819
820
821
822
823
	* updateLysKOM.c (checkstatus): Don't send mail to ceder.
	Instead, write an error message to stderr, exit with exit 
	status != 0, and count on cron to deliver the message to
	whoever should get it.

824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
	* ramkomd.c (go_daemon): New function.
	(initialize): Call go_daemon().

	* param.h (struct kom_par): Added logfile_name.
	* server-config.c (parameters): Added "Log file".

	* connections.c (dump_statistics): Use ldifftime() instead of
	difftime().
	dbck-cache.c (cache_sync): Likewise.
	session.c (logout, get_session_info, get_session_info_ident):
	Likewise.
	simple-cache.c (sync_part): Likewise.
	text-garb.c (garb_text): Likewise.

	* cache-node.h (insert_mru): No longer public.

Mon Mar 21 23:36:24 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* simple-cache.c (pre_sync): Destruct cache_nodes for deleted
	conferences, persons and texts (thus making exists_b obsolete).
	(throwable_p): Non-existing nodes are throwable even if they are
	dirty.
	(limit_conf, limit_pers, limit_text_stat): Throw all
	throwable objects, not just the first throwable object.
	(save_one_conf, save_one_pers, save_one_text): The fact that the
	node exists can be used instead of the exists_b flag.
	* cache-node.h (struct cache_node): Removed the now redundant
	exists_b flag.
	* cache-node.c (EMPTY_CACHE_NODE): Removed initializer for
	exists_b flag.

Thu Mar 10 01:09:14 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* log.c (logv): New timestamp format: "YYMMDD HH:MM:SS PID"
	 (was: "YYYY-MM-DD HH:MM:SS ").

860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
Tue Mar  8 00:30:54 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* prot-a-parse-arg-c.awk: Portability fix.

	* conf-file.c (read_config): Added missing newlines in format
	string to restart_kom.

	* Makefile.src (predepend): Fixed typo.

	* session.c (login): Set same_person before calling logout().

Mon Mar  7 22:16:05 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* server-config.c: "Text backup file" should NOT default to the
	same file name as "Text file".

Per Cederqvist's avatar
Per Cederqvist committed
876
877
878
879
880
881
882
883
Sun Mar  6 23:05:30 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* version.incl: Version 1.6 (alpha release).

	* Makefile.src (LK_STD):  Make `all' depend on includes and
	binaries.

Sun Mar  6 20:53:37 1994  Per Cederqvist  (ceder@lysator.liu.se)
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920

	* Makefile.src (doinstall): Install $(PROGRAMS).
	(PROGRAMS): Added updateLysKOM.
	(updateLysKOM, updateLysKOM.o): New targets.
	* updateLysKOM.c: New file.

	* isc-parse.c: Use HAVE_STRINGS_H and HAVE_STRCHR.
	* conf-file.c: Use HAVE_STRING_H, HAVE_STRINGS_H, HAVE_STRCHR and
	HAVE_STDLIB_H.
	* cache.c: Use HAVE_STRING_H.
	* cache-database.c: Use HAVE_STRING_H and HAVE_STDLIB_H.

Sat Mar  5 17:55:01 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* session.c (login_old, login): Added missing trailing newline in
	the log message added on Feb 27.
	(login): Don't log when a person logs in as himself.

	* admin.c (shutdown_kom): Log who is shutting down the server.

	* Makefile.src (tags, .gdbinit): User @SRCTOPDIR@, not $(TOPDIR).

	* conf-file.c (assign_defaults): Fixed bug in error message printing.

	* rfc931.c ("param.h"): Include it.

	* Makefile.src (SRCS, *_SRCS): Removed. No longer used.
	Various other fixes.

	* tmp-limits.h (MAX_TEXT): Increased to 750000.  IÅM explosion
	detected.

	* server-config.c (DEFAULT_PREFIX): Expect that macro to be set
	when the file is compiled.
	* Makefile.src (server-config.o): Define DEFAULT_PREFIX when
	compiling it.

921
922
Sun Feb 27 14:33:19 1994  Per Cederqvist  (ceder@lysator.liu.se)

Per Cederqvist's avatar
Per Cederqvist committed
923
924
925
926
927
928
	* Log logins.
	* param.h (struct kom_par): New field: log_login.
	* server-config.c (parameters): Added "Log login".
	* session.c (login_old, login): Log successful login attempts
	together with username and host.

929
930
931
932
933
934
935
936
937
938
939
940
941
942
	* Make the use of the IDENT protocol a configurable parameter.
	* param.h (struct kom_par): New field: authentication_level.
	* server-config.c (ident_param): New function.
	(parameters): Added Ident-authentcation.
	* rfc931.c (get_real_username): Always fail, without trying to
	contact an IDENT server, if param.authentication_level is 0.
	* connections.c (login_request): Disallow connections if
	param.authentication_level is 2 and the IDENT lookup fails.

	* cache.c: Don't #define SERVER.

	* session.c (login): Don't update the sessions count when logging
	in as the same person which already is logged in.

Per Cederqvist's avatar
Per Cederqvist committed
943
944
Thu Feb 24 11:31:39 1994  Per Cederqvist  (ceder@lysator.liu.se)

945
946
	* prot-a.c: Include "kom-memory.h".

Per Cederqvist's avatar
Per Cederqvist committed
947
948
949
	* Makefile.in (doclean, dodistclean): Removed duplicate empty
	entries of these targets.

950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
Sun Feb 20 17:14:25 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* cache.c: Integrated into the LysKOM environment. Fixed memory
	handling. Still needs more work.

	* cache.h: Moved the comments before what they comment.

	* simple-cache.c (query_next_text_num): The return value is a
	Text_no, not an int.

	* membership.c, session.c, text.c: Include kom-memory.h.

	* cache-database.c: Include smalloc.h. Adapted to the LysKOM
	environment. Fold some long lines.

Pontus Hagland's avatar
Pontus Hagland committed
965
966
967
968
969
970
Sun Feb 20 15:12:16 1994  Pontus Hagland  (law@kajsa)

	* cache.h: Rewritten. (Contents should be the same)
	* cache.c, cache-database.c, cache-database.h:
          new files (cache/database)

Per Cederqvist's avatar
Per Cederqvist committed
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
Sat Feb 19 04:36:10 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* Don't allow anybody to create jubel-texts.
	text.c (struct jubel): New struct.
	(jubel_root): New variable.
	(register_jubel, free_all_jubel, ok_to_create_next_text): New
	functions.
	(create_text, create_anonymous_text): Check ok_to_create_next_text().

	* ramkomd.c (struct parameter, log_param): Moved to
	server-config.c.
	(init_data_base): Removed code to build an empty data base.
	(dump_exit_statistics): Call free_all_jubel().

	* server-config.c (parameters): New file-local variable.
	(CONFIG_FILE): New const.
	(DATAFILE_NAME, BACKUPFILE_NAME, TEXTFILE_NAME, STATISTIC_NAME,
	PID_NAME, MEMUSE_NAME, DEFAULT_CLIENT_SERVICE,
	DEFAULT_MUX_SERVICE, TIMEOUT, GARBTIMEOUT, SYNCTIMEOUT,
	GARB_INTERVAL, SYNC_INTERVAL, SYNC_RETRY_INTERVAL, CONF_NAME_LEN,
	PWD_LEN, WHAT_DO_LEN, USERNAME_LEN, TEXT_LEN, BROADCAST_LEN,
	REGEXP_LEN, MAX_MARKS_PERSON, MAX_MARKS_TEXT, MAX_RECIPIENTS,
	MAX_COMM, MAX_FOOT, MAX_CREA_MISC, CACHE_CONFERENCES,
	CACHE_PERSONS, CACHE_TEXT_STATS, MARK_AS_READ_CHUNK,
	MAX_SUPER_CONF_LOOP, DEFAULT_NICE, MAXQUEUEDSIZE, MAXDEQUEUELEN):
	Obsoleted by parameters. Removed.
	(log_param, jubel, read_configuration): New file-local functions.

	* ram-parse.c, session.c, simple-cache.c, text.c: Use init_foo()
	instead fo EMPTY_FOO.

	* prot-a.c (prot_a_init): Use init_priv_bits() instead of
	DEFAULT_PRIV_BITS.  Use init_conf_type() instead of
	NULL_CONF_TYPE.

	* param.h: Added lots of configuration.

	* membership.c (do_add_member): Use init_membership() instead of
	EMPTY_MEMBERSHIP.

	* manipulate.h (register_jubel, free_all_jubel): New functions.

	* lyskomd.h (num_ip_client_port, num_ip_mux_port): Removed.

	* kom-types.c: Removed crap.  This file is now empty.

	* kom-memory.h, memory.c: Cleanup. Added init_* functions.

	* internal-connections.c (init_connection): New function.
	(alloc_connection): Use it, instead of the (now deleted) const
	EMPTY_CONNECTION.

	* dbck.c (main): Read configuration file, the same way that
	lyskomd does.

	* conf-file.h: (struct parameter): default_val is a char*, not
	void*.

	* conf-file.c (assign_bool, configure_line): Use strcmp, not
	strcasecmp (which is not portable).

	* admin.c, conference.c, dbck.c, disk-end-of-atomic.c, fncdef.txt,
	person.c, prot-a-parse-arg-c.awk, prot-a.c, session.c,
	simple-cache.c, text-garb.c, text.c: Use param."foo" (from
	param.h) instead of "FOO".

	* Makefile.in (DBCK): Added conf-file.o.
	(DBCK_SRCS): Added conf-file.c.

Fri Jan 14 20:06:14 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* server-config.h: New file.

1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
Wed Jan 12 02:26:36 1994  Per Cederqvist  (ceder@lysator.liu.se)

	* server-config.c (CONFIG_FILE): New constant.

	* ramkomd.c: Read configuration from a config file.
	(initialize): New function.
	(param): New variable, holding (almost) all configuration.
	(send_async_messages): Superseeded by param.send_async_messages.
	* send-async.c: Track change
	* ramkomd.c (parameters): New variable.
	(main): Only accept -d and name of config file as arguments.
	(num_ip_client_port, num_ip_mux_port): Superseeded by
	param.num_ip_client_port and param.num_ip_mux_port.
	* connections.c (login_request): Track change.

	* connections.c, dbck-cache.c, person.c, prot-a.c, text-garb.c,
	simple-cache.c : Fixed format strings in BUG/VBUG/TRACE2 macros.

	* param.h, conf-file.h, conf-file.c: New files.

	* Makefile.in (HDRS): Added conf-file.h and param.h.
	(GENOBJS): Added conf-file.o.
	(GEN_SRCS): Added conf-file.c.

Per Cederqvist's avatar
Per Cederqvist committed
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
Mon Nov 22 20:03:37 1993  Per Cederqvist  (ceder@lysator.liu.se)

	* tmp-limits.h (MAX_TEXT): Increased to 550000.
	(MAX_CONF): Increased to 3765.

	* ramkomd.c (sighandler_usr1): Re-install the signal handler when
	it catches a signal.

	* prot-a-parse-arg-c.awk: Include <sys/types.h>, <sys/socket.h>
	and <stdarg.h> in the generated file (prot-a-parse-arg.c).

Per Cederqvist's avatar
Per Cederqvist committed
1079
1080
1081
1082
1083
1084
1085
1086
Thu Oct 14 10:15:27 1993  Per Cederqvist  (ceder@lysator.liu.se)

	* admin.c, conference.c, dbck-cache.c, internal-connections.c,
	membership.c, memory.c, person.c, prot-a-parse.c, ram-output.c,
	ram-parse.c, regex-match.c, send-async.c, session.c,
	simple-cache.c, text-garb.c, text.c: Include <stdarg.h> if
	HAVE_STDARG_H.

Per Cederqvist's avatar
Per Cederqvist committed
1087
1088
Wed Oct 13 00:03:53 1993  Per Cederqvist  (ceder@lysator.liu.se)

Per Cederqvist's avatar
Per Cederqvist committed
1089
1090
1091
1092
	* mux.c (mux_printf): Track the name change in isc, and call
	UCB_printf instead of _printf. (_printf clashed with _printf from
	libc on HPUX machines).

Per Cederqvist's avatar
Per Cederqvist committed
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
	* dbck-cache.c, simple-cache.c (SEEK_SET, SEEK_END): Define them,
	if we cannot find them in <stdio.h>, <fcntl.h> or <unistd.h>.

	* ramkomd.c (main): New option: "-llocale". Default is now to
	never call setlocale().

	* Makefile.in (LIBS): Not all systems support the -L flag to ld,
	so avoid it. Give "$(LIBDIR)/libfoo.a" to ld instead of
	"-L$(LIBDIR) -lfoo".

	* log.{h,c} (log): Test HAVE_VFPRINTF, and use a substitute log
	function if no vfprintf is available. The substitute might even
	work on some architectures!
	* ramkomd.c (restart_kom): Likewize.
	* dbck.c (log, restart_kom): Ditto.

Tue Oct 12 19:36:41 1993  Per Cederqvist  (ceder@lysator.liu.se)

	* getopt.h: Removed, since it was unused.

	* ramkomd.c: Test HAVE_LOCALE_H.

	* dbck-cache.c, dbck.c, person.c, ramkomd.c: Test HAVE_STDLIB_H.

	* connections.c, isc-parse.c, membership.c, memory.h, mux.c,
	person.c, ram-parse.c, ramkomd.c: Test HAVE_STRING_H.

	* text.c (get_last_text): Now takes a (struct tm *) as argument,
	not a time_t. That way we can use localtime() (which is POSIX)
	instead of timelocal() (which appears to exist only on SunOS 4.x).
	* call-switch.awk: Don't call timelocal when creating code for a
	time_date. (The called function should expect a (struct tm *), not
	a time_t as before).

1127
1128
Sun Oct 10 12:25:47 1993  Per Cederqvist  (ceder@lysator.liu.se)

1129
1130
1131
1132
1133
1134
1135
1136
1137
	* fncdef.txt: sync renamed to sync_kom, to avoid name clashes with
	libc.
	* admin.c (sync_kom): Was formerly named sync.
	* prot-a.c (prot_a_is_legal_fnc): call_fnc_sync is renamed to
	call_fnc_sync_kom.

	* ramkomd.c (sighandler_usr2): Removed buggy declaration of
	fork().

1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
	* rfc931.c (get_real_username): Test HAVE_LIBAUTHUSER instead of
	RFC_931.

	* ramkomd.c (restart_kom): Use getcwd() (which is POSIX) to get
	the current working directory. Fall back on getwd() if getcwd() is
	not available.

	* ramkomd.c (main): Use sysconf(_SC_OPEN_MAX) instead of
	getdtablesize(), if available.
	* server-config.c (MAX_NO_OF_CONNECTIONS): Now initialized by
	main() if HAVE_SYSCONF or HAVE_GETDTABLESIZE is defined.

	* kom-memory.h: Renamed memory.h to kom-memory.h, to avoid
	conflicts with <memory.h>.

	* fncdef.txt: shutdown renamed to shutdown_kom, to avoid name
	clashes with libc.
	* admin.c (shutdown_kom): Was formerly named shutdown.
	* prot-a.c (prot_a_is_legal_fnc): call_fnc_shutdown is renamed to
	call_fnc_shutdown_kom.

	* *.h, *.c: Replace u_ with unsigned.

	* *.c: POSIXized include files.

	* connections.h (parse_env): Always declare it, even if _JBLEN is
	undefined. (Not all versions of <setjmp.h> defines _JBLEN).
	* mux-parse.h (mux_arse_env): Likewise.

	* Makefile.in: Hacked to work with --srcdir.

Per Cederqvist's avatar
Per Cederqvist committed
1169
1170
1171
1172
Fri Oct  8 18:41:58 1993  Per Cederqvist  (ceder@lysator.liu.se)

	* Makefile.in (LIBS): Added -L$(LIBDIR).

1173
1174
1175
1176
1177
Thu Oct  7 22:26:52 1993  Per Cederqvist  (ceder@lysator.liu.se)

	* missing-ansi.c, tmp-difftime.h: Removed.  The contents of the
	files can now be found inside libraries/libansi.

1178
1179
1180
1181
1182
Tue Sep 28 00:59:41 1993  Per Cederqvist  (ceder@lysator.liu.se)

	* rfc931.c: Don't include <authuser.h> unless RFC_931 is defined
	(thanks to Bo Kullmar).

Per Cederqvist's avatar
Per Cederqvist committed
1183
1184
1185
1186
1187
1188
1189
1190
1191
Fri Aug 13 16:17:42 1993  Per Cederqvist  (ceder@lysator.liu.se)

	* version.incl: Version 1.4.1 (not released).

	* simple-cache.c (sync_part): Fixed bug, introduced on 5 Aug
	(causing nothing to be saved automatically).
	* simple-cache.c (sync_state): New state: sync_idle. Documented
	the state machine.

Per Cederqvist's avatar
Per Cederqvist committed
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
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
Thu Aug  5 01:01:44 1993  Per Cederqvist  (ceder@lysator.liu.se)

	* version.incl: Version 1.4 (not released).

	* tmp-limits.h: Allow 450000 texts.

	* simple-cache.c (init_cache): Don't print false error messages
	when the -L option is not given.

	* simple-cache.c (sync_part): Prevent lyskomd from looping
	endlessly when the server is shut down, by always returning TRUE
	when a save cycle is finished (even if a new cycle should be
	initiated immediately).

	* conference.c (legal_name): Set kom_errno to KOM_LONG_STR or
	KOM_BAD_NAME if it fails. Updated all callers of legal_name to not
	set kom_errno.

	* tmp-difftime.h: New includefile, which should be removed as soon
	as possible (when configuration is improved).
	* missing-ansi.c, connections.c, text-garb.c, simple-cache.c,
	session.c: Include it.

	* fncdef.txt: Added lookup_person and lookup_conf.
	* conference.c (do_lookup, lookup_person, lookup_conf): New functions.

	* fncdef.txt: Added set_client_version, get_client_name and
	get_client_version.
	* session.c (set_client_version, get_client_name,
	get_client_version): New functions.
	* connections.h (struct connection): Added new fields named
	client_name and client_version.
	* internal-connections.c (EMPTY_CONNECTION, new_client,
	kill_client): Initialize/destruct the fields as appropriate.

	* cache.h, simple-cache.c (cached_create_text): The string is a const.
	* text.c (create_text, create_anonymous_text): Likewize.

	* It is now possible to mark texts with mark_type 0.
	* fncdef.txt: Renamed mark_text to mark_text_old.
	* fncdef.txt: Added mark_text and unmark_text.
	* person.c: (do_unmark_text): New function: delete a mark.
	* person.c: (do_mark_mark_text): Never delete a mark. All callers
	changed to use do_unmark_text instead where appropriate.
	* person.c: (mark_text, unmark_text): New functions.
	* person.c: (mark_text_old): Compatibility function that calls
	mark_text or unmark_text depending on mark_type. This will now
	return an error if you unmark at text that you had not marked.

	* prot-a.c (is_legal_fnc): Track the above changes.

1243
1244
1245
1246
1247
1248
Mon Mar 15 02:32:16 1993  Per Cederqvist  (ceder@lysator.liu.se)

	* version.incl: Version 1.3.3 (not released).

	* tmp-limits.h: Allow 399999 texts and 2965 conferences.

Per Cederqvist's avatar
Per Cederqvist committed
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
Sun Feb 21 17:34:30 1993  Per Cederqvist  (ceder@lysator.liu.se)

	* version.incl: Version 1.3.2 (not released).

	* connections.c (add_to_kill_list): Fixed a bug that caused some
	  false warnings in the log file.

	* rfc931.c (get_real_username): A fake version when RFC_931 is
	  undefined.

Per Cederqvist's avatar
Per Cederqvist committed
1259
1260
1261
1262
Sun Jan 17 04:38:34 1993  Per Cederqvist  (ceder@konrad)

	* version.incl: Version 1.3.1 (not released).

1263
1264
1265
1266
1267
1268
1269
Sat Jan 16 23:25:44 1993  Per Cederqvist  (ceder@konrad)

	* *.c: Use the USE macro.

	* ramkomd.c (dbase_dir): This variable was only used in main, and
	  was thus moved into main().

1270
1271
Sat Dec 19 01:17:41 1992  Per Cederqvist  (ceder@mauritz)

Per Cederqvist's avatar
Per Cederqvist committed
1272
1273
1274
1275
	* version.incl: Version 1.3.

	* rfc931.c (get_real_username): Don't log as much as previously.

1276
1277
1278
1279
1280
1281
1282
1283
1284
	* Implement regexp matching, using GNU regex 0.11.
	* cache.h, simple-cache.c (cached_no_of_existing_conferences,
	cached_get_name): New functions.
	* fncdef.txt (re_lookup_person, re_lookup_conf): New functions.
	* prot-a.c (prot_a_is_legal_fnc): They are legal.
	* regex-match.c: New file.
	* server-config.c (REGEXP_LEN): Allow 1024 bytes of regexps.
	* Makefile (ATOMS, ATOMS_SRCS): Include regex-match.{c,o}.

1285
1286
1287
1288
1289
1290
1291
Tue Dec  1 00:17:23 1992  Linus Tolke Y  (linus@mauritz)

	* version.incl: Version 1.2.8.

	* simple-cache.c (cache_delete_text): Simple bug in the logging of
	  deleting texts.

1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
Sun Nov 22 16:06:36 1992  Per Cederqvist  (ceder@mauritz)

	* version.incl: Version 1.2.7.

	* Support for logging of all db accesses:
	* ramkomd.c (main): Added -L option.
	* cache.h (tell_cache_garb_text): New function.
	* simple-cache.c: Do the logging.
	* text-garb.c (garb_text): Inhibit the logging while garbing.

	* cache.h: Removed unused stuff.

Mon Nov  2 19:18:08 1992  Per Cederqvist  (ceder@mauritz)

	* simple-cache.c (LOGFILE): Deleted the changes from Tue Oct 27.

	* cache.h (MAX_CACHED_PERSONS, MAX_CACHED_WHATEVER,
	cached_load_names, cached_add_name): was unused, is deleted.

1311
1312
1313
1314
1315
1316
1317
Tue Oct 27 05:27:55 1992  Per Cederqvist  (ceder@ruben)

	* version.incl: Version 1.2.6.

	* simple-cache.c (LOGFILE): If #define'd, log every usage of the
	database to the file whose filename LOGFILE is set to.

Per Cederqvist's avatar
Per Cederqvist committed
1318
1319
1320
1321
1322
1323
Thu Oct  8 08:51:23 1992  Per Cederqvist  (ceder@mauritz)

	* tmp-limits.h: Allow 333333 texts.

	* dbck.c (main): Fixed usage message.

1324
1325
1326
1327
1328
Wed Oct  7 00:43:03 1992  Per Cederqvist  (ceder@mauritz)

	* text-garb.c: Added a comment that describes a design for a
	better way to implement garbage collection of texts.

Per Cederqvist's avatar
Per Cederqvist committed
1329
1330
1331
1332
1333
1334
1335
1336
1337
Sun Sep  6 20:30:01 1992  Per Cederqvist  (ceder@robert)

	* version.incl: Version 1.2.5.

	* connections.c (toploop): Optimization: don't flush stdout 
	unless buglevel > 0.

	* tmp-limits.h: Allow 33333 texts and 1999 confs.

1338
1339
Wed Aug 12 01:38:22 1992  Per Cederqvist  (ceder@robin)

Per Cederqvist's avatar
Per Cederqvist committed
1340
1341
	* version.incl: Version 1.2.4.

1342
1343
1344
1345
1346
1347
1348
1349
	* rfc931.c (get_real_username): Introduce 20-second timeout. Log
	any ident queries that takes more than 3 seconds. New argument:
	hostname (only used for the log).
	* connections.c (login_request): Send the new argument.

	* log.c (logv): Print the log message on a single line, with the
	time in the first 20 columns. (Facilitate log browsing).

1350
1351
Wed Aug 12 00:33:55 1992  Inge Wallin  (inge@lysator)

1352
	* simple-cache.c (save_one_text): Write texts to file as long as
1353
1354
	  they are removed. 

1355
1356
Thu Jun 11 16:28:39 1992  Per Cederqvist  (ceder@lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1357
1358
	* vercion.incl: Version 1.2.3.

1359
1360
1361
1362
	* server-config.c: Timeout set to two minutes. Cache size
	increased to 20 elements.
	* simple-cache.c (dump_cache_stats): Also report the cache sizes.

Per Cederqvist's avatar
Per Cederqvist committed
1363
1364
	* missing-ansi.c (strerror): Return a const char *,not a char *.

1365
1366
1367
	* connections.c (login_request): Don't dump core when we can't get
	the name of the originating host.

1368
1369
1370
1371
1372
Wed Jun 10 03:36:30 1992  Per Cederqvist  (ceder@robin)

	* ramkomd.c (main): Log version number and pid when starting a new
	server.

1373
1374
Sun May 31 03:08:31 1992  Per Cederqvist  (ceder@lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1375
1376
1377
1378
	* version.incl: Version 1.2.2 (not released). (Note: a bug in
	isc-0.97 has been fixed since 1.2.1: malloc() was used instead of
	isc_malloc_wrapper to allocate the kom_server_mcb).

1379
1380
1381
 	* lyskomd.h (kom_server_mcb): Removed duplicate declaration (it
	was (and still is) also declared in connections.h).

1382
1383
	* handle-malloc-dump.el: Added (require 'elib-dll).

1384
1385
Mon May 25 22:56:38 1992  Per Cederqvist  (ceder@lysator)

1386
1387
1388
	* ram-smalloc.c (tmp_alloc): Don't log the size of the internal
	table anymore.

1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
	* version.incl: Version 1.2.1 (not released).

	* server-config.c (TIMEOUT): Increased from 100 ms to 5 seconds.
	With isc 0.97 that should be no problem!

	* connections.c (toploop): The timeout is initially zero, so that
	the garbing starts right away.

	* connections.c (login_request): Fix so that the server can tell
	the difference between a mux and a client (using num_ip_*_port)
	(The bug was introduced with the isc upgrade).
	* lyskomd.h (listen_client, listen_mux): No longer exported.
	* ramkomd.c (listen_client, listen_mux): Now static.
	* ramkomd.c, lyskomd.h (num_ip_client_port, num_ip_mux_port): New
	variables.
	* ramkomd.c (server_init): Really use the IscConfig struct.
	* ramkomd.c (server_init): Log which ports lyskomd listens to for
	clients and servers, and set num_ip_*_port.

1408
1409
1410
1411
1412
1413
1414
Sat May 23 19:57:17 1992  Per Cederqvist  (ceder@robin)

	* text.c (add_comment, add_footnote): Disallow texts to be
	comments/footnotes to themselves, since that would trigger a bug
	(the misc-list that is created would be erronous. A proper
	misc-info-list handling package should be written instead.

1415
1416
1417
1418
Tue May 19 01:06:50 1992  Per Cederqvist  (ceder@lysator)

	* Makefile (tags): Search libraries/libisc-new.

1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
Mon May 18 23:27:04 1992  Per Cederqvist  (ceder@lysator)

	* connections.h (Connection): Added the boolean field
	username_valid.
	* internal-connections.c (new_client, EMPTY_CONNECTION):
	Initialize it.
	* prot-a.c (prot_a_parse_packet): Use it to test if username is
	set or not (instead of just assuming that an empty username is
	unset).

Per Cederqvist's avatar
Per Cederqvist committed
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
Thu Apr 16 00:46:50 1992  Per Cederqvist  (ceder@lysator)

	* Use isc-0.97:
	* Makefile (LIBS): -lisc-new instead of -lold-isc.
	* Makefile (GENOBJS, GEN_SRCS): Include isc-malloc.[oc].
	* isc-malloc.[hc]: New files. (Compare string-malloc.[hc]).
	* Various namechanges:
		  ISCMCB -> IscMaster
		  ISCECB -> IscEvent
		  ISCSCB -> IscSession
		  
	* Use isc_destroy() instead of isc_close().
	* isc-interfacs.h: Include <isc-new.h> instead of <isc.h>.
	* lyskomd.h (listen_client, listen_mux): Now (IscSession *).
	Updated all references.
	* lyskomd.h (kom_server_mcb): Now declared here.
	* ramkomd.c ("isc-malloc.h"): Include instead of <isc-dump.h>.
	* ramkomd.c (server_init): Use the new configuration scheme.
	(Needs som further investigation).
	* ramkomd.c (dump_exit_statistics): Don't
	dump_isc_message_counts() since it doesn't exist.

Wed Apr 15 19:52:20 1992  Per Cederqvist  (ceder@lysator)

	* connections.c (add_to_kill_list): Check if the connection
	already was on the kill-list. If so, print a diagnostic and
	return.

1457
1458
Tue Apr 14 17:21:26 1992  Per Cederqvist  (ceder@lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1459
1460
	* Version 1.1.2 (not released).

1461
1462
1463
1464
1465
	* session.c (create_oldstyle_username): New function.
	* session.c (pepsi, change_what_am_i_doing, who_is_on,
	get_session_info): Use it. (pepsi and change_what_am_i_doing used
	to got the username wrong in 1.1.1).

1466
1467
1468
1469
1470
Sat Apr 11 22:00:27 1992  Per Cederqvist  (ceder@robin)

	* connections.c (check_kill_flag): Small optimization: don't call
	sfree when the kill_list is empty.

1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
Fri Apr 10 13:46:41 1992  Per Cederqvist  (ceder@lysator)

	* Since lyskomd spended 25% of the time in check_kill_flag it was
	rewritten. Instead of having a flag in the Connection that is
	checked once after every atomic call a linked list of connections
	that shall be killed is created.
	* connections.h (Connection): The field kill_me deleted.
	* connections.[hc] (add_to_kill_list): New function.
	* connections.c (kill_list_size): New variables.
	* connections.c (check_kill_flg): Rewritten to use the kill_list.
	* internal-connections.c (EMPTY_CONNECTION, new_client): Don't try
	to initialize kill_me.
	* session.c (disconnect): Use add_to_kill_list() instead of kill_me.

Per Cederqvist's avatar
Per Cederqvist committed
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
Thu Apr  9 00:15:33 1992  Per Cederqvist  (ceder@lysator)

	* Version 1.1.1 (not released).

	* Lyskom used to spend 60% of the time in limit_text_stat. With
	the changes of today it has dropped to 0.1%.

	* disk-end-of-atomic.c (end_of_atomic): Call limit_cache_size only
	every 100 rounds.

	* conference.c (unique_name): Fixed bug. It was previously
	possible to create a conference with the same name as an already
	existing conference.

	* simple-cache.c (throwable_p): New function.
	* simple-cache.c (limit_pers, limit_conf, limit_text_stat): Use
	throwable_p, and get the condition right. 

Per Cederqvist's avatar
Per Cederqvist committed
1503
1504
1505
1506
1507
1508
1509
1510
Tue Apr  7 16:48:54 1992  Per Cederqvist  (ceder@robin)

	* session.c (login_old, login): Handle visibility flag correctly
	when an implicit logout is performed.

	* prot-a-output.c (prot_a_output_who_info): Removed erroneous
	bugfix.

1511
1512
1513
1514
1515
1516
1517
Mon Apr  6 23:11:29 1992  Per Cederqvist  (ceder@ruben)

	* session.c (who_is_on_ident): Fix malloc bug.

	* session.c (who_is_on, who_is_on_ident, who_is_on_old): Don't
	return invisible sessions.

Per Cederqvist's avatar
Per Cederqvist committed
1518
1519
Sat Apr  4 19:24:27 1992  Per Cederqvist  (ceder@lysator)

1520
	* person.c (get_person_stat): It is allowed to get the person
1521
1522
1523
	status before logging in so that it is possible to print a "last
	login from:" message.

Per Cederqvist's avatar
Per Cederqvist committed
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
	* ramkomd.c: Include "getopt.h", not <getopt.h>.

	* person.c (create_person): The newly created person always logs in
	visibly.

	* kom-types.c (EMPTY_SESSION_INFO_IDENT, EMPTY_WHO_INFO_IDENT):
	New constants.

	* Makefile (LIBS): Use LIBRESOLV and LIBIDENT.

1534
1535
Wed Apr  1 22:02:55 1992  Per Cederqvist  (ceder@lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1536
	* Code to allow invisible sessions:
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
	* connections.h (Connection): New field: invisible.
	* session.c, fncdef.txt (login_old): New name for the function
	login().
	* fncdef.txt (login): New function with a parameter for invisible
	use.
	* session.c, fncdef.txt (login): New function with invisibility
	support.
	* session.c (logout, pepsi, change_what_i_am_doing): Don't send
	asynchronous messages if the session is invisible.

Per Cederqvist's avatar
Per Cederqvist committed
1547
1548
	* Code to allow user identification using the Ident protocol (as
	defined in RFC 931):
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
	* connections.h (Connection): New field: ident_user.
	* connections.h (Res_type): New types: rt_session_info_ident and
	rt_who_info_ident_list.
	* connections.c (login_request): Set ident_user.
	* fncdef.txt (who_is_on_ident, get_session_info_ident): New
	functions that behaves like who_is_on and get_session_info, but
	also returns the ident name.
	* internal_conections.c (EMPTY_CONNECTION, new_client,
	kill_client): Set/free ident_user and invisible.
	* prot_a_output.c (prot_a_output_who_info_ident,
	prot_a_output_who_info_ident_list,
	prot_a_output_session_info_ident): New functions.
	* prot-a.c (reply): rt_who_info_ident_list and
	rt_session_info_ident: New reply types.
	* session.c (login_old): Generate the a proper (but not
	1.1.0-compatible) string in username.
	* session.c (who_is_on, get_session_info): Generate username.
	* session.c (who_is_on_ident, get_session_info_ident): New functions.

	* prot-a.c (prot_a_reply): Free username when returning a
Per Cederqvist's avatar
Per Cederqvist committed
1569
	session_info. It is allocated in get_session_info() in session.c.
1570
	* prot-a-output.c (prot_a_output_who_info_list): Free username
Per Cederqvist's avatar
Per Cederqvist committed
1571
1572
	when returning a who_info_list. It is allocated in who_is_on() in
	session.c.
1573

1574
1575
1576
1577
1578
Tue Mar 31 23:48:47 1992  Per Cederqvist  (ceder@robert)

	* rfc931.[hc]: New file.
	* Makefile: (GEN_OBJS, GEN_SRCS): Use it.

1579
1580
1581
1582
1583
1584
Tue Mar 24 18:05:18 1992  Per Cederqvist  (ceder@robert)

	* simple-cache.c (save_one_text): Check that the entire file made
	it to the disk (compare wath ftell() says after fclose() and
	fopen()).

1585
1586
1587
1588
1589
1590
1591
1592
Mon Mar 23 08:51:13 1992  Per Cederqvist  (ceder@robin)

	* dbck.c (truncated_texts): New variable.
	* dbck.c (main): Increase modifications if truncated_texts is set.
	* dbck-cache.c (init_cache): If the database is truncated or
	severely damaged in the text-status part, just ignore the remaining
	texts (and don't fail miserably).

Per Cederqvist's avatar
Per Cederqvist committed
1593
1594
1595
1596
1597
Thu Mar 12 04:30:17 1992  Per Cederqvist  (ceder@lysator)

	* membership.c (get_unread_confs): You must be logged in to use
	  this call.

Per Cederqvist's avatar
Per Cederqvist committed
1598
1599
1600
1601
Mon Mar  9 16:33:45 1992  Per Cederqvist  (ceder@robin)

	* DATAFILE_NAME (server-config.c): Added a comment.

Per Cederqvist's avatar
Per Cederqvist committed
1602
1603
Wed Feb 26 19:49:21 1992  Per Cederqvist  (ceder@lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1604
	* various: Lint from gcc 2.0 deleted.
Per Cederqvist's avatar
Per Cederqvist committed
1605

Per Cederqvist's avatar
Per Cederqvist committed
1606
1607
Fri Feb 21 01:45:35 1992  Per Cederqvist  (ceder@robin)

Per Cederqvist's avatar
Per Cederqvist committed
1608
	* server-config.c (SYNC_TIMEOUT): Decreased from 10 millisec to 0.
Per Cederqvist's avatar
Per Cederqvist committed
1609
1610
1611
	  It takes some 2 hours for the server at Lysator to save the
	  entire data base, and that is a bit too long...

Per Cederqvist's avatar
Per Cederqvist committed
1612
	* dbck.c (main): New flag: -s. Prints some extra statistics.
Per Cederqvist's avatar
Per Cederqvist committed
1613

Per Cederqvist's avatar
Per Cederqvist committed
1614
	* dbck.c (print_statistics): New function that prints statistics
Per Cederqvist's avatar
Per Cederqvist committed
1615
1616
	  about the lengths of texts.

Per Cederqvist's avatar
Per Cederqvist committed
1617
	* prot-a-parse-arg-c.awk: Fixed a syntax error. (gawk could
Per Cederqvist's avatar
Per Cederqvist committed
1618
1619
	  handle the file, but awk could not).

1620
1621
Sun Jan 12 02:30:34 1992  Per Cederqvist  (ceder at lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1622
	* prot-a-parse.[ch] (prot_a_get_token): Then function is now static.
1623

1624
1625
Sun Jan  5 19:10:20 1992  Per Cederqvist  (ceder at lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1626
	* dbck.c (main): Tell the user why no compression was done if he
Per Cederqvist's avatar
Per Cederqvist committed
1627
1628
	  specifies -g and there is an error in the files.

Per Cederqvist's avatar
Per Cederqvist committed
1629
	* dbck.c, ramkomd.c (main): Better usage messages.
Per Cederqvist's avatar
Per Cederqvist committed
1630

Per Cederqvist's avatar
Per Cederqvist committed
1631
	* simple-cache.c (init_cache): Slightly better log error message
1632
1633
	  when the text file can not be found.

1634
1635
Wed Dec 18 00:05:43 1991  Per Cederqvist  (ceder at lysator)

1636
1637
	* Version 1.0.4 was never used. Version is now 1.1.0.

1638
1639
1640
	* fncdef.txt, prot-a.c, text.c (find_next_text_no,
	  find_previous_text_no): New functions.

1641
1642
Tue Dec 17 00:52:11 1991  Per Cederqvist  (ceder at lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1643
1644
1645
1646
1647
1648
	* prot-a-parse-arg-c.awk: Fixed bogus parsing of argument to
	  get_last_text.

	* prot-a-parse.h, prot-a-parse.c (prot_a_parse_time_date): New
	  function for get_last_text.

1649
1650
	* text.c (get_last_text): Rewrote it.

1651
1652
Mon Dec 16 15:32:57 1991  Per Cederqvist  (ceder at ruben)

1653
1654
1655
1656
	* conference.c (is_supervisor): New arguments: viewer and viewer_p.

	* membership.c (access_perm): New parameters: viewer and viewer_p.

1657
1658
1659
1660
1661
1662
	* admin.c (broadcast, send_message): Don't forget to check the
	  length of the message. 

	* text.c (create_text, create_anonymous_text): Fixed error in max
	  length comparison.

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
	* All the changes below fixes one single bug. When a text is
	  created that has both a secret and a public conference as
	  recipient the asynchronous messages that were sent out did not
	  filter away the secret conference. This has how been fixed.

	* membership.c manipulate.h (fast_access_perm): New arguments:
	  viewer and viewer_p.

	* send-async.c, text.c (is_member_in_recpt): Moved from
	  send-async.c to text.c.

	* send-async.h, send-async.c (async_new_text): Sends to a
	  specified connection.

	* text.c (create_text, create_anonymous_text): Use
	  send_async_new_text.

	* text.c (send_async_new_text): New function.

	* text.c (get_text_stat): Use filter_secret_info.

	* text.c (filter_secret_info): New function that given a text-stat
	  and a person number yields a new text-stat that only contains
	  tha recipients that the viewer is allowed to know about.

Per Cederqvist's avatar
Per Cederqvist committed
1688
1689
1690
1691
Mon Nov 11 01:08:09 1991  Per Cederqvist  (ceder at ruben)

	* fncdef.txt, prot-a.c, text.c: Added create_anonymous_text.

Linus Tolke's avatar
Linus Tolke committed
1692
1693
1694
1695
1696
Mon Nov 10 20:00:00 1991  Linus Tolke T  (linus at ruben)

	* fncdef.txt, prot-a.c, text.c, call-switch.awk, cache.h, 
	  connections.h : Added get_last_text.

1697
1698
1699
1700
1701
Tue Oct 29 15:48:15 1991  Linus Tolke Y  (linus at ruben)

	* prot-a-output.c, prot-a-parse.c, ram-output.c, ram-parse.c
	  (Priv_bits): The flg7 field has change name to extern_gw.

1702
1703
Tue Oct 29 03:52:34 1991  Per Cederqvist  (ceder at robert)

1704
1705
1706
1707
1708
	* Makefile (tags): tags does not depend on anything now.

	* Makefile (HDRS): isc.h should be isc-interface.h. See note from
	  Sat Sep 21. 

Per Cederqvist's avatar
Per Cederqvist committed
1709
1710
	* Version is now 1.0.4.

1711
1712
1713
1714
	* internal-connections.c (no_of_connection_attempts): Now a global
	  variable, so that dump_allocated_connections can write it to the
	  log files.

1715
1716
1717
1718
1719
	* ramkomd.c (dump_exit_statistics): This function, which is only
	  run when the server is brought down nicely, writes some
	  statistics to a log file. The log file is now open in append
	  mode (and not overwrite mode...)

1720
1721
1722
1723
1724
Mon Oct 21 23:14:22 1991  Per Cederqvist  (ceder at robin)

	* text.c (create_text): Check that the length of the text is no
	  greater than TEXT_LEN.

Per Cederqvist's avatar
Per Cederqvist committed
1725
1726
Wed Sep 25 11:44:17 1991  Per Cederqvist  (ceder at lysator)

1727
1728
1729
1730
1731
	* person.c (do_set_passwd, chk_passwd),
	  ram-parse.c (fparse_conference):
	  Use string_free and not sfree to free strings that was
	  created with s_crea_c_string. 

Per Cederqvist's avatar
Per Cederqvist committed
1732
1733
	* person.c (do_set_passwd): Fixed serious bug in salt generation.

Per Cederqvist's avatar
Per Cederqvist committed
1734
1735
1736
1737
Mon Sep 23 19:39:55 1991  Per Cederqvist  (ceder at lysator)

	* text.c (sender): handle a sent_at correctly.

Per Cederqvist's avatar
Per Cederqvist committed
1738
1739
Sat Sep 21 02:12:24 1991  Per Cederqvist  (ceder at lysator)

1740
1741
1742
1743
1744
	* "isc.h" is now known as "isc-interface.h" to avoid confusion
	  with <isc.h>.

	* version.incl: Go 1.0.2.

1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
	* ram-smalloc.c: Added support for memory leak finding.

	* trace-mem.gdb, handle-malloc-dump.el: Useful for finding memory 
	  leaks in the server. Compile ram-smalloc.c with DEBUG_MALLOC
	  defined.

	* mux.c (mux_close): Fixed memory leak.

	* ramkomd.c (main): Print how many blocks isc allocates.

Per Cederqvist's avatar
Per Cederqvist committed
1755
1756
	* ramkomd.c: ip_client_port and ip_mux_port are local to ramkomd.c.

Per Cederqvist's avatar
Per Cederqvist committed
1757
1758
1759
1760
1761
1762
Tue Sep 17 23:04:39 1991  Per Cederqvist  (ceder at lysator)

	* .gdbinit: Now created by "make .gdbinit".

	* Removed smalloc.c that is never used.

Per Cederqvist's avatar
Go 1.0!    
Per Cederqvist committed
1763
1764
1765
1766
Mon Sep 16 19:27:04 1991  Per Cederqvist  (ceder at lysator)

	* version.incl: Version 1.0!

Per Cederqvist's avatar
Per Cederqvist committed
1767
1768
1769
1770
1771
Fri Sep 13 22:20:59 1991  Per Cederqvist  (ceder at lysator)

	* server-config.c: Det heter lyskomd-data, inte ramkomd-data
	  (osv). F|rb{ttrade n}gra kommentarer.

Per Cederqvist's avatar
Per Cederqvist committed
1772
1773
1774
1775
1776
1777
1778
1779
1780
Thu Sep 12 01:00:13 1991  Per Cederqvist  (ceder at lysator)

	* ramkomd.c (main): Anropa srand() om ENCRYPT_PASSWORDS {r satt,
	  s} att vi f}r ett slumpm{ssigt fr|.

	* person.c (do_set_passwd, chk_passwd) Kryptera l|senord om
	  ENCRYPT_PASSWORDS {r satt. (Inkompatibelt med gamla
	  databasformatet).

1781
1782
1783
1784
1785
1786
Tue Sep 10 21:58:18 1991  Per Cederqvist  (ceder at robert)

	* conference.c (delete_conf): Om det {r en brevl}da som tas bort
	  s} ska personen som tas bort loggas ut f|rst (inte n|dv{ndigtvis
	  personen som tar bort en person...)

Per Cederqvist's avatar
Per Cederqvist committed
1787
1788
Thu Sep  5 10:14:40 1991  Per Cederqvist  (ceder at lysator)

1789
1790
1791
1792
1793
1794
1795
	* cache.h, simple-cache.c, dbck-cache.c (cached_set_conf_type): 
	  borttagen.

	* conference.c, person.c: alla anrop till cached_set_conf_type
	  borttagna. (Funktionen anropades bara precis efter
	  mark_conference_as_changed.	  

Per Cederqvist's avatar
Per Cederqvist committed
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
	* simple-cache.c: Fixade lite stavfel. La till lite nya defensiva
	  kontroller.

	* simple-cache.c (mark_conference_as_changed): Uppdatera inte bara
	  first_local_no, utan {ven nice och type i small_conf_array varje
	  g}ng som mark_conference_as_changed anropas. Namnet uppdateras
	  dock inte. Det kostar nog mer {n det smakar (man m}ste
	  reallokera en str{ng n{r man {ndrar namnet).

	* simple-cache.c (get_text_node, get_pers_node, get_conf_node):
	  Returnera NULL om det s|kta numret {r st|rre {n next_free_num
	  eller next_text_num. Defensivt ska det vara!

Wed Sep  4 22:03:47 1991  Per Cederqvist  (ceder at lysator)

	* text-garb.c (garb_text): Nollst{ll deleted_texts n{r garbningen
	  {r klar.

1814
1815
1816
1817
1818
1819
Sat Aug 31 22:14:30 1991  Per Cederqvist  (ceder at lysator)

	* ramkomd.c: Inkludera alltid <locale.h> - gcc -M f|rs|ker
	  inkludera den {ven om HAVE_LOCALE inte {r satt. Skicka med en
	  tom locale.h i include/ansi f|r de som inte har locale.

1820
1821
Fri Aug 30 05:32:13 1991  Per Cederqvist  (ceder at lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1822
1823
1824
	* config.c ramkomd.c (MAX_NO_OF_CONNECTIONS): S{tt fr}n
	  getdtablesize om det anropet finns.

1825
1826
1827
	* limits.h heter numera tmp-limits.h (f|r att inte f|rv{xla den
	  med ANSI-filen <limits.h>.

1828
1829
Wed Aug 28 03:21:27 1991  Per Cederqvist  (ceder at lysator)

1830
1831
1832
	* dbck.c (post_check_persons): Uppdatera modifications {ven n{r
	  man reparerar antalet skapade m|ten f|r en person.

Per Cederqvist's avatar
Per Cederqvist committed
1833
1834
1835
1836
	* La till RCS-Id i alla k{llkodsfiler.

	* prot-a-parse-arc-c.awk: "smalloc.h" heter <server/smalloc.h>.

Per Cederqvist's avatar
Per Cederqvist committed
1837
1838
	* dbck-cache2.c heter nu dbck-cache.c.

1839
1840
	* cache.c, end-of-atomic.c, lyskomd.c, ram-cache.c: Borttagna.

1841
1842
Mon Aug 26 04:13:34 1991  Per Cederqvist  (ceder at lysator)

1843
1844
	* simple-cache.c: Anv{nde BUFSIZ i st{llet f|r FILENAME_MAX.

1845
1846
	* #include "smalloc.h" heter nu #include <server/smalloc.h>

Per Cederqvist's avatar
Per Cederqvist committed
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
Sat Aug 24 17:36:43 1991  Per Cederqvist  (ceder at lysator)

	* simple-cache.c: Anv{nde FILENAME_MAX i st{llet f|r 1024.

	* limits.h (MAX_TEXT) |kade till 200003.

Wed Aug 14 02:11:17 1991  Per Cederqvist  (ceder at lysator)

	* Makefile(LIBS): La till -lresolv.

	* config.c(WHITESPACE): La till \r. Det g}r inte att koppla upp en
	  telnet till server version 0.31.6.

Per Cederqvist's avatar
Per Cederqvist committed
1860
Sat May 18 04:22:06 1991  Per Cederqvist  (ceder at nanny)
1861
 
Per Cederqvist's avatar
Per Cederqvist committed
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
	* Installerade och startade diskomd 0.29.1.

	* Div. bugfixar i diskomd och simple-cache.c.

Fri May 17 06:00:00 1991  Per Cederqvist  (ceder at nanny)

	* Installerade diskomd 0.29 som ramkomd.

Wed May  8 04:43:50 1991  Thomas Bellman  (Bellman@nanny)

	* conference.c (set_super_conf): Fixed bug that made it impossible
	  to set the super-conf to zero.


Mon May  6 09:34:00 1991  Per Cederqvist  (ceder at nanny)

	* Anv{nder funktionerna i memory.h s} l}ng m|jligt i st{llet f|r
	  smalloc/sfree.

	* Nu har servern tv} kopior av namnet p} varje m|te. Dels en som
	  alltid ligger i minnet (name_list i ramkomd, small_conf_arr i
	  diskomd), dels en som bara {r inladdad ibland (i diskomd),
	  conf_arr.

Fri May  3 14:49:19 1991  Per Cederqvist  (ceder at nanny)

	* 0.28 installerad.

	* Anv{nder traverse_connections |verallt d{r man g}r igenom alla
	  uppkopplingar.

	* Ny fil: internal-connections.[hc] (i brist p} b{ttre namn).
	  Inneh}ller new_client(), kill_client(), get_conn_by_number() och
	  traverse_connections(). I forts{ttningen skall man inte anv{nda
	  sig av f{ltet (Connection *)->next, utan i st{llet anv{nda
	  traverse_connections() och get_conn_by_number().

	* Nytt anrop: who_am_i som ger en Session_no.

Thu May  2 17:24:50 1991  Per Cederqvist  (ceder at nanny)

	* St{ngde av TIME_SYNC i ram-cache.c. Nu kanske n}gon orkar l{sa
	  log-filerna igen...

	* Nu kollas flaggan kill_me i Connection i _alla_ uppkopplingar
	  efter varje anrop, s} nu b|r disconnect fungera.

Mon Apr 29 19:02:12 1991  Per Cederqvist  (ceder at nanny)

	* Namnbyte i Who_info och Connection: session resp. client_no
Per Cederqvist's avatar
Per Cederqvist committed
1912
	  heter numera session_no.
Per Cederqvist's avatar
Per Cederqvist committed
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649

	* Ett nytt asynkront meddelande: logout. (Pers_no & Session_no).

	* Tv} nya anrop: get_session_info och disconnect.

Mon Apr 22 14:32:19 1991  Per Cederqvist  (ceder at nanny)

	* version 0.27.2 installerad.

	* Nu skickas sessionsnummer med n{r man g|r 'pepsi' och
	  'change_what_i_am_doing'.

Sat Apr  6 11:47:47 1991  Per Cederqvist  (ceder at nanny)

	* version 0.27.1 installerad.

Sun Mar 24 18:49:56 1991  Per Cederqvist  (ceder at nanny)

	* parser.c: lookup_name(): Nu tas alla '-' bort - |kad
	  QZ-kom-kompatibilitet! F|r tillf{llet g|rs det bara om SERVER {r
	  definierad (f|r att inte riskera att f|rst|ra kod i klienten).

Tue Mar 19 20:27:45 1991  Peter Eriksson  (pen at nanny)

	* connections.c: logout_client() om CONN_MAGIC_FREE, skriver
	  nu i logfilen, och g|r return omeddelbart - snabbfix f|r
	  att servern inte ska krascha s} ofta..

	* version 0.26 installerad

Mon Mar 18 11:28:46 1991  Peter Eriksson  (pen at nanny)

	* config.c: DEFAULT_CLIENT_SERVICE_NAME = lyskom-client
		    IN_CLIENT_PORT = 4896

	* version 0.24 installerad

Mon Mar 18 09:12:59 1991  Peter Eriksson  (pen at nanny)

	* connections.c: mux_handle_packet(): mux->parse.string nollst{lls
          nu efter att den har tilldelats till cp->hostname...

	* version 0.23 installerad

Mon Mar 18 01:56:50 1991  Per Cederqvist  (ceder at nanny)

	* send_message: ny funktion och asynkront meddelande. Ers{tter
	  broadcast. Broadcast finns kvar f|r bak}tkompatibilitet.

Sun Mar 17 23:49:28 1991  Per Cederqvist  (ceder at nanny)

	* mux.c: mux_flush(): om uppkopplingen var av typ MUX_TYPE_CLIENT
	  s} gjordes inte isc_flush. 

Sun Mar 17 03:50:23 1991  Peter Eriksson  (pen at nanny)

	* connections.c: logout_client(), snabb fix f|r ett
	  problem som medf|rde att mux_close() anropas tv}
	  g}nger n}nstans (tror jag), och cp->mux var d}
	  NULL andra g}ngen...

	* Version 0.21 installerad

Sat Mar 16 00:03:29 1991  Per Cederqvist  (ceder at nanny)

	* Simpelt mux-protokoll implementerat.

	* change_name(): Nu kan man byta namn fr}n "foo" till "foo".

	* Version 0.20 installerad

Tue Mar 12 02:16:12 1991  Peter Eriksson  (pen at nanny)

	* server version 0.19 installerad.... BUG fixad i ISCLIB
	  som har medf|rt att en buffert vart |verskriven...

	* server version 0.18 installerad. (magiska nummer inf|rda
	  {ven i Connection och Mux strukturerna)

Mon Mar 11 21:23:02 1991  Peter Eriksson  (pen at nanny)

	* ram-smalloc.c/smalloc.c: Magiskt nummer inf|rt...

Mon Mar 11 19:49:10 1991  Per Cederqvist  (ceder at nanny)

	* dbck anpassat till nya formatet. "dbck -g" garbar i text-filen.

Mon Mar 11 01:48:34 1991  Peter Eriksson  (pen at nanny)

	* 0.17 installerad och ig}ngsatt.

Sun Mar 10 21:23:50 1991  Peter Eriksson  (pen at nanny)

	* connections.c: bugfix i new_client():setup av all_conn...-listan

Sat Mar  9 15:25:09 1991  Peter Eriksson  (pen at nanny)

	* Buffring av meddelanden g|rs nu i Mux-rutinerna.

Sat Mar  9 05:52:34 1991  Per Cederqvist  (ceder at nanny)

	* 0.16 installerad och ig}ngsatt.

Sat Mar  9 03:25:25 1991  Peter Eriksson  (pen at nanny)

	* Allt f{rdigt f|r MUX-hantering. Nu fattas bara ett
	  riktigt protokoll, samt buffring av utdata i Mux_client
	  strukturen. Major rewrite av det mesta som hade med
	  isc_ att g|ra. 

Thu Mar  7 03:16:00 1991  Peter Eriksson  (pen at nanny)

	* Nu g}r servern genom kompilatorn, med allt fixat till
	  ISC. Jag har dock inte provk|rt...

Wed Mar  6 23:08:16 1991  Per Cederqvist  (ceder at nanny)

	* P} grund av Isc-ombyggnaden har jag inte kunnat provk|ra.

	* prot-a.c: prot_a_parse_packet(): Om man skrev n}got som matchade
	  regexpen "A[ \t\n]*\([0-9]+\)[^H].*" n{r man loggade in s} sattes
	  username till "\1H\{\}\1".

	* text.c: get_text(): Nu kan man (troligtvis) h{mta en "tom" text
	  utan att f} felet KOM_INDEX_OUT_OF_RANGE.

Tue Mar  5 19:17:50 1991  Per Cederqvist  (ceder at nanny)

	* ram-smalloc.c: rewrote tmp_alloc and free_tmp. Reason: a spurios
	  "rm ram-smalloc.c"...

Sun Mar  3 22:16:34 1991  Per Cederqvist  (ceder at nanny)

	* isc-serverinfo.[hc]: Uppsnyggad. Anv{nder inte l{ngre n}got som
	  {r lyskom-specifikt. F|ljd{ndringar i connections.c, dit en del
	  saker blev flyttade. Inge hj{lpte mig v{lja vad som skulle bort.

	* N{r n}gon f|rs|ker logga in, men servern {r full, sker nu
	  f|ljande: 

	  * Den som kopplar upp f}r texten "%% No connections left.\n".

	  * Alla andra f}r det asynkrona meddelandet 11
	    (ay_rejected_connection) (inga argument).

Sat Mar  2 18:47:37 1991  Per Cederqvist  (ceder at nanny)

	* i_am_on_obsolete skickas inte l{ngre.

	* broadcast tar nu en str{ng, inte ett textnummer. Skrev broadcast
	  och funktioner f|r det asynkrona meddelandet broadcast.

Sat Mar  2 01:13:29 1991  Lars Willf|r  (willfor at nanny)

	* Fixade en bug i set_permitted_submitters som gjorde att man inte
	  kunde s{tta till}tna inl{ggsskrivare till 0 (vem som helst).

Tue Feb 19 00:52:03 1991  Per Cederqvist  (ceder at nanny)

	* Bytte versionsnummer till 0.13.

	* conference.c: set_etc_motd(): Ett |verfl|digt semikolon gjorde
	  att det inte gick att s{tta etc_motd.

Sun Feb 17 06:44:46 1991  Thomas Bellman  (bellman at nanny)

	* isc-server.c: isc_flush(): Provar att stoppa redan n{r man n}tt
	  upp till maxgr{nsen MAXQUEUEDSIZE, och inte v{nta tills man
	  |verskrider den.

Fri Feb 15 23:39:46 1991  Per Cederqvist  (ceder at nanny)

	* De tv} {ndringarna nedan fungerade inte, s} jag }terst{llde allt.

	* Om /etc/nologin existerar skickar servern str{ngen
	  "%% No logins allowed." vid uppkoppling. Om fildeskriptorerna {r
	  slut skickas str{ngen "%% No connections left."

	* isc_getnextevent(): Nu returneras en ny uppkoppling {ven i
	  fallet ISC_EVENT_REJECT. Anroparen m}ste nu anropa
	  isc_logoutclient p} en s}dan uppkoppling innan isc_getnextevent
	  anropas n{sta g}ng.

Sun Feb 10 10:04:24 1991  Per Cederqvist  (ceder at nanny)

	* convert.c och convert-cache.c konverterade databasen. Filerna
	  f}r vara kvar ett tag till, tills vi ser att allt verkligen
	  fungerar.

	* Inge och jag skrev om ram-cache.c, ram-output.c och ram-parse.c.
	  Nu sparas textmassan i en s{rskild fil. Dessutom sparas
	  klockslag som time_t, inte som struct tm. Dessa tv} }tg{rder
	  ledde till _stora_ hastighetsvinster - ca en faktor 2.

	  [ndringar i cached_delete_text(), cached_get_text(),
	  cached_create_text(), init_cache(), fparse_text_stat(),
	  foutput_text_stat(), foutput_time() och fparse_time().

	* server/ram-output2.c heter numera server/ram-output.c

	* server/services.h heter numera server/internal-services.h
	  (include/services.h {r of|r{ndrad).

Fri Feb  8 20:24:59 1991  Per Cederqvist  (ceder at nanny)

	* cache.h: Ny funktion: cached_conf_exist(Conf_no).

	* cache.h: cached_get_name anv{nds inte! Det {r nu borttaget.

Tue Feb  5 21:17:42 1991  Per Cederqvist  (ceder at nanny)

	* Info om hur l}ng tid de olika delarna av synkningen tog lagras
	  om TIME_SYNC {r definierad i ram-cache.c.

	* Nu kan man l{sa motd_of_lyskom {ven om man inte {r inloggad.

Tue Feb  5 02:58:34 1991  Peter Eriksson  (pen at nanny)

	* isc-server.c/iscserver.h: Max queue size implementerad.
	  Statistik / client lagras i Isc_clientinfo.

Tue Feb  5 00:51:44 1991  Per Cederqvist  (ceder at nanny)

	* db/ramkomd-logg flyttad till etc/ramkomd-logg.

	* etc/pid: process-id skrivs i denna fil.

Fri Feb  1 23:19:04 1991  Per Cederqvist  (ceder at nanny)

	* 0.10 installerad och startad.

	* get_map fungerade inte om man f|rs|kte h{mta en delmap d{r alla
	  texter man ville ha var raderaded. 90-120 == 547689541.
	  (unsigned). R{ttat, men fr}gan {r hur m}nga liknande buggar det
	  finns...

Tue Jan 22 10:14:28 1991  Lars Willf|r  (willfor at nanny)

	* [ndrade lite #include-rader s} att make depend ska fungera.
	  Kommenterade bort '#include "CloseFileDescriptors"' ur logII.c.

Fri Jan 18 10:33:58 1991  Per Cederqvist  (ceder at nanny)

	* Nytt asynkront meddelande: ay_login. S{nds n{r n}gon loggar in.
	  Nu s{nds inte ay_i_am_on n{r man loggar in l{ngre.

Thu Jan 17 14:43:14 1991  Per Cederqvist  (ceder at nanny)

	* 0.09 installerad.

	* ram-cache.c: Om TIME_SYNC {r definierad loggas information om
	  hur l}ng tid varje syncning tar.

	* Inge:s funktioner f|r att spara databasen n{stan dubbelt s}
	  snabbt som vanligt testade och inlagda.

Mon Jan 14 11:45:26 1991  Per Cederqvist  (ceder at nanny)

	* forced_leave_conf(): Ny funktion som anropas n{r n}gon uttr{der
	  ur ett m|te (av n}gon orsak). Den skickar ett asynkront
	  meddelande till alla uppkopplingar d{r personen i fr}ga {r
	  inloggad och ber{ttar att han inte l{ngre {r med i m|tet. Det
	  asynkrona meddelandet heter "ay_leave_conf".
		       
Sun Jan 13 20:26:29 1991  Inge Wallin  (inge at nanny)

	* Stoppat ner filerna ../*.h i det nyskapade directoryt ../include
	  samt fixat samtliga h- och c-filer i serverdirectoryt att
	  inkludera <foo.h> i st{llet f|r "../foo.h". Dessutom lagt till
	  -I../include i Makefile.

Sun Jan 13