-
Notifications
You must be signed in to change notification settings - Fork 2
/
ChangeLog
767 lines (648 loc) · 33.9 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
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
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
2012-11-06 Al Riddoch <[email protected]>
* Support has been added for resolving addresses separately from
socket options, handling multiple results, and iterating.
* Legacy code for systems without getaddrinfo has been removed.
* Support has been added for various socket options.
2011-02-13 Al Riddoch <[email protected]>
* skstream/skstream.cpp, skstream/skstream.h: A number of bugs and
issues with non-blocking connect have been fixed.
2010-08-02 Al Riddoch <[email protected]>
* Release 0.3.7, interface version 5.0.0.
2009-03-23 Al Riddoch <[email protected]>
* skstream/skstream.h, skstream/skstream.cpp: Fix uses of EOF
to use traits_type::eof() instead.
2009-01-28 Alexey Torkhov <[email protected]>
* skstream/skstream.h: Fix issue when EOF is undefined without explicitly
including stdio with recent compilers.
2009-01-28 Al Riddoch <[email protected]>
* test/basicskstreamtest.h: Fix an issue with an ambiguous constructor
call thrown up by recent compilers. Strip out the RCS logging
tag.
2008-11-04 Al Riddoch <[email protected]>
* ping/ping.cpp: Add the C includes required for strtoul(),
exit(3) and strerror() which should fix problems with more
recent compilers.
2007-04-28 Al Riddoch <[email protected]>
* skstream/skserver.cpp, skstream/skstream.cpp: Add includes required
for recent compilers which include less stuff implicitly in
standard headers.
2007-10-02 Al Riddoch <[email protected]>
* skstream/skstream.cpp: Fix the method definition for
unix_socket_stream::open().
2007-10-02 Al Riddoch <[email protected]>
* skstream/skstream_unix.h, skstream/skstream.cpp: Clean up the
code for unix sockets, and add an interface for setting up socketpair
style streams.
2007-09-22 Al Riddoch <[email protected]>
* test/basicskstreamtest.h, test/skservertest.h,
test/skstreamtestrunner.cpp, test/socketbuftest.h:
Remove some tests for methods that no longer exist in the given
classes.
2007-09-22 Al Riddoch <[email protected]>
* Doxyfile: Update to a more recent version.
* skstream/skserver.h, skstream/sksocket.h: Add some quick
doc strings to classes, so the inheritance tree is apparant to
doxygen.
2007-09-02 Al Riddoch <[email protected]>
* configure.ac: Remove the debian subdir from distribution.
2007-05-28 Al Riddoch <[email protected]>
* skstream/skstream.cpp: A much safer way of ensuring the address
length is correct, using sizeof.
2007-05-28 Al Riddoch <[email protected]>
* skstream/skstream.cpp: It is not safe to assume the maximum
path length of a unix socket is 108. On OSX it is 104. On some
systems it is defined, on others we have to assume 104.
2007-04-12 Al Riddoch <[email protected]>
* configure.ac: Clean up the way debian/rules permissions are set so
they cause less breakage.
2007-04-12 Al Riddoch <[email protected]>
* configure.ac: Add a more detailed test so the inlined version
of gai_strerror provided by more recent versions of mingw can
be used.
2006-12-17 Al Riddoch <[email protected]>
* skstream/skstream.cpp, skstream/skstream.h, skstream/skstream_unix.h:
Add some inline documentation comments for Doxygen. Switch some
iostream related types to use the typedefs made available by
the iostream library.
2006-12-14 Al Riddoch <[email protected]>
* Makefile.am: Remove pc.in files from EXTRA_DIST, as autotools
distribute them anyway. Include Doxyfile in the distribution.
* Doxyfile: Remove missing footer directive.
2006-12-09 Al Riddoch <[email protected]>
* configure.ac: Ensure debian/rules is executable.
* debian/control.in: Fix the name of the debug package.
* debian/libskstream-0.3-dev.install: Fix the header order.
* libskstream-0.3-4-dbg.install, libskstream-0.3-4.install:
Rename install files to the correct interface version.
2006-12-09 Al Riddoch <[email protected]>
* debian: Experimental package files for creating .debs.
2006-10-14 Al Riddoch <[email protected]>
* skstream/skstream.h, skstream/sksocket.h: Move the IP
protocol enumerations to the generic socket header, as
they can be used in either streams or servers. Remove
service port numbers, as we should not be hardcoding
them. We should be looking them up from the OS.
* ping/ping.cpp: Add our own variable for the ping service
as the headers no longer provide it.
2006-10-14 Al Riddoch <[email protected]>
* Release 0.3.6, interface version 4.0.0.
2006-10-12 Al Riddoch <[email protected]>
* sasproto.h, skpoll.cpp, skpoll.h, skserver.cpp, skserver.h,
skserver_unix.h, sksocket.cpp, sksocket.h, skstream.cpp,
skstream.h, skstream_unix.h: Update the copyright statements
with current maintainer.
2006-10-12 Al Riddoch <[email protected]>
* acinclude.m4: Fix quoting in autoconf macros.
2006-10-11 Al Riddoch <[email protected]>
* configure.ac: Add check for gai_strerror, as it is missing on some
platforms, particularly windows. Specify the Windows API version
as 0x501 so we get the XP features.
* skstream/skstream.cpp, skstream/skserver.cpp: Provide a version
of gai_strerror() on platforms that use getaddrinfo, but don't
have it.
2006-10-10 Al Riddoch <[email protected]>
* skstream/sksocket.cpp: startup() on win32 can no longer use
LastError member, as its now static. Use a local instead.
2006-04-01 Al Riddoch <[email protected]>
* skstream/sksocket.h, skstream/sksocket.cpp: Move base socket
class into its own file, and move some code common to server
and stream sockets into this class.
* skstream/skstream.h, skstream/skstream.cpp: Get rid of peer
addresses in socket buffer class, and only add it to the
datagram socket buffer class, as its meaningless in stream
sockets. Add new base class for datagram iostream classes
with peer related functionality. Add functionality to
bind datagram sockets to a local address and port.
* skstream/skserver.h, skstream/skserver_unix.h, skstream/skserver.cpp:
Clean up server sockets, relying more on functionality in socket
base class, and getting rid of obsolete code.
* configure.ac: Increment version and interface version.
2005-12-02 James Turner <[email protected]>
* Add X-Code 2.0 project file (ProjectBuilder project will be deleted
shortly).
2005-10-03 Al Riddoch <[email protected]>
* configure.ac: Add configure parameter --enable-getaddrinfo which
can be disabled to build a binary that will run on older windows.
Make sure all tests will work ok with -Werror set.
2005-09-15 Al Riddoch <[email protected]>
* Release 0.3.5, interface version 3.0.0.
2005-09-15 Al Riddoch <[email protected]>
* skstream/sasproto.h, skstream/skpoll.cpp, skstream/skpoll.h,
skstream/skserver.cpp, skstream/skserver.h,
skstream/skserver_unix.h, skstream/skstream.cpp,
skstream/skstream.h, skstream/skstream_unix.h,
skstream/skstreamconfig.h.in: Remove duplicated changelog from
the source files, and add a reference to this file instead.
* Increment version to 0.3.5 and interface version to 3.0.0.
2005-09-07 Al Riddoch <[email protected]>
* skstream/skstream.cpp: Fix a uninitialised reference being passed
to the std::iostream parent contructor of basic_socket_stream.
2005-09-06 Al Riddoch <[email protected]>
* skstream/skstream.h, skstream/skstream.cpp: Fix arguments to
socketbuf::setbuf so they really match the function it should
be overloading. Add the required return value, and return this.
2005-07-07 Al Riddoch <[email protected]>
* skstream.spec.in: Clean up spec.
* NEWS: Update news.
* configure.ac: Increment version.
* Release 0.3.4, interface version 2.0.0.
2005-07-01 Al Riddoch <[email protected]>
* skstream/skstream.h, skstream/skstream.cpp: Make functions
non-virtual if they don't require it. Get rid of unused return
value for setbuf(). Move some functionality into
socketbuf::setSocket(). Make sure socket is valid before getting
its peer name.
2005-04-30 Al Riddoch <[email protected]>
* configure.ac: Update autoconf usage to be more correct.
Get rid of SKSTREAM_VERSION.
* NEWS: Add last release for completeness.
2004-03-03 Al Riddoch <[email protected]>
* skstream/skstream.h, skstream/skstream.cpp: Add a virtual
destructor to basic_socket interface.
2004-01-14 Al Riddoch <[email protected]>
* test/basicskstreamtest.h: Socket buffers are now automatically
deleted by the socket streams which own them.
2004-12-31 Al Riddoch <[email protected]>
* skstream.spec.in: Update spec with License URL Package Vendor
and Distribution tags.
2004-12-06 Al Riddoch <[email protected]>
* skstream/skstream.cpp, skstream/skserver.cpp: Fix an issue with
shutdown arguments being different in windows.
2004-11-30 Al Riddoch <[email protected]>
* Release 0.3.3, interface version 1.0.0.
2004-11-29 Al Riddoch <[email protected]>
* skstream/skstream.h, skstream/skstream.cpp: Inline operator!
and timeout as they don't need to be virtual. Don't inline
open() as its too big. Make setOutpeer return void, as the returned
bool value was useless and ignored.
2004-11-24 Al Riddoch <[email protected]>
* skstream/skstream.cpp, skstream/skstream.h, skstream/skstream_unix.h:
Re-work the way stream buffer objects are created so they are
allocated in the super class using new, and passed to the base
where they are deleted in the destructor. This ensures that the
stream buffer is never used un-initialised, or after destruction.
Move some lengthy constructors into the .cpp file.
* configure.ac: Increment version and interface so applications can
ensure they get the updated API.
2004-11-23 Al Riddoch <[email protected]>
* skstream/skserver.cpp, skstream/skserver.h,
skstream/skstream.cpp, skstream/skstream.h:
Re-purpose the shutdown() method of various classes
so it no longer closes the socket. This makes it more consistent
and sorts out some issues with using epoll() with skstream.
Make sure close() is called in the right places in destructors.
Fix a bug in the Win32 build where WSACleanup() was getting
called at utterly the wrong time.
2004-09-29 Al Riddoch <[email protected]>
* Move to using configure.ac with updated contents.
* Create new README and move old one to README.FreeSockets.
* Release 0.3.2, interface version 0.0.0.
2004-06-06 Al Riddoch <[email protected]>
* Fix devel dependencies in rpm spec.
2004-06-03 James Turner <[email protected]>
* XCode project updates; remove pbxuser file from CVS, shouldn't
be checked in.
2004-05-13 Al Riddoch <[email protected]>
- skstream/skserver_unix.h: Remove can_accept() from unix_socket_server
as its not implemented and the version in the base class should be used.
2003-12-19 Al Riddoch <[email protected]>
- Remove Serial from rpm spec as it is not required, and messes up
deps.
- Release version 0.3.1
2003-12-08 Al Riddoch <[email protected]>
- skstream/skserver.cpp: Correctly use SOCKET_ERROR instead of
INVALID_SOCKET when checking return value of syscalls.
- Add AC_CANONICAL_SYSTEM macro.
2003-11-15 Al Riddoch <[email protected]>
- Fix license typo in the rpm spec.
2003-09-29 Al Riddoch <[email protected]>
- Release version 0.3.0
2003-09-29 Al Riddoch <[email protected]>
- Add arch dependent header to rpm spec.
2003-09-29 Al Riddoch <[email protected]>
- Add libws2_32 which is required for getaddrinfo and friends under
windows.
- ping/ping.cpp: Move signal.h so it is available in windows build.
- test/skstreamtestrunner.cpp: Make the test always return success so
that distcheck rule works. The test only succeeds if its run as root
and the echo service is running, both of which are undesirable.
2003-09-28 Al Riddoch <[email protected]>
- skstream/skstream.h: Add accessors so address sizes in buffer class
are accessible from outside stream class.
- ping/ping.cpp: Re-work code for handling conversion of addresses
to presentation format for protocol independance.
2003-09-27 Al Riddoch <[email protected]>
- test/childskstreamtest.h: Get rid of some of the java-isms, and
handle some failures a little more cleanly. Fix the udp test.
- test/skstreamtestrunner.cpp: Ensure that the tests exit status
reflects whether it passes or fails.
- Fix Makefile.am so tests are actually run.
2003-09-27 Al Riddoch <[email protected]>
- skstream/skstreamconfig.h.windows: Update headers and defines
to build latest code on MSVC
2003-09-26 Al Riddoch <[email protected]>
- Add option to get streams remote details as reverse lookup, rather
than just presentation form.
2003-09-26 Al Riddoch <[email protected]>
- Write elaborate tests to pick up socket calls when building for windows.
- ping/ping.cpp: Remove unused variable.
2003-09-26 Al Riddoch <[email protected]>
- Write some tests to pick up the socket and name resolver libs on
System V.
- Clean up handling of libs required to get socket calls in general.
- ping/ping.cpp, skstream/skserver.cpp: Add missing stdio include.
- skstream/skserver.h: Remove non-required string.h include.
- skstream/skstream.cpp: Add mising stdio include, and clean up sprintf()
usage.
2003-09-26 Al Riddoch <[email protected]>
- skstream/skstream.cpp: Add code that handles converting service to
presentation format in a protocol independant way.
2003-09-26 Al Riddoch <[email protected]>
- skstream/skstream.h: Add accessors for address size members.
- ping/ping.cpp: Clean up use of libc and system calls.
- skstream/skstream.cpp: Clean up handling socket address sizes
when setting socket by descriptor in the buffer objects.
Add code that handles converting address to presentation format
in a protocol independant way.
2003-09-25 Al Riddoch <[email protected]>
- skstream/skpoll.cpp, skstream/skserver.cpp, skstream/skstream.cpp:
Finish off fully qualifying all libc and system calls as being
explicitly in the global namespace.
2003-09-25 Al Riddoch <[email protected]>
- Remove messy attempt to handle IPv6 addresses without getaddrinfo
2003-09-25 James Turner <[email protected]>
- skstream/skstream.cpp: Fully qualify all libc and system calls as
being explicitly in the global namespace.
2003-09-24 James Turner <[email protected]>
- skstream/skstreamconfig.h.pbx: define HAVE_GETADDRINFO and HAVE_IN_ADDR_T
for ProjectBuilder (framework) builds on OS-X, since OS-X supports
these features.
2003-09-24 Al Riddoch <[email protected]>
- skstream/skstream.cpp: Implement non-blocking connect with addrinfo list.
2003-09-24 Al Riddoch <[email protected]>
- Typo in in_addr_t check fixed.
- skstream/skstream.cpp: Missed out typedef keyword fix.
2003-09-24 Al Riddoch <[email protected]>
- skstream/skstream.cpp: Add check, and fallback definition for
in_addr_t.
2003-09-24 Al Riddoch <[email protected]>
- skstream/skstream.h, skstream/skstream.cpp: Re-write connecting
code for IP datagram and stream sockets so they try each of the
results from getaddrinfo in turn. Needs work on non-blocking
sockets.
2003-09-23 Al Riddoch <[email protected]>
- skstream/skserver.cpp: Modify bind code that uses getaddrinfo
so it tries each of the results in turn until one works, instead
of bailing out on the first failure.
2003-09-23 Al Riddoch <[email protected]>
- ping/ping.cpp: Add include required since headers were simplified.
2003-09-23 Al Riddoch <[email protected]>
- skstream/skserver.h: Make service an int in setService() as it always
is elsewhere.
- skstream/skserver.h, skstream/skserver.cpp: Make open() methods return
true on success, and false on failure.
- skstream/skserver.h, skstream/skserver.cpp: Add new method for
creating and binding to a socket, to avoid duplicating code.
2003-09-06 Martin Pollard <[email protected]>
- configure.in: changed win32 code to use winsock2.h instead of winsock.h.
- skstream/skstream.h: added a guard #ifndef SOCKET_ERROR to it's
definition.
2003-08-23 Al Riddoch <[email protected]>
- skstream/skstream.h, skstream/skstream.cpp: Add extra argument
to dgram_streambuf::setTarget() so protocol can be passed in.
Add #warnings if the old non getaddrinfo code is being used.
2003-08-23 Al Riddoch <[email protected]>
- skstream/skstreamconfig.h.in, skstream/skstream_unix.h,
skstream/skstream.h, skstream/skstream.cpp,
skstream/skserver_unix.h, skstream/skserver.h, skstream/skserver.cpp:
Remove as much platform sensitive code from the headers as possible,
and simplify the generated header. Improve formatting and header
guards for readability.
- skstream/skserver_unix.h: Add a new constructor for unix_socket_server
so it can be instanced without already knowing the details of the
service.
2003-08-23 Al Riddoch <[email protected]>
- skstream/skstream.h, skstream/skstream.cpp: Modify udp_socket_stream
constructor so that it does not create the socket immediatly.
- skstream/skstream.cpp: Re-write dgram_socketbuf::setTarget() so it
uses getaddrinfo to create the socket, and get the address in
a protocol independant way.
2003-08-23 Al Riddoch <[email protected]>
- skstream/skserver.h, skstream/skserver_unix.h: Add default constructor
to tcp_socket_server, and make single argument constructors explicit.
- skstream/skserver.cpp: Use AI_PASSIVE with getaddrinfo() to make listen
sockets accept any connection.
2003-08-23 Al Riddoch <[email protected]>
- skstream/skserver.cpp: Use getaddrinfo to create server sockets
in a protocol independant way.
2003-08-23 Al Riddoch <[email protected]>
- skstream/skstream.cpp: Use getaddrinfo to handle the port number.
2003-08-23 Al Riddoch <[email protected]>
- skstream/skstream.cpp: Formating changes for clarity.
2003-08-17 Al Riddoch <[email protected]>
- Re-order contents of config header so it works on systems
which require more headers for socklen_t.
2003-08-16 Al Riddoch <[email protected]>
- Fix packaging of skserver_unix.h.
2003-08-09 Al Riddoch <[email protected]>
- Fix conditional building of tests.
2003-08-08 Al Riddoch <[email protected]>
- skstream/skstream.cpp, skstream/skstream_unix.h: Include skstream
header with its fully qualified name for compatability, and move
the unix system header out of the header into the cpp file.
- skstream/skserver.cpp, skstream/skserver.h: Add new base class for ip
socket types, and put in the ip address related functionality into it,
so basic class can be used as a base for unix socket class. Move
can_accept() into the base class as it applies to any listen socket.
- skstream/skserver_unix.h, skstream/skserver.cpp: Add a class for
unix listen sockets.
2003-07-30 Al Riddoch <[email protected]>
- skstream/skserver.cpp, skstream/skserver.h, skstream/skstream.cpp,
skstream/skstream.h, skstream/skstream_unix.h: Move virtual
function implementations into .cpp files.
2003-07-25 Al Riddoch <[email protected]>
- Don't build or run the unit tests if CppUnit is not found.
2003-07-24 Al Riddoch <[email protected]>
- Add a more complex test for closesocket for mingw32.
2003-07-23 Al Riddoch <[email protected]>
- skstream/skstream.h: Fix header for windows build.
2003-07-23 James Turner <[email protected]>
- Comitting long-standing ProjectBuilder file updates,
builds a nice skstream.framework under OS-X. Can also
build the 'ping' demo, though that has issues generally.
2003-07-23 Al Riddoch <[email protected]>
- skstream/skstreamconfig.h.pbx, skstream/skstreamconfig.h.in,
skstream/skstreamconfig.h.windows: Removed some defines which
are the same on all platforms, and put them in the main header.
Avoid streambuf header as it varies on some systems, and rely
on iostream instead.
- Remove the streambuf header test.
- skstream/skstream.h: Remove the old platform specific code,
take on some changes from the skstreamconfig header, and clean
up some comments.
- skstream/skstream.cpp: Re-write the resolver code for platforms
without getaddrinfo() so it is cleaner, and covers more cases.
2003-07-03 Al Riddoch <[email protected]>
- Update rpm spec to be cleaner, and make the technical sections
more generic.
2003-06-23 Al Riddoch <[email protected]>
- Update Makefile.ams so distcheck works.
2003-05-06 Al Riddoch <[email protected]>
- skstream/skstream.h, skstream/skstream.cpp, skstream_unix.h:
Re-work basic_socket_stream so it can have either stream or datagram
buffers.
- ping/ping.cpp, ping/ping.h, test/basicskstreamtest.h,
test/childskstreamtest.h, test/skservertest.h: Get the tests and examples
building again.
2003-05-04 James Turner <[email protected]>
- Updated OS-X projectbuilder files, including adding an
skstreamconfig.h.pbx config file, which is copied to
the framework prior to the build (by a ShellScript build phase).
2003-05-04 Al Riddoch <[email protected]>
- Sort out nasty hard tabs from address checks.
- Start work on updating the checks.
2003-05-04 James Turner <[email protected]>
- Fix the Unix and IPv6 tests under OS-X (autoconf build), OS-X
needs <sys/types.h> included before any other header for
all manner of system headers.
2003-05-04 Al Riddoch <[email protected]>,
- Fix unix and IPv6 checks so they include the right headers.
2003-05-04 Al Riddoch <[email protected]>,
- skstream/skstream.cpp: Add a check to detect IPv6 sockaddr in
headers, and treat address explicitly as an IPv6 address if
it is.
2003-05-04 Al Riddoch <[email protected]>,
- Add a second pkgconfig file for apps that need unix socket support.
- Rename sksystem.h as skstreamconfig.h, and put it in an architecture
dependent subdir. Modify pkgconfig files to handle this.
- Handle errors in a more general way to reduce the number
of places where pre-processor conditionals are required.
- Remove some redundant code for dealing with win32 that has
now been superceded.
2003-04-22 Al Riddoch <[email protected]>,
- Add configure checks and support for protocol family independant
socket address functions, so we can support IPv6 as well as IPv4.
2003-04-16 Al Riddoch <[email protected]>,
- Fix up includes so they work properlly
2003-04-16 Al Riddoch <[email protected]>,
- Move source into subdir for portability
2003-04-09 Al Riddoch <[email protected]>,
- Fix problem caused by ending variable name with _HEADERS.
2003-03-18 Al Riddoch <[email protected]>,
- Improve safety of some constructors, and move IP (host and port)
related functions into apropriate classes.
- Add in unix sockets, based on a configure check.
2003-03-18 Al Riddoch <[email protected]>,
- Remove legacy skstream-config script to avoid clash with stable version.
2003-03-18 Al Riddoch <[email protected]>,
- Increment API to version 0.3, and reset interface version, so
this version can co-exist with 0.2.x
2003-03-16 Al Riddoch <[email protected]>,
- skstream.cpp: Fix problem with virtual method being called
after destructor.
2003-03-14 Al Riddoch <[email protected]>,
- skstream.h, skstream.cpp: Re-work sockbuf class so it is
not specific to any one type of socket. Remove inet
functionality from base classes. Derive new buffer
classes for stream and datagram sockets, and use
stream version in current socket classes. This should
be considered work in progress. Do not port your code.
2003-01-31 Al Riddoch <[email protected]>,
- Convert to using pkg-config
12/09/2002 Ron Steinke <[email protected]>,
- created basic_socket, a virtual base class
for basic_socket_stream and basic_socket_server,
so that the polling code has a common base
with getSocket() to access
- created basic_socket_poll polling class
- changed tcp_socket_stream::is_ready() to isReady()
to match standards for function naming, left is_ready()
as a wrapper of isReady() for compatibility
2002-11-04 Al Riddoch <[email protected]>,
- Add doxygen docs.
20/28/2002 Michael Koch <[email protected]>
- Added support for GNU/Hurd.
- Added man page for skstream-config.
- Added support for NOCONFIGURE in autogen.sh
10/14/2002 Malcolm Walker <[email protected]>
- Added call to Sleep(0) in win32 nonblocking connect
07/22/2002 Ron Steinke <[email protected]>,
- changed sizeof(sockaddr) to sizeof(sockaddr_in) in
several locations, so that we pass the correct size
of in_peer and out_peer in socketbuf
- reordered initializers in socketbuf constructors
to match their declaration order in the class
07/21/2002 Al Riddoch <[email protected]>,
- configure.in: Added --enable-debug option for debug build,
increment version and interface version due to changes, add
news item, and release.
07/16/2002 Dan Tomalesky <[email protected]>
- skstream.cpp: added a small fix to a bug with is_ready. wasn't
compiling on linux and seems code was wrong in the select because it was
doing |= to the select() instead of != (i.e., if it doesn't return 1,
there is no ready socket or an error)
07/15/2002 Al Riddoch <[email protected]>,
Malcolm Walker <[email protected]>
- skstream.cpp: Handle nonblocking connect in win32
- fix call in is_ready() for TCP nonblocking connect
- skstream.h: Include correct streambuf header on Linux.
07/03/2002 James Turner <[email protected]>
-Added configuration case for Darwin / OS-X
-Fixed Rsteinke's changes to use typedefs for socklen / errnum
06/26/2002 Michael Koch <[email protected]>
-Install headers into $(includedir)/skstream
-Simplified installation of doc files
06/22/2002 Al Riddoch <[email protected]>,
-Removed "using namespace std" from header.
06/11/2002 Ron Steinke <[email protected]>,
-Added a timeout version of the tcp_socket_stream
constructor, which wraps the timeout version
of open()
06/11/2002 Ron Steinke <[email protected]>,
-Added an optional "milliseconds" argument to
tcp_socket_stream::is_ready(), to take advantage
of the timeout in select()
06/11/2002 Ron Steinke <[email protected]>,
-Modified getSocket() so you can poll on the writability
of a tcp_socket_stream during a nonblocking connect,
instead of calling is_ready() in a timeout. You still
have to call is_ready() when the poll returns.
06/11/2002 Ron Steinke <[email protected]>,
-Fixed many bugs in nonblocking tcp socket connect code
2002-06-10 Al Riddoch <[email protected]>
-Add generated rpm spec and sort out interface versioning. Install docs.
05/27/2002 Michael Koch <[email protected]>
-Add support for FreeBSD.
05/20/2002 Ron Steinke <[email protected]>,
Malcolm Walker <[email protected]>
-Add code to support noblocking connect for TCP socket streams.
Bumped version to 0.2.3.
04/08/2002 Malcolm Walker <[email protected]>,
Martin Pollard <[email protected]>
-Moved code out of skstream.h and into skstream.cpp for
basic_socket_stream constructors and methods.
-Renamed CHANGELOG to CHANGELOG.FreeSockets to stop filename clash on
lame filesystems
-Added MS Visual C++ project files to VisualC directory.
03/04/2002 Dan Tomalesky <[email protected]>
-Added $ACLOCAL_FLAGS to aclocal call in autogen.sh
03/02/2002 Dan Tomalesky <[email protected]>
-Updated Makefile.am to have the various EXTRA_DIST stuff needed in the
tar ball.
-Fixed the includes for the tests so that they aren't installed when doing
make install, but are in the dist file.
-Adding TODO so that make dist is happy (nothing in it though)
-Added acinclude.m4 with the cppunit m4 in it so that people without
cppunit can still autogen/configure (I see your point now James :-)
-Adding ChangeLog, NEWS, and README which are requirements for doing
automake's make dist. old CHANGELOG has been broken into README and
ChangeLog.
03/01/2002 Dan Tomalesky <[email protected]>
-Pushed the version to 0.2.2 so that people building with 0.2.1 know that
they don't have can_accept() in tcp_socket_server
-changed can_accept's timeval to be all 0, so that it is just a quick
poll and returns immediately (Thanks to alriddoch for the suggestion)
-modified the ugly switch block I was using to print out error message
names to use strerror (Thanks to James for that one)
02/26/2002 Dan Tomalesky <[email protected]>
-added test cases for skserver and friends
-adding .cvsignore files so that it doesn't mess with non-cvs files anymore
-in skserver.cpp and skstream.cpp, in the close() methods, I commented out
the return; in the error part of the shutdown() call because it is
possible that a socket can exist without it actually having been used,
so this could error out on those cases and the socket is never actually
closed.
-in skserver.h, added can_accept() to tcp_socket_server so that it can be
checked to see if the server socket has any connections available, so that
accept() can then be called. (if it returns false, if accept is called,
it will block until a connection is made)
-removed the #include <iostream> from skserver.h and skstream.h as they are
not actually needed for any of the code. (else it comes in from some other
include, I'm not positive)
-Made some formatting changes in skserver.h along the same lines as I have
been doing throughout the code.
-added testClose() to basicskstreamtest.
-changed the socket created in basicskstreamtest from SOCK_STREAM to
SOCK_DGRAM though it doesn't make any difference what so ever in the
testing.
-added the skservertests into the test runner.
02/23/2002 Dan Tomalesky <[email protected]>
-added in CVS logging variable so that changes show up in modified files
This will help keep changes made by worldforge in each file that is
changed as required by the GPL.
-changed some parameter variables to have better meaning.
(ad -> address, etc.)
-added some code into tcp_sk_stream::open so that it calls setLastError()
when the connection fails.
-Added some comments into skstream.h to better describe SOCKET_TYPE as
there can be some confusion between what it is actually for
(pointer/file descriptor/windows cludge of the socket) and the various
types of sockets (tcp, udp, raw, etc)
-changed some more formatting for readability.
-uncommented some commented out code in skstream.h so that the sync()
method returns 0 on the else, rather than not returning anything.
-added some code into setBroadcast() so that setLastError() is called
if it fails to perform the getsocketopt().
-modified the test/Makefile.am to remove the header files from the SOURCES
as the .h files do not seem to affect the build.
-updated all the current test so that they use a socket instead of the
absolutely wrong stuff I was doing before.
-added tests for tcp, udp, and raw skstreams child classes.
02/20/2002 Dan Tomalesky <[email protected]>
-added a new test case header for basic_socket_streams
-made a mod to basic_socket_stream::setOutpeer(sockaddr_in&)
seemed to me it had an erroneous ! in the statement
02/19/2002 Dan Tomalesky <[email protected]>
-changed socketbuf(int, unsigned, unsigned) to have variable names
so it is easier to read in the declaration.
-Added License header into skstream.h
-Added cppunit test class and Auto* for supporting it.
(doesn't do anything yet)
01/07/2002 Krystian G Bates
Removed the code in socketbuf::sync() that caused both input and output
buffers to be emptied on `<< flush'
01/09/2001 - RGJ
Added the function timeout(), which returns true if a timeout has occured.
It also clears the state bits of the stream so it can send/received after
a timeout is detected. If badbit is set, the stream still cannot send and/or
receive.
12/28/2000 - RGJ
FreeSockets version 0.3 released under GNU LGPL License.
11/27/2000 - RGJ
Changed constructors of nearly all classes.
Now the size of the buffers may be defined.
Added support for RAW sockets.
11/24/2000 - RGJ
Added a namespace (FreeSockets) to hold:
- Enumeration IP_Services: define common IP ports used.
- Enumeration IP_Protocols: define some avaiable protocols.
11/23/2000 - RGJ
Class hierarchy was redesigned.
Version 0.2 released.
9/20/2000 - RGJ
Added support for UDP server sockets .
Added a stream manipulator to set remote host.
9/15/2000 - RGJ
Added support for client UDP sockets.
8/24/2000 - RGJ
Added timeout control using select().
8/23/2000 - RGJ
Completed port to BSD Sockets(*NIX).
8/3/2000 - RGJ
Added support for server sockets.
Added class basic_protocol that can be used to create multithreaded
servers. FreeThreads(http://fly.to/rafasgj) are used to provide an
object oriented portable multithreading API.
7/30/2000 - RGJ
First release of FreeSockets(v 0.1).
Support for client sockets.
Only Windows plataform supported.
Contact Information:
Feel free to send comments, suggestions or bug reports by e-mail to
Rafael Guterres Jeffman <[email protected]>
I use only GCC under Linux, Windows and BeOS and Borland's Free C++
Compiler under Windows. Since, these are the only plataforms/compilers
I can help with.
I DO NOT(and certainly have no plans to) use Microsoft's Visual C++.
Have fun!
And visit GOBO, o Invariante at http://eden.cscience.org/~lode/gobo).