ChangeLog 91.4 KB
Newer Older
Per Cederqvist's avatar
Per Cederqvist committed
1
2
Fri Aug  2 01:44:11 1996  Per Cederqvist  <ceder@lysator.liu.se>

Per Cederqvist's avatar
Per Cederqvist committed
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
	* Additional idle-time refinements.
	* session.c (login_old): Use active_connection->flags.invisible
	instead of active_connection->invisible.
	(login): Likewise.
	(logout): Likewise.
	(pepsi): Likewise.
	(change_what_i_am_doing): Likewise.
	(who_is_on): Likewise.
	(who_is_on_ident): Likewise.
	(who_is_on_old): Likewise.
	(who_is_on_dynamic): Likewise.  Sessions with no user are always
	invisible.
	(user_active): Set active_connection->flags.user_active_used.
	* connections.h (Connection): Replaced field "invisible" with
	"flags".
	* memory.c (init_dynamic_session_info): Initialize flags.
	* internal-connections.c (init_connection): Initialize flags.
	(new_client): Initialize flags.

Per Cederqvist's avatar
Per Cederqvist committed
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
	* 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.
Per Cederqvist's avatar
Per Cederqvist committed
45
46
	* prot-a-output.c (prot_a_output_dynamic_session_info,
	prot_a_output_session_flags): New static functions.
Per Cederqvist's avatar
Per Cederqvist committed
47
48
49
50
51
52
53
54
55
56
	* 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.

57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
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
81
82
83
84
85
86
87
88
89
90
91
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.

92
93
94
95
96
97
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.

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

Per Cederqvist's avatar
Per Cederqvist committed
100
101
102
103
	* Handle sysv signal semantics:
	* ramkomd.c (sighandler_hup): Reinstall the SIGHUP handler.
	(sighandler_usr2): Reinstall the SIGHUSR2 handler.

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
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
	* 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.

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

183
184
185
	* text.c (check_anonymous_subm): Removed two unused arguments.
	All callers updated.

186
187
188
189
190
191
192
193
194
195
196
197
	* 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
198
199
200
201
202
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.

203
204
205
206
207
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
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
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
225
 	version zero files. Data file is no longer terminated by a dollar
David Byers's avatar
David Byers committed
226
227
228
229
 	sign.
	(init_cache): Rewrote format-dependent code as switches rather
 	than ifs. Data file is terminated by EOF rather than dollar.

230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
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
277
278
279
280
281
282
283
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.
	
284
285
286
287
288
289
290
291
292
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
293
294
295
296
297
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.
	
298
299
300
301
302
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.

303
304
305
306
307
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.

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

310
	* prot-a.c (prot_a_reply): Handle rt_num_list.
David Byers's avatar
David Byers committed
311
312
	(prot_a_is_legal_fnc): Added accept_async and query_async.

313
314
	* 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
315
316
317

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

318
319
320
321
322
323
	* 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.
324
325

	* send-async.h, send-async.c:
326
	(async_send_group_message): Allow override of preference not to
327
328
	receive message. 
	(async_send_message) Option to force message to be sent to user.
329

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

332
	* connections.h: Added num_list to Result_holder and Res_type.
333

334
335
	* prot-a-output.c, prot-a-output.h (prot_a_output_num_list): New
	function.
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353

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

354
355
356
	* connections.h: (Connection): Added fields want_async and num_list.
	(Res_type): Added rt_num_list.
	(Result_holder): Added num_list.
357

358
359
	* async.h (enum Async): Added ay_dummy_last.
	(ASYNC_DEFAULT_MESSAGES): New define.
360

361
362
363
Sun Jun  9 10:36:29 1996  David Byers  <davby@sen2.ida.liu.se>

	* server-config.c: Added "Permissive sync" option.
364
	* param.h: Added permissive_sync.
365
366
367
368
	* admin.c (sync_kom): Checks that the calling session is logged in
 	and an administrator unless the configuration file has
 	permissive_sync on.

369
370
371
372
373
374
	* 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.
375
376
377
	* dbck-cache.c (init_cache): Override database kom_info with
 	command-line kom_info.
	(cache_sync): Output kom_info structure.
378
379
380
381
382
	* 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.
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399

	* 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

400
401
402
403
	* 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.
404

405
406
407
408
409
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.

