ChangeLog 16.5 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2000-09-03  Per Cederqvist  <ceder@moria>

	Get rid of false compiler warnings.
	* configure.in: Removed the -Wpointer-arith flag, which only gives
	lots of false warnings from glibc-2.1.3/gcc-2.95.2.

	Removed an unused attribute in IscSession.  Handle
	isc_getraddress() failures properly.
	* src/isc_tcp.c (isc_tcp_accept_fn): Don't set scb->mode.  Fail
	properly if isc_getraddress() fails.
	* src/isc.h (IscSession): Delete the "mode" attribute, which was
	only set in some cases and never used.
	* src/isc_session.c (isc_openfile): Don't set scb->mode.

15
16
17
18
19
20
1999-07-05  Per Cederqvist  <ceder@gratia>

	Delay problems with sessions that are deconnected until we can
	do a proper fix.
	* src/isc.h (ISC_DEFAULT_MAX_QUEUED_SIZE): Double to 600.

21
22
23
24
25
26
1999-05-21  Per Cederqvist  <ceder@lysator.liu.se>

	Remove all gcov files in "make mostlyclean".
	* src/Makefile.am (MOSTLYCLEANFILES): Added "*.da", "*.bb",
	"*.gcov" and "*.bbg".

Per Cederqvist's avatar
Per Cederqvist committed
27
28
29
30
31
32
33
1999-05-17  Per Cederqvist  <ceder@lysator.liu.se>

	Don't needlessly call time().
	* src/isc.h (IscSession): Comment out idlesince.
	* src/isc_event.c (isc_getnextevent): Don't waste time setting
	idlesince, which lyskomd doesn't use.

Per Cederqvist's avatar
Per Cederqvist committed
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
1999-05-01  Per Cederqvist  <ceder@lysator.liu.se>

	The LysKOM server should not install isc thingies.
	* src/Makefile.am (noinst_LIBRARIES, noinst_HEADERS): Use instead
	of lib_LIBRARIES and include_HEADERS so that nothing from isc gets
	installed by lyskomd.
	* man/Makefile.am (noinst_MANS): Use noinst_MANS instead of
	man_MANS so that nothing from isc gets installed by lyskomd.

1999-05-01  Per Cederqvist  <ceder@lysator.liu.se>

	* Version 1.00 released.

	Release preparations.
	* configure.in: Release 1.00.
	* TODO: Updated.
	* README: Updated.
	* NEWS: Entry for 1.00 written.

	"make maintainer-clean" shoudl remove everything that can be
	recreated.
	* Makefile.am (MAINTAINERCLEANFILES): Added Makefile.in,
	aclocal.m4, configure, install-sh, mkinstalldirs, missing, INSTALL
	and COPYING.
	* src/Makefile.am (MAINTAINERCLEANFILES): Added Makefile.in.
	* man/Makefile.am (MAINTAINERCLEANFILES): Added Makefile.in.
	* doc/Makefile.am (MAINTAINERCLEANFILES): Added Makefile.in.
	* demo/Makefile.am (MAINTAINERCLEANFILES): Added Makefile.in.

	Removed support for isc_printf and isc_vprintf for license,
	performance and portability reasons.
	* configure.in: Removed --enable-isc-printf.
	* src/isc_stdout.c (isc_printf): Removed.
	(isc_vprintf): Removed.
	(send_scb): Removed.
	(send_putc): Removed.
	* src/isc.h (isc_printf): Removed.
	(isc_vprintf): Removed.
	* src/Makefile.am (libisc_a_LIBADD): Removed.
	(isc_stdout.o): No longer depend on ../config.status.
	* src/printf.c: Removed.

	Merged in all changes made to ISC in the lyskomd code from the
	isc_merge_1999_04_21 tag to the isc_merge_1999_05_01 tag.  Details
	follows:

    1999-04-28  Per Cederqvist  <ceder@lysator.liu.se>
Per Cederqvist's avatar
Per Cederqvist committed
81
82
83
84
85
86
87

	Added some output functions.
	* src/isc_stdout.c (isc_puts): New function.
	(isc_putul): New function.
	* src/isc.h (isc_puts): New function.
	(isc_putul): New function.

Per Cederqvist's avatar
Per Cederqvist committed
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
1999-04-24  Per Cederqvist  <ceder@lysator.liu.se>

	Make it easier to compile ISC out-of-the-repository.
	* README.DEVO: Mention bootstrap.sh.
	* bootstrap.sh: New file.

	Fix file inclusions.
	* src/isc_relocate.c: <time.h> and <stddef.h> must be included
	before "isc.h".
	* src/isc_alloc.c: <time.h> must be included before "isc.h".
	* src/isc_master.c: Likewise.
	* src/isc_output.c: Likewise.
	* src/isc_tcp.c: Likewise.
	* src/isc_udp.c: Likewise.

	Update at least one of the man pages.
	* man/isc_close.3x: Updated.

	Distribute ISC under LGPL.
	* README: Changed license to LGPL.
	* COPYING.LIB: New file, containing LGPL, the license this
	library is distributed under.
	* COPYING: No longer under version control.  This file is still
	included in the distribution, even though ISC is licensed under
	LGPL instead of GPL, for two reasons: LGPL allows you to change
	the license to GPL, and automake requires the file COPYING.
	* Makefile.am: Changed license to LGPL.
	* configure.in: Changed license to LGPL.
	* demo/Makefile.am: Changed license to LGPL.
	* man/Makefile.am: Changed license to LGPL.
	* man/TEMPLATE: Changed license to LGPL.
	* man/isc.3x: Changed license to LGPL.
	* man/isc_close.3x: Changed license to LGPL.
	* man/isc_createtcp.3x: Changed license to LGPL.
	* man/isc_destroy.3x: Changed license to LGPL.
	* man/isc_initialize.3x: Changed license to LGPL.
	* man/isc_listentcp.3x: Changed license to LGPL.
	* man/isc_openfd.3x: Changed license to LGPL.
	* man/isc_openfile.3x: Changed license to LGPL.
	* man/isc_opentcp.3x: Changed license to LGPL.
	* man/isc_shutdown.3x: Changed license to LGPL.
	* man/isc_unlisten.3x: Changed license to LGPL.
	* src/Makefile.am: Changed license to LGPL.
	* src/intern.h: Changed license to LGPL.
	* src/isc.h: Changed license to LGPL.
	* src/isc_abort.c: Changed license to LGPL.
	* src/isc_alloc.c: Changed license to LGPL.
	* src/isc_event.c: Changed license to LGPL.
	* src/isc_handler.c: Changed license to LGPL.
	* src/isc_master.c: Changed license to LGPL.
	* src/isc_message.c: Changed license to LGPL.
	* src/isc_output.c: Changed license to LGPL.
	* src/isc_queue.c: Changed license to LGPL.
	* src/isc_relocate.c: Changed license to LGPL.
	* src/isc_session.c: Changed license to LGPL.
	* src/isc_socket.c: Changed license to LGPL.
	* src/isc_stdout.c: Changed license to LGPL.
	* src/isc_tcp.c: Changed license to LGPL.
	* src/isc_udp.c: Changed license to LGPL.
	* src/isc_wait.c: Changed license to LGPL.
	* src/unused.h: Changed license to LGPL.

1999-04-22  Per Cederqvist  <ceder@lysator.liu.se>

	Distribute administrative files.
	* Makefile.am (EXTRA_DIST): Added README.DEVO and RELEASING.

	Merged in all changes made to ISC in the lyskomd code from ISC
	0.99 to the isc_merge_1999_04_21 tag.  Details follows:

    1999-04-17  Per Cederqvist  <ceder@lysator.liu.se>
159
160
161
162
163
164
165
166

	Added full support for fd relocation.
	* src/isc_relocate.c (isc_relocate_fd): Implemented for real.
	* src/isc_event.c (isc_getnextevent): Return
	ISC_EVENT_LOGIN_UNRELOCATED instead of ISC_EVENT_LOGIN if a
	file descriptor relocation failed.
	* src/isc.h (IscEventType): New event: ISC_EVENT_LOGIN_UNRELOCATED.

Per Cederqvist's avatar
Per Cederqvist committed
167
    1999-04-17  Per Cederqvist  <ceder@gratia>
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185

	Added limited support for fd relocation.  Error handling still
	needed.
	* src/isc_udp.c (isc_createudp): Relocate the fd.
	* src/isc_tcp.c (isc_tcp_accept_fn): isc_createtcp will close the
	file descriptor if it fails, so don't re-close it here.
	isc_createtcp will also set the fd attribute of the session; don't
	set it again.
	(isc_createtcp): Relocate the fd.  Be careful to always close it
	if an error occurs.
	* src/isc_relocate.c (isc_relocate_fd): New file and function.
	This is still a dummy implementation.
	* src/isc_master.c (isc_initialize): Expect master config version
	1006 and session config 1002.  Handle fd_relocate.
	* src/isc.h (IscSessionConfig): Added fd_relocate.
	* src/intern.h (isc_relocate_fd): New function.
	* src/Makefile.am (libisc_a_SOURCES): Added isc_relocate.c.

Per Cederqvist's avatar
Per Cederqvist committed
186
    1999-04-16  Per Cederqvist  <ceder@gratia>
187
188
189
190
191

	Simplify the use of IscHandlerList.  (This needs more
	documentation.)
	* src/isc.h (IscSession): Removed the "IscHandlerCache fun"
	member.
Per Cederqvist's avatar
Per Cederqvist committed
192
	(IscHandlerList): Renamed the "old" member to "current".
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
	(ISC_HCALLFUN1): Adapted to IscHandlerList changes.
	(ISC_HCALLFUN2): Adapted to IscHandlerList changes.
	(ISC_HCALLFUN3): Adapted to IscHandlerList changes.
	* src/intern.h (ISC_SCALLFUN1): Use ISC_HCALLFUN1 to simplify
	code.  Adapted to IscHandlerList changes.
	(ISC_SCALLFUN2): Analogous.
	(ISC_SCALLFUN3): Analogous.
	* src/isc_handler.c (isc_pushhandler): Modified so that the
 	members of the member "current" of IscHandlerList objects points
 	to the IscHandler object where the callbacks that should be used
 	exist.  Once that changes was done, there is no need for the
 	"scb->fun" member, so it was removed.
	(isc_pophandler): Adjusted accordingly.
	* src/isc_session.c (isc_create): Removed the code that
	initialized scb->fun.
	(isc_destroy): Use scb->handlers->current instead of scb->fun.
	* src/isc_event.c (isc_getnextevent): Use scb->handlers->current
	instead of scb->fun.

Per Cederqvist's avatar
Per Cederqvist committed
212
    1999-04-15  Per Cederqvist  <ceder@lysator.liu.se>
213
214
215
216
217
218
219
220
221
222
223
224

	Allow disabled sessions to emit data.  It is input from the
	sessions that is disabled.
	* src/isc_stdout.c (isc_putc): Allow output to sessions that are
	in state ISC_STATE_DISABLED.
	(isc_write): Likewise.
	* src/isc_output.c (isc_flush): Flush pending output even
	when the session is in ISC_STATE_DISABLED.
	(isc_oflush): Likewise.
	* src/isc_event.c (isc_getnextevent): Flush pending output even
	when the session is in ISC_STATE_DISABLED.

Per Cederqvist's avatar
Per Cederqvist committed
225
    1999-04-11  Per Cederqvist  <ceder@gratia>
Per Cederqvist's avatar
Per Cederqvist committed
226
227
228
229

	Rebuild more often.
	* src/Makefile.am (isc_stdout.o): Depend on ../config.status.

Per Cederqvist's avatar
Per Cederqvist committed
230
    1999-04-05  Per Cederqvist  <ceder@gratia>
231
232
233
234

	Get rid of useless compiler warnings.
	* configure.in: Don't use -Wtraditional.

Per Cederqvist's avatar
Per Cederqvist committed
235
    1999-02-05  Per Cederqvist  <ceder@gratia>
236
237
238
239
240

	Get rid of a compiler warning.
	* src/isc_alloc.c (ISC_MAGIC_ALLOC): This is an unsigned constant.
	(ISC_MAGIC_FREE): Likewise.

Per Cederqvist's avatar
Per Cederqvist committed
241
    1999-01-18  David Byers  <davby@ida.liu.se>
242
243
244

	* src/.cvsignore: Added .bbg, .bb, .da and .gcov files.

Per Cederqvist's avatar
Per Cederqvist committed
245
    1999-01-15  David Byers  <davby@ida.liu.se>
246
247
248
249

	* configure.in: Added --with-checker, --with-gcov and
	--with-optimization.

Per Cederqvist's avatar
Per Cederqvist committed
250
    1998-10-06  Per Cederqvist  <ceder@gratia>
Per Cederqvist's avatar
Per Cederqvist committed
251
252
253
254

	Port to glibc2.
	* src/isc_session.c: Include <time.h>.

Per Cederqvist's avatar
Per Cederqvist committed
255
    1998-07-09  Per Cederqvist  <ceder@lysator.liu.se>
256
257
258
259

	--enable-isc-printf was broken.
	* src/isc_wait.c: Include <stdarg.h>.

Per Cederqvist's avatar
Per Cederqvist committed
260
261
262
263
264
265
266
267
268
1999-04-21  Per Cederqvist  <ceder@lysator.liu.se>
	
	* demo/Makefile.am: Insert copyright header.

	Clean up the configure script.
	* configure.in (AC_PROG_MAKE_SET, AC_PROG_INSTALL): Removed.  This
	is automatically done by AM_INIT_AUTOMAKE.
	(AM_PROG_CC_STDC):  Use it instead of AM_C_PROTOTYPES.

Per Cederqvist's avatar
Per Cederqvist committed
269
270
1998-07-06  Per Cederqvist  <ceder@lysator.liu.se>

Per Cederqvist's avatar
Per Cederqvist committed
271
272
	* Version 0.99 released.

Per Cederqvist's avatar
Per Cederqvist committed
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
	Release preparations.
	* NEWS: Updated.
	* README: Updated.
	* RELEASING: New file.
	* README.DEVO: New file.

	Include isc_wait.o in the built library.
	* src/Makefile.am (libisc_a_SOURCES): Added isc_wait.c.

	Improved portability.
	* src/isc_wait.c: Check TIME_WITH_SYS_TIME.
	* src/isc_socket.c: Check TIME_WITH_SYS_TIME.
	* src/isc_event.c: Check TIME_WITH_SYS_TIME.

	Ported to Solaris 2.7 Beta/gcc 2.8.1.
	* src/isc_udp.c: Include <unistd.h>.
	(isc_udp_read_fn): Now static.  Flag unused arguments.
	(isc_udp_destroy_fn): Likewise.
	(isc_udp_write_fn): Now static.
	(isc_mkudpaddress): Likewise.  Don't pass potentially negative
	characters to isdigit.
	* src/isc_tcp.c: Include <unistd.h>.
	(isc_tcp_accept_fn): Now static.  Flag unused arguments.
	(isc_tcp_destroy_fn): Likewise.
	(isc_mktcpaddress): Now static.  Don't pass potentially negative
	characters to isdigit.
	* src/isc_session.c: Include <unistd.h>.
	(isc_default_read_fn): Flag unused arguments.
	(isc_default_write_fn): Flag unused arguments.
	(isc_default_close_fn): Flag unused arguments.
	(isc_file_destroy_fn): Flag unused arguments.
	* src/isc_alloc.c (isc_realloc): Code simplified.
	(isc_free): Code simplified.
	* src/unused.h: New file (taken from cmod).

	Added automake/autoconf support.
	* AUTHORS: New file.
	* Makefile.am: New file.
	* NEWS: New file.
	* acinclude.m4: New file.
	* configure.in: New file.
	* demo/Makefile.am: New file.
	* demo/README: New file.
	* doc/Makefile.am: New file.
	* man/Makefile.am: New file.
	* src/Makefile.am: New file.
	* man/Makefile: This file is now generated by configure.  Don't
	store it under version control.
	* src/Makefile: Likewise.
	* demo/Makefile: Likewise.
	* build/stddef.h: File removed.
	* build/gmkdep: File removed.
	
1998-06-21  Per Cederqvist  <ceder@lysator.liu.se>

	Incorporated all relevant improvements made to ISC in
	the committed sources of lyskomd as of 1998-06-21.  Edited details
	follows.

	Include file improvements.
	* src/isc_event.c: Include <sys/select.h>, <unistd.h> and
	<string.h> for increased portability.
	* src/printf.c: Check HAVE_STRING_H and HAVE_STDLIB_H before
	including those files.  Don't forward-declare memchr.

	Ignore attempts to look up the NULL host name.
	* src/isc_socket.c (isc_gethostname): Return NULL if given a NULL
	IscAddress.

1998-05-07  Per Cederqvist  <ceder@lysator.liu.se>

	Incorporated all relevant improvements made to ISC in
	kom++-0.7.post.2.  Edited details follows.
	
	Avoid including more files than necessary.
	* src/isc.h: Don't include any include files.
	* src/isc_abort.c: Don't declare system functions.  Fixed include
	statements.
	* src/isc_alloc.c: Likewise.
	* src/isc_event.c: Likewise.
	* src/isc_message.c: Likewise.
	* src/isc_output.c: Likewise.
	* src/isc_session.c: Likewise.
	* src/isc_socket.c: Likewise.
	* src/isc_stdout.c: Likewise.
        * src/isc_tcp.c: Likewise.
	* src/isc_udp.c: Likewise.
	* src/isc_handler.c: Fixed include statements.
	* src/isc_master: Likewise.
	* src/isc_queue.c: Likewise.

	Added the ability to wait until a connection attempt (initiated by
	this process) either fails or succeeds.
	* src/isc.h: (isc_wait): Prototype added.
	* src/isc_wait.c: New file, containing isc_wait.

	Only support isc_printf and isc_vprintf if ISC_PRINTF_SUPPORT if
	defined.  These functions may lead to bad use of the buffers.
	* src/isc.h: (isc_vprintf, isc_printf): Only declare if
	ISC_PRINTF_SUPPORT is defined.  Fail to compile if
	ISC_PRINTF_SUPPORT is defined but HAVE_STDARG_H isn't.
 	* src/isc_stdout.c (send_scb, send_putc, isc_vprintf, isc_printf):
	Only defined if ISC_PRINTF_SUPPORT is defined.

	Make sure that isc_getnextevent only returns a single
	ISC_EVENT_LOGOUT message when a session logs out.
	* src/isc.h: (IscSessionState): New state: ISC_STATE_CLOSING2.
	* src/isc_event.c (isc_getnextevent): There is now only one
	ISC_EVENT_LOGOUT message per session.  Set the state to
	ISC_STATE_CLOSING2 when generating an ISC_EVENT_LOGOUT message.
 	* src/isc_output.c (isc_flush): Treat ISC_STATE_CLOSING2 as
	ISC_STATE_CLOSING.
	(isc_oflush): Likewise.
	
	Portability fixes.
	* src/isc_alloc.c (isc_mallocfn, isc_reallocfn, isc_freefn):
	Removed lame casts.

	Make sure that isc_malloc returns a block that is aligned on a
	"long" boundary.
 	* src/isc_alloc.c (isc_malloc, isc_free, isc_realloc): Portablilty
	fix: Align data on a "long" boundary, not only an "int" boundary.

	Typo fix.
	* src/isc_event.c (isc_getnextevent): Fixed a spelling error in a
	comment.
	
	Make sure that errors are reported to the proper session.
  	* src/isc_event.c (isc_getnextevent): event->session was sometimes
	set erronously if an error occured in select() or if a timeout
	occured.

	Use O_NONBLOCK instead of the now obsolete name FNDELAY.
	* src/isc_session.c (isc_openfd): Use O_NONBLOCK instead of FNDELAY.
	* src/isc_tcp.c (isc_createtcp): Use O_NONBLOCK instead of FNDELAY.
	* src/isc_udp.c (isc_createudp): Use O_NONBLOCK instead of FNDELAY.

	Avoid warnings by adding a dubious cast.
 	* src/isc_socket.c (isc_gethostname): Cast argument to
	gethostbyaddr to a char* to avoid a warning.
	
	Portability fix: Renamed _printf to UCB_printf.
	* src/isc_stdout.c (isc_printf, isc_vprintf): Call UCB_printf
	instead of _printf.
	* src/printf.c (UCB_printf): Renamed _printf to UCB_printf (to avoid
	conflicts on HPUX).

	Don't use obsolete setsockopt interfaces.
	* src/isc_tcp.c (isc_createtcp): Fixed calls to setsockopt with
	SO_LINGER and SO_REUSEADDR arguments.  The old-style style
	previously used should no longer be necessary on modern operating
	systems, and in fact it no longer works everywere.  
	* src/isc_udp.c (isc_createudp): Fixed calls to setsockopt with
	SO_LINGER and SO_REUSEADDR arguments.  The old-style style
	previously used should no longer be necessary on modern operating
	systems, and in fact it no longer works everywere.  

	If an attempt to bind failed with EADDRINUSE all the retries
	would automatically fail.
	* src/isc_tcp.c (isc_listentcp): Clear errno on each loop in the
	retry loop.

	Include the licensing conditions used by this package.
	* COPYING: New file.

1998-04-03  Per Cederqvist  <ceder@signum.se>

	Port to glibc 2, where errno is a macro.
	* isc.h (IscSession::isc_errno): New name for former struct member
	errno.  All users updated.

1996-07-24  Per Cederqvist  <ceder@lysator.liu.se>

	ISC_EVENT_LOGIN events now return the listening session in the
	event, so that it can be used to easily determine which kind of
	connection that was made.  66.7 % of the code was contributed by
	<linus@lysator.liu.se>.
	* src/isc.h (IscEvent): New field: listen_session.
	* src/isc_event.c (isc_getnextevent): Fill in listen_session when
	an ISC_EVENT_LOGIN event is created.  Set it to NULL in all other
	cases.

1996-07-23  Per Cederqvist  <ceder@lysator.liu.se>

	* Imported ISC version 0.98.3.