410
411
412
Sun Feb 25 21:37:09 1996  Per Cederqvist  (ceder@lysator.liu.se)

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

415
Sun Feb 25 20:53:33 1996  Per Cederqvist  (ceder@lysator.liu.se)
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438

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

439
440
441
442
443
444
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
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
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

463
464
465
466
467
468
	* 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
469
470
471
472
473
474
475
476
477
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
478
479
Thu Nov  2 20:58:40 1995  Per Cederqvist  (ceder@lysator.liu.se)

480
481
482
483
484
485
486
487
488
489
490
491
	* 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
492
493
494
495
496
497
498
499
500
501
502
503
504
	* 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.

505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
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.

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

523
524
	* tmp-limits.h (MAX_TEXT): Increased to 1500000.

525
526
527
528
529
530
531
532
533
534
535
	* 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.

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
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
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
602
603
604
605
Sun Jan  8 12:13:14 1995  Per Cederqvist  (ceder@lysator.liu.se)

	* Release 1.7.1.

Per Cederqvist's avatar
Per Cederqvist committed
606
607
608
609
610
611
612
613
614
615
616
617
618
619
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
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
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
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
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
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
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
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.

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

Per Cederqvist's avatar
Per Cederqvist committed
777
778
	* version.incl: Version 1.6.4.

Per Cederqvist's avatar
Per Cederqvist committed
779
780
781
782
783
	* 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.

784
785
786
787
788
789
	* 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
790
791
792
793
794
795
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
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
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
831
832
833
834
835
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.

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

Per Cederqvist's avatar
Per Cederqvist committed
838
839
840
841
842
	* 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.

843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
	* 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 ").

879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
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
895
896
897
898
899
900
901
902
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)
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939

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

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

Per Cederqvist's avatar
Per Cederqvist committed
942
943
944
945
946
947
	* 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.

948
949
950
951
952
953
954
955
956
957
958
959
960
961
	* 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
962
963
Thu Feb 24 11:31:39 1994  Per Cederqvist  (ceder@lysator.liu.se)

964
965
	* prot-a.c: Include "kom-memory.h".

Per Cederqvist's avatar
Per Cederqvist committed
966
967
968
	* Makefile.in (doclean, dodistclean): Removed duplicate empty
	entries of these targets.

969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
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
984
985
986
987
988
989
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
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
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
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.

1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
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
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
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
1098
1099
1100
1101
1102
1103
1104
1105
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
1106
1107
Wed Oct 13 00:03:53 1993  Per Cederqvist  (ceder@lysator.liu.se)

Per Cederqvist's avatar
Per Cederqvist committed
1108
1109
1110
1111
	* 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
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
	* 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).

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

1148
1149
1150
1151
1152
1153
1154
1155
1156
	* 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().

1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
	* 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
1188
1189
1190
1191
Fri Oct  8 18:41:58 1993  Per Cederqvist  (ceder@lysator.liu.se)

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

1192
1193
1194
1195
1196
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.

1197
1198
1199
1200
1201
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
1202
1203
1204
1205
1206
1207
1208
1209
1210
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
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
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
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.

1262
1263
1264
1265
1266
1267
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
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
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
1278
1279
1280
1281
Sun Jan 17 04:38:34 1993  Per Cederqvist  (ceder@konrad)

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

1282
1283
1284
1285
1286
1287
1288
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().

1289
1290
Sat Dec 19 01:17:41 1992  Per Cederqvist  (ceder@mauritz)

Per Cederqvist's avatar
Per Cederqvist committed
1291
1292
1293
1294
	* version.incl: Version 1.3.

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

1295
1296
1297
1298
1299
1300
1301
1302
1303
	* 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}.

1304
1305
1306
1307
1308
1309
1310
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.

1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
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.

1330
1331
1332
1333
1334
1335
1336
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
1337
1338
1339
1340
1341
1342
Thu Oct  8 08:51:23 1992  Per Cederqvist  (ceder@mauritz)

	* tmp-limits.h: Allow 333333 texts.

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

1343
1344
1345
1346
1347
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
1348
1349
1350
1351
1352
1353
1354
1355
1356
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.

1357
1358
Wed Aug 12 01:38:22 1992  Per Cederqvist  (ceder@robin)

Per Cederqvist's avatar
Per Cederqvist committed
1359
1360
	* version.incl: Version 1.2.4.

1361
1362
1363
1364
1365
1366
1367
1368
	* 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).

1369
1370
Wed Aug 12 00:33:55 1992  Inge Wallin  (inge@lysator)

1371
	* simple-cache.c (save_one_text): Write texts to file as long as
1372
1373
	  they are removed. 

1374
1375
Thu Jun 11 16:28:39 1992  Per Cederqvist  (ceder@lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1376
1377
	* vercion.incl: Version 1.2.3.

1378
1379
1380
1381
	* 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
1382
1383
	* missing-ansi.c (strerror): Return a const char *,not a char *.

1384
1385
1386
	* connections.c (login_request): Don't dump core when we can't get
	the name of the originating host.

1387
1388
1389
1390
1391
Wed Jun 10 03:36:30 1992  Per Cederqvist  (ceder@robin)

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

1392
1393
Sun May 31 03:08:31 1992  Per Cederqvist  (ceder@lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1394
1395
1396
1397
	* 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).

1398
1399
1400
 	* lyskomd.h (kom_server_mcb): Removed duplicate declaration (it
	was (and still is) also declared in connections.h).

1401
1402
	* handle-malloc-dump.el: Added (require 'elib-dll).

1403
1404
Mon May 25 22:56:38 1992  Per Cederqvist  (ceder@lysator)

1405
1406
1407
	* ram-smalloc.c (tmp_alloc): Don't log the size of the internal
	table anymore.

1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
	* 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.

1427
1428
1429
1430
1431
1432
1433
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.

1434
1435
1436
1437
Tue May 19 01:06:50 1992  Per Cederqvist  (ceder@lysator)

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

1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
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
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
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.

1476
1477
Tue Apr 14 17:21:26 1992  Per Cederqvist  (ceder@lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1478
1479
	* Version 1.1.2 (not released).

1480
1481
1482
1483
1484
	* 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).

1485
1486
1487
1488
1489
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.

1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
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
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
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
1522
1523
1524
1525
1526
1527
1528
1529
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.

1530
1531
1532
1533
1534
1535
1536
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
1537
1538
Sat Apr  4 19:24:27 1992  Per Cederqvist  (ceder@lysator)

1539
	* person.c (get_person_stat): It is allowed to get the person
1540
1541
1542
	status before logging in so that it is possible to print a "last
	login from:" message.

Per Cederqvist's avatar
Per Cederqvist committed
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
	* 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.

1553
1554
Wed Apr  1 22:02:55 1992  Per Cederqvist  (ceder@lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1555
	* Code to allow invisible sessions:
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
	* 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
1566
1567
	* Code to allow user identification using the Ident protocol (as
	defined in RFC 931):
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
	* 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
1588
	session_info. It is allocated in get_session_info() in session.c.
1589
	* prot-a-output.c (prot_a_output_who_info_list): Free username
Per Cederqvist's avatar
Per Cederqvist committed
1590
1591
	when returning a who_info_list. It is allocated in who_is_on() in
	session.c.
1592

1593
1594
1595
1596
1597
Tue Mar 31 23:48:47 1992  Per Cederqvist  (ceder@robert)

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

1598
1599
1600
1601
1602
1603
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()).

1604
1605
1606
1607
1608
1609
1610
1611
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
1612
1613
1614
1615
1616
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
1617
1618
1619
1620
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
1621
1622
Wed Feb 26 19:49:21 1992  Per Cederqvist  (ceder@lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1623
	* various: Lint from gcc 2.0 deleted.
Per Cederqvist's avatar
Per Cederqvist committed
1624

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

Per Cederqvist's avatar
Per Cederqvist committed
1627
	* server-config.c (SYNC_TIMEOUT): Decreased from 10 millisec to 0.
Per Cederqvist's avatar
Per Cederqvist committed
1628
1629
1630
	  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
1631
	* dbck.c (main): New flag: -s. Prints some extra statistics.
Per Cederqvist's avatar
Per Cederqvist committed
1632

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

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

1639
1640
Sun Jan 12 02:30:34 1992  Per Cederqvist  (ceder at lysator)

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

1643
1644
Sun Jan  5 19:10:20 1992  Per Cederqvist  (ceder at lysator)

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

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

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

1653
1654
Wed Dec 18 00:05:43 1991  Per Cederqvist  (ceder at lysator)

1655
1656
	* Version 1.0.4 was never used. Version is now 1.1.0.

1657
1658
1659
	* fncdef.txt, prot-a.c, text.c (find_next_text_no,
	  find_previous_text_no): New functions.

1660
1661
Tue Dec 17 00:52:11 1991  Per Cederqvist  (ceder at lysator)

Per Cederqvist's avatar
Per Cederqvist committed
1662
1663
1664
1665
1666
1667
	* 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.

1668
1669
	* text.c (get_last_text): Rewrote it.

1670
1671
Mon Dec 16 15:32:57 1991  Per Cederqvist  (ceder at ruben)

1672
1673
1674
1675
	* conference.c (is_supervisor): New arguments: viewer and viewer_p.

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

1676
1677
1678
1679
1680
1681
	* 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.

1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
	* 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
1707
1708
1709
1710
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
1711
1712
1713
1714
1715
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.

1716
1717
1718
1719
1720
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.

1721
1722
Tue Oct 29 03:52:34 1991  Per Cederqvist  (ceder at robert)

1723
1724
1725
1726
1727
	* 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
1728
1729
	* Version is now 1.0.4.

1730
1731
1732
1733
	* internal-connections.c (no_of_connection_attempts): Now a global
	  variable, so that dump_allocated_connections can write it to the
	  log files.

1734
1735
1736
1737
1738
	* 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...)

1739
1740
1741
1742
1743
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
1744
1745
Wed Sep 25 11:44:17 1991  Per Cederqvist  (ceder at lysator)

1746
1747
1748
1749
1750
	* 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
1751
1752
	* person.c (do_set_passwd): Fixed serious bug in salt generation.

Per Cederqvist's avatar
Per Cederqvist committed
1753
1754
1755
1756
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
1757
1758
Sat Sep 21 02:12:24 1991  Per Cederqvist  (ceder at lysator)

1759
1760
1761
1762
1763
	* "isc.h" is now known as "isc-interface.h" to avoid confusion
	  with <isc.h>.

	* version.incl: Go 1.0.2.

1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
	* 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
1774
1775
	* ramkomd.c: ip_client_port and ip_mux_port are local to ramkomd.c.

Per Cederqvist's avatar
Per Cederqvist committed
1776
1777
1778
1779
1780
1781
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
1782
1783
1784
1785
Mon Sep 16 19:27:04 1991  Per Cederqvist  (ceder at lysator)

	* version.incl: Version 1.0!

Per Cederqvist's avatar
Per Cederqvist committed
1786
1787
1788
1789
1790
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
1791
1792
1793
1794
1795
1796
1797
1798
1799
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).

1800
1801
1802
1803
1804
1805
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
1806
1807
Thu Sep  5 10:14:40 1991  Per Cederqvist  (ceder at lysator)

1808
1809
1810
1811
1812
1813
1814
	* 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
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
	* 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.

1833
1834
1835
1836
1837
1838
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.

1839
1840
Fri Aug 30 05:32:13 1991  Per Cederqvist  (ceder at lysator)

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

1844
1845
1846
	* limits.h heter numera tmp-limits.h (f|r att inte f|rv{xla den
	  med ANSI-filen <limits.h>.

1847
1848
Wed Aug 28 03:21:27 1991  Per Cederqvist  (ceder at lysator)

1849
1850
1851
	* 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
1852
1853
1854
1855
	* 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
1856
1857
	* dbck-cache2.c heter nu dbck-cache.c.

1858
1859
	* cache.c, end-of-atomic.c, lyskomd.c, ram-cache.c: Borttagna.

1860
1861
Mon Aug 26 04:13:34 1991  Per Cederqvist  (ceder at lysator)

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

1864
1865
	* #include "smalloc.h" heter nu #include <server/smalloc.h>

Per Cederqvist's avatar
Per Cederqvist committed
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
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
1879
Sat May 18 04:22:06 1991  Per Cederqvist  (ceder at nanny)
1880
 
Per Cederqvist's avatar
Per Cederqvist committed
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
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
	* 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
1931
	  heter numera session_no.
Per Cederqvist's avatar
Per Cederqvist committed
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
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668

	* 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)