ObjFW  History of src/OFTCPSocket.h of 7bb4a942fb28fb1b

History of the file that is called src/OFTCPSocket.h at check-in 7bb4a942fb28fb1b

2024-04-03
02:16
[aafb477b2e] part of check-in [7413a728a7] Change license to LGPLv3 only (check-in: [7413a728a7] user: js, branch: trunk, size: 6982) [annotate] [blame] [check-ins using] [diff]
2024-02-03
11:39
[28525542c8] part of check-in [e8cf367195] Minor documentation improvement (check-in: [e8cf367195] user: js, branch: 1.0, size: 6774) [annotate] [blame] [check-ins using] [diff]
11:37
[2942ef5e7e] part of check-in [e03c6b5d9d] Minor documentation improvement (check-in: [e03c6b5d9d] user: js, branch: trunk, size: 6774) [annotate] [blame] [check-ins using] [diff]
08:53
[67a74a5ce9] part of check-in [19f3948a26] Fix typos in documentation found by spell checker (check-in: [19f3948a26] user: js, branch: 1.0, size: 6740) [annotate] [blame] [check-ins using] [diff]
08:49
[4115c6dc65] part of check-in [f97dc452b1] Fix typos in documentation found by spell checker (check-in: [f97dc452b1] user: js, branch: trunk, size: 6740) [annotate] [blame] [check-ins using] [diff]
2024-01-02
17:17
[f802834c92] part of check-in [26ddd2e4e4] Update copyright (check-in: [26ddd2e4e4] user: js, branch: trunk, size: 6740) [annotate] [blame] [check-ins using] [diff]
2023-08-25
12:25
[bccc5fcf49] part of check-in [29bbfc3e47] Minor documentation improvement (check-in: [29bbfc3e47] user: js, branch: trunk, size: 6740) [annotate] [blame] [check-ins using] [diff]
2023-05-21
11:04
[5c29465efd] part of check-in [fc161d1948] OFTCPSocket: Return socket address bound to (check-in: [fc161d1948] user: js, branch: trunk, size: 6734) [annotate] [blame] [check-ins using] [diff]
2023-01-06
09:04
[ac090f5eec] part of check-in [8939cbdb52] Update copyright (check-in: [8939cbdb52] user: js, branch: trunk, size: 6724) [annotate] [blame] [check-ins using] [diff]
2022-12-27
13:58
[13057c64fa] part of check-in [29a41e5a78] Rename OFAlready{Connected -> Open}Exception (check-in: [29a41e5a78] user: js, branch: trunk, size: 6724) [annotate] [blame] [check-ins using] [diff]
2022-10-22
17:29
[522e53453c] part of check-in [179b60bfb4] Split OFConnectSocketFailedException in subclasses (check-in: [179b60bfb4] user: js, branch: trunk, size: 6734) [annotate] [blame] [check-ins using] [diff]
16:50
[cc82674b9e] part of check-in [43b57ece47] Rename OFConnect{ion -> Socket}FailedException (check-in: [43b57ece47] user: js, branch: trunk, size: 6732) [annotate] [blame] [check-ins using] [diff]
16:00
[171e9901f1] part of check-in [72db6b3c6f] Split OFBindSocketFailedException into subclasses (check-in: [72db6b3c6f] user: js, branch: trunk, size: 6729) [annotate] [blame] [check-ins using] [diff]
15:07
[5b7d6c5295] part of check-in [35b565d369] Rename OFBind{ -> Socket}FailedException (check-in: [35b565d369] user: js, branch: trunk, size: 6727) [annotate] [blame] [check-ins using] [diff]
2022-10-17
23:27
[13742bc171] part of check-in [d92d094980] Document more exceptions (check-in: [d92d094980] user: js, branch: trunk, size: 6721) [annotate] [blame] [check-ins using] [diff]
2022-08-13
14:33
[21cfa24eb5] part of check-in [08cb210f76] OFTCPSocket: Minor documentation fix (check-in: [08cb210f76] user: js, branch: trunk, size: 6188) [annotate] [blame] [check-ins using] [diff]
2022-02-12
07:46
[fc53b099cc] part of check-in [1a86b8175b] Update copyright (check-in: [1a86b8175b] user: js, branch: trunk, size: 6183) [annotate] [blame] [check-ins using] [diff]
2021-11-06
00:10
[4ad589837f] part of check-in [34cb121dc5] Make OFTLSSocket an abstract class

This should make it easier to add TLS support using various
implementations. (check-in: [34cb121dc5] user: js, branch: trunk, size: 6183) [annotate] [blame] [check-ins using] [diff]

2021-10-24
21:15
[7942720881] part of check-in [aaf477fc88] Add OFUNIXStreamSocket (check-in: [aaf477fc88] user: js, branch: unix-sockets, size: 6292) [annotate] [blame] [check-ins using] [diff]
2021-04-18
22:56
[9ae8ba1677] part of check-in [e73c65a849] Rename all symbols marked extern (check-in: [e73c65a849] user: js, branch: new-naming-convention, size: 6286) [annotate] [blame] [check-ins using] [diff]
2021-04-17
03:37
[d5a780252d] part of check-in [b480ef54db] of_run_loop_mode_t -> OFRunLoopMode (check-in: [b480ef54db] user: js, branch: new-naming-convention, size: 6289) [annotate] [blame] [check-ins using] [diff]
03:21
[1696dc957f] part of check-in [c4e0e56fa3] Rename all blocks (check-in: [c4e0e56fa3] user: js, branch: new-naming-convention, size: 6299) [annotate] [blame] [check-ins using] [diff]
2021-03-07
15:07
[b81cee61b1] part of check-in [1948e7e972] *.h: Fold methods into one line where it fits (check-in: [1948e7e972] user: js, branch: trunk, size: 6320) [annotate] [blame] [check-ins using] [diff]
2021-01-02
22:04
[cdec3df6fd] part of check-in [374e1a1bfa] Update copyright (check-in: [374e1a1bfa] user: js, branch: trunk, size: 6335) [annotate] [blame] [check-ins using] [diff]
2020-10-03
11:35
[63c13750a5] part of check-in [163a4a5a2e] Use /** */ instead of /*! */ for documentation (check-in: [163a4a5a2e] user: js, branch: trunk, size: 6424) [annotate] [blame] [check-ins using] [diff]
2020-09-26
21:58
[f9723931da] part of check-in [ef614a225d] Don't require __COUNTER__ for OF_RESERVE_IVARS

__COUNTER__ does not exist in GCC 4.2, and Apple GCC 4.2 is still the
newest compiler available for macOS 10.5. (check-in: [ef614a225d] user: js, branch: trunk, size: 6424) [annotate] [blame] [check-ins using] [diff]

2020-05-30
14:35
[34998132f3] part of check-in [9e03377177] Remove unnecessary imports of socket.h (check-in: [9e03377177] user: js, branch: trunk, size: 6411) [annotate] [blame] [check-ins using] [diff]
2020-05-06
00:32
[cedf99692f] part of check-in [bc67e98833] Improve names of several properties (check-in: [bc67e98833] user: js, branch: trunk, size: 6431) [annotate] [blame] [check-ins using] [diff]
2020-04-26
19:39
[8293d08642] part of check-in [d7ddb3dbc7] Remove redundant arguments from blocks

Arguments that can just be captured by the block don't need to be
repeated as an argument. A lot of arguments passed to a delegate are
therefore not needed for a block. (check-in: [d7ddb3dbc7] user: js, branch: trunk, size: 6418) [annotate] [blame] [check-ins using] [diff]

18:10
[085c9c8662] part of check-in [13a8f43898] Move accept and listen OF{TCP -> Stream}Socket (check-in: [13a8f43898] user: js, branch: trunk, size: 6487) [annotate] [blame] [check-ins using] [diff]
16:21
[6a97f5073a] part of check-in [e5b2ee56ff] Add OFSequencedPacketSocket

This is intended for SCTP and SPX. (check-in: [e5b2ee56ff] user: js, branch: trunk, size: 9311) [annotate] [blame] [check-ins using] [diff]

2020-04-24
00:21
[3e0d4559a3] part of check-in [3dfe642dd3] Add OFIPStreamSocket

This is a new superclass for OFTCPSocket to allow sharing code with
other IP stream socket types, namely SCTP. (check-in: [3dfe642dd3] user: js, branch: trunk, size: 3336) [annotate] [blame] [check-ins using] [diff]

2020-01-02
01:51
[e4fec95ad0] part of check-in [c7f0229795] Update copyright (check-in: [c7f0229795] user: js, branch: trunk, size: 9315) [annotate] [blame] [check-ins using] [diff]
2019-09-29
19:35
[52ed0f333c] part of check-in [496695d778] Either restrict subclassing or reserve ivar space

This allows ABI stability with the fragile ABI. (check-in: [496695d778] user: js, branch: trunk, size: 9312) [annotate] [blame] [check-ins using] [diff]

2019-03-08
00:35
[0da62ee227] part of check-in [bceb7ed4c9] Use dot syntax (check-in: [bceb7ed4c9] user: js, branch: trunk, size: 9291) [annotate] [blame] [check-ins using] [diff]
2019-01-03
19:13
[7fc0a58cc9] part of check-in [0509d7a844] Update copyright (check-in: [0509d7a844] user: js, branch: trunk, size: 9366) [annotate] [blame] [check-ins using] [diff]
2018-12-11
22:57
[e932bc199a] part of check-in [064dbe5127] Include an exception in delegate methods

Otherwise, there would be two methods for every operation: One for
success and one for failure. It also makes it easy to forget about
handling failure, so it's better to always pass an optional exception. (check-in: [064dbe5127] user: js, branch: trunk, size: 9360) [annotate] [blame] [check-ins using] [diff]

2018-12-08
16:53
[077e4589a5] part of check-in [2b6a12065e] Separate error methods for async method delegates (check-in: [2b6a12065e] user: js, branch: trunk, size: 9863) [annotate] [blame] [check-ins using] [diff]
16:05
[4f0f6c4d0d] part of check-in [27153bf8cf] OFTCPSocket: Use a delegate for async operations (check-in: [27153bf8cf] user: js, branch: trunk, size: 9022) [annotate] [blame] [check-ins using] [diff]
2018-10-07
21:06
[65cbd0fc74] part of check-in [53172692a6] OFTCPSocket: Use OF_KINDOF for block types (check-in: [53172692a6] user: js, branch: trunk, size: 9867) [annotate] [blame] [check-ins using] [diff]
2018-10-06
18:24
[38f799c939] part of check-in [29e9a4c868] OFTCPSocket: Allow specifying the run loop mode (check-in: [29e9a4c868] user: js, branch: trunk, size: 9825) [annotate] [blame] [check-ins using] [diff]
2018-09-16
12:49
[0871d5445b] part of check-in [6638379972] OFTCPSocket: Async connect without threads (check-in: [6638379972] user: js, branch: trunk, size: 7282) [annotate] [blame] [check-ins using] [diff]
2018-08-11
14:00
[0973252c95] part of check-in [8f810ecb7e] Change the layout of of_socket_address_t

Instead of containing a struct sockaddr_storage - which does not exist
on all supported platforms - it now contains a union of all struct
sockaddr_* types.

Additionally, if struct sockaddr_in6 does not exist, it is defined so
that an IPv6 can be stored even if the system does not support IPv6. (check-in: [8f810ecb7e] user: js, branch: trunk, size: 7314) [annotate] [blame] [check-ins using] [diff]

2018-06-24
22:08
[6656d5bf06] part of check-in [3cd89fa8ba] Rename -[listenWith{BackLog -> Backlog}:] (check-in: [3cd89fa8ba] user: js, branch: trunk, size: 7357) [annotate] [blame] [check-ins using] [diff]
2018-01-03
19:49
[0fb7f74026] part of check-in [7e5c81e186] Update copyright notice (check-in: [7e5c81e186] user: js, branch: trunk, size: 7357) [annotate] [blame] [check-ins using] [diff]
2017-11-18
18:50
[c305337bfc] part of check-in [cc3ad3ddd3] Documentation: Use @brief for all properties (check-in: [cc3ad3ddd3] user: js, branch: trunk, size: 7334) [annotate] [blame] [check-ins using] [diff]
2017-10-30
00:23
[4bf4a25fa2] part of check-in [a2e849c681] Add class properties where appropriate

This improves Swift compatibility. (check-in: [a2e849c681] user: js, branch: trunk, size: 7292) [annotate] [blame] [check-ins using] [diff]

2017-10-29
21:58
[710f0fdfb9] part of check-in [f3ccf14461] Convert methods to properties where appropriate

This improves Swift compatibility. (check-in: [f3ccf14461] user: js, branch: trunk, size: 7135) [annotate] [blame] [check-ins using] [diff]

2017-09-26
22:01
[91bb6c7528] part of check-in [319709fff1] Many nullability fixes (check-in: [319709fff1] user: js, branch: 0.90, size: 7559) [annotate] [blame] [check-ins using] [diff]
21:53
[a227914da5] part of check-in [52011fbfd6] Many nullability fixes (check-in: [52011fbfd6] user: js, branch: trunk, size: 7742) [annotate] [blame] [check-ins using] [diff]
2017-09-24
16:34
[6a0791ce59] part of check-in [a0394db776] Minor documentation fix (check-in: [a0394db776] user: js, branch: trunk, size: 7722) [annotate] [blame] [check-ins using] [diff]
11:24
[79fa8a3d5c] part of check-in [f8498bb114] Change type for async exceptions to id (check-in: [f8498bb114] user: js, branch: trunk, size: 7596) [annotate] [blame] [check-ins using] [diff]
2017-09-23
22:07
[d70cc2f958] part of check-in [958da109d3] Support for passing a context to async IO handlers (check-in: [958da109d3] user: js, branch: trunk, size: 7643) [annotate] [blame] [check-ins using] [diff]
2017-08-11
22:26
[fe4d222a18] part of check-in [9db36c14b5] Always have retain / copy before nonatomic (check-in: [9db36c14b5] user: js, branch: trunk, size: 7539) [annotate] [blame] [check-ins using] [diff]
2017-05-13
16:29
[0d4361b9a8] part of check-in [f663d40cbd] Also use nonatomic for non-object properties (check-in: [f663d40cbd] user: js, branch: trunk, size: 7539) [annotate] [blame] [check-ins using] [diff]
2017-05-07
20:10
[a9d0cd2fee] part of check-in [4af49a13c3] Small code style change

Casts are now written like types in variable declarations. (check-in: [4af49a13c3] user: js, branch: trunk, size: 7527) [annotate] [blame] [check-ins using] [diff]

2017-04-30
13:35
[7e829b3ab1] part of check-in [0a73af49f0] Use nonatomic for properties and clean up

This changes retaining behavior, meaning properties are not returned
retained and autoreleased anymore, so a property returned from a getter
now needs to be manually retained and autoreleased before calling the
setter. However, this is rarely the case and not using atomic improves
performance. (check-in: [0a73af49f0] user: js, branch: trunk, size: 7520) [annotate] [blame] [check-ins using] [diff]

2017-02-04
17:45
[23290948e1] part of check-in [5a31a537a1] Fix typos in comments and strings found by aspell (check-in: [5a31a537a1] user: js, branch: trunk, size: 7509) [annotate] [blame] [check-ins using] [diff]
2017-01-09
17:36
[fc27ac4906] part of check-in [44f45c2e35] Update copyright

Forgot to add 2017, even though I already did quite some changes in
2017. (check-in: [44f45c2e35] user: js, branch: trunk, size: 7505) [annotate] [blame] [check-ins using] [diff]

2016-07-24
02:19
[282e7dee6a] part of check-in [79e447956c] Minor documentation fix (check-in: [79e447956c] user: js, branch: trunk, size: 7499) [annotate] [blame] [check-ins using] [diff]
2016-03-27
23:10
[1b9fd13a4f] part of check-in [12b8a7552e] Add socket support for Nintendo 3DS

This removes the port registry that existed for the Wii and instead
tries binding to random ports in a loop until it succeeds or errno is
not EADDRINUSE. This is done for the Wii and Nintendo 3DS now.

This also includes several other socket-related cleanups. (check-in: [12b8a7552e] user: js, branch: trunk, size: 7501) [annotate] [blame] [check-ins using] [diff]

2016-01-03
00:43
[0973528b48] part of check-in [cec0f072f8] Update copyright

While at it, also update the mail address. (check-in: [cec0f072f8] user: js, branch: 0.8, size: 7972) [annotate] [blame] [check-ins using] [diff]

00:41
[3d379a0b72] part of check-in [2a27cf3000] Update copyright

While at it, also update the mail address. (check-in: [2a27cf3000] user: js, branch: trunk, size: 7239) [annotate] [blame] [check-ins using] [diff]

2015-11-29
11:43
[694cce421a] part of check-in [48980f2297] Make properties a requirement and clean up code

This increases the required GCC version from 4.0 to 4.6 (exception:
Apple GCC, which already supports this with >= 4.0 starting with OS X
10.5). Since even GCC 4.6 is really old by now, there is no point in
still supporting something even older and making the code ugly because
of that. While some hardware and OS support was dropped from GCC 4.6
compared to GCC 4.0, there is nothing in there that would be an
interesting target with the exception of BeOS maybe - but a port to BeOS
can also be achieved using the Haiku support. The other dropped OSes are
mostly old versions of OSes while newer ones are still being supported
(and those newer versions of those OSes still support the same
hardware). (check-in: [48980f2297] user: js, branch: trunk, size: 7235) [annotate] [blame] [check-ins using] [diff]

2015-11-28
19:47
[236b9a919c] part of check-in [650b4be224] Minor documentation improvements (check-in: [650b4be224] user: js, branch: trunk, size: 7982) [annotate] [blame] [check-ins using] [diff]
2015-11-21
18:35
[68e32c48a9] part of check-in [d526d938d7] Remove OF_NULLABLE / OF_NONNULL

Now that Clang switched to use _Nullable and _Nonnull instead of
__nullable / __nonnull, there is no longer a conflict with glibc, which
means we can just define _Nullable / _Nonnull to nothing if they are not
understood by the compiler (which did not work with __nullable /
__nonnull due to this conflict).

This also defines _Null_unspecified to nothing if unavailable. (check-in: [d526d938d7] user: js, branch: trunk, size: 7978) [annotate] [blame] [check-ins using] [diff]

2015-10-19
22:15
[8b426328b2] part of check-in [1ba08eebc5] Add platform.h & make platform defines consistent (check-in: [1ba08eebc5] user: js, branch: trunk, size: 7984) [annotate] [blame] [check-ins using] [diff]
2015-10-17
10:59
[55b987fd74] part of check-in [ed4549ddd3] Add a port registry for the Wii

This is necessary as the Wii does not allow picking a random free port,
and thus we need to track which ports are used. (check-in: [ed4549ddd3] user: js, branch: trunk, size: 7985) [annotate] [blame] [check-ins using] [diff]

2015-09-06
15:48
[7dabca200d] part of check-in [d0eab356ce] Fix compilation for Wii (check-in: [d0eab356ce] user: js, branch: trunk, size: 7968) [annotate] [blame] [check-ins using] [diff]
2015-06-17
22:11
[6382beb2ce] part of check-in [80e1a9655b] Add OF_NULLABLE_PROPERTY

This is necessary to make GCC (>= 4.6 and Apple GCC) happy as they don't
like the list of property attributes ending in a comma. (check-in: [80e1a9655b] user: js, branch: trunk, size: 7901) [annotate] [blame] [check-ins using] [diff]

2015-06-14
10:45
[5654a78b4e] part of check-in [b7097a67b6] Add OF_NONNULL / OF_NULLABLE and use that instead

Using __nonnull directly doesn't work on systems using glibc, as glibc
defines __nonnull as a parameterized define. While this does not fix the
problem of Clang introducing __nonnull even though it conflicts with
glibc, this at least means it's possible again to compile things with
versions of Clang that don't support __nonnull on systems with glibc. (check-in: [b7097a67b6] user: js, branch: trunk, size: 7890) [annotate] [blame] [check-ins using] [diff]

2015-06-13
22:26
[433e48e1ac] part of check-in [9e76144ef8] Add support for and use the new nullability (check-in: [9e76144ef8] user: js, branch: trunk, size: 7887) [annotate] [blame] [check-ins using] [diff]
2015-05-03
10:16
[0e29d56685] part of check-in [12fbe85aab] OFTCPSocket: Add -[setTCPNoDelayEnabled:]

This also adds -[isTCPNoDelayEnabled] and -[isKeepAliveEnabled],
together with OFGetOptionFailedException to indiciate failure to
retrieve the current value of the option. (check-in: [12fbe85aab] user: js, branch: trunk, size: 7751) [annotate] [blame] [check-ins using] [diff]

2015-01-03
20:57
[d128094129] part of check-in [cfd374b906] Update copyright (check-in: [cfd374b906] user: js, branch: trunk, size: 7091) [annotate] [blame] [check-ins using] [diff]
2014-02-18
18:50
[61e3a49d05] part of check-in [246cfe0807] Documentation: Show correct imports (check-in: [246cfe0807] user: js, branch: trunk, size: 7085) [annotate] [blame] [check-ins using] [diff]
2014-01-30
22:02
[4dae1e7fcb] part of check-in [ff3c507941] OFUDPSocket: Add async resolve / receive (check-in: [ff3c507941] user: js, branch: trunk, size: 7026) [annotate] [blame] [check-ins using] [diff]
12:26
[b417a8af49] part of check-in [7908c035e4] Rename of_tcpsocket* -> of_tcp_socket_* (check-in: [7908c035e4] user: js, branch: trunk, size: 7022) [annotate] [blame] [check-ins using] [diff]
2014-01-27
22:01
[fee5d55648] part of check-in [5025cba435] Add OFUDPSocket

Async operations will follow later. (check-in: [5025cba435] user: js, branch: trunk, size: 7018) [annotate] [blame] [check-ins using] [diff]

2014-01-26
22:38
[4d85340515] part of check-in [49b1989b63] Move resolving functionality to resolver.m

This is in preparation for UDP sockets, so that they can share the
resolving functionality with TCP sockets. (check-in: [49b1989b63] user: js, branch: trunk, size: 7014) [annotate] [blame] [check-ins using] [diff]

2014-01-25
19:33
[4b861449bf] part of check-in [81d47f4398] Move socket includes and helpers to separate files

The new file socket.h includes all headers required for sockets on the
used platform, while the file socket_helpers.h defines the BSD API
functions to the platform specific functions if necessary.

This cleans up the classes dealing with sockets a lot and also reduces
code duplication. (check-in: [81d47f4398] user: js, branch: trunk, size: 7020) [annotate] [blame] [check-ins using] [diff]

2014-01-04
00:24
[d27684139a] part of check-in [3b97fc3cd9] Update copyright. (check-in: [3b97fc3cd9] user: js, branch: trunk, size: 7347) [annotate] [blame] [check-ins using] [diff]
2013-06-11
23:33
[2b3fb6a25a] part of check-in [ffb91daffe] Initial sockets support for the Wii.

Not functional yet due to bugs in the SDK.
Bugs found so far:

* Binding to port 0 fails instead of choosing a free port.
* gethostbyname() does not work for IPs.
* getsockname() is missing.
* struct sockaddr_storage is missing.

I have not decided yet whether I fix those bugs in the SDK (I already
implemented getsockname() and added struct sockaddr_stroage and it seems
to work) or if I work around them in ObjFW. This will mainly depend on
how cooperative the developers of the Wii SDK are. (check-in: [ffb91daffe] user: js, branch: trunk, size: 7341) [annotate] [blame] [check-ins using] [diff]

2013-05-26
17:24
[4ec65efa11] part of check-in [49b741b30e] OFTCPSocket.h: Explicitly import objfw-defs.h. (check-in: [49b741b30e] user: js, branch: trunk, size: 7260) [annotate] [blame] [check-ins using] [diff]
2013-05-22
18:42
[720d96e946] part of check-in [896084c340] Check for more socket-related headers / functions. (check-in: [896084c340] user: js, branch: trunk, size: 7236) [annotate] [blame] [check-ins using] [diff]
2013-03-31
10:04
[63a39507d8] part of check-in [b7b67d7119] Improve OFTLSSocket protocol. (check-in: [b7b67d7119] user: js, branch: trunk, size: 7267) [annotate] [blame] [check-ins using] [diff]
2013-03-08
22:44
[efe8886d8a] part of check-in [e8473b9db8] Document the block types.

This also removes "bool *stop" from some blocks where it does not make
sense. (check-in: [e8473b9db8] user: js, branch: trunk, size: 7267) [annotate] [blame] [check-ins using] [diff]

2013-03-04
17:20
[b4d76328d1] part of check-in [c5ef582958] Replace BOOL with bool.

The only places where BOOL is left are those where they are required by
the ABI. (check-in: [c5ef582958] user: js, branch: trunk, size: 6583) [annotate] [blame] [check-ins using] [diff]

2013-02-12
18:22
[99ba0b78fd] part of check-in [e40729d406] Prefix all ivars with an underscore. (check-in: [e40729d406] user: js, branch: trunk, size: 6583) [annotate] [blame] [check-ins using] [diff]
2013-01-12
20:53
[80ab9c568a] part of check-in [b8ce2359f3] Clean up the feature #ifdef mess. (check-in: [b8ce2359f3] user: js, branch: trunk, size: 6550) [annotate] [blame] [check-ins using] [diff]
20:21
[e5d525cdbe] part of check-in [85b8efadbc] Fix --disable-threads. (check-in: [85b8efadbc] user: js, branch: trunk, size: 6545) [annotate] [blame] [check-ins using] [diff]
2013-01-09
22:24
[29c6e8f03f] part of check-in [813c00ccf0] Update copyright. (check-in: [813c00ccf0] user: js, branch: trunk, size: 6518) [annotate] [blame] [check-ins using] [diff]
2012-12-13
20:53
[7bc1670242] part of check-in [1abe5a111f] Add of_tls_socket_class for 3rd-party TLS libs.

This removes of_http_client_tls_socket_class in favor of having one
symbol for all places where TLS would be desired. (check-in: [1abe5a111f] user: js, branch: trunk, size: 6512) [annotate] [blame] [check-ins using] [diff]

2012-10-30
18:50
[9d3bdeb531] part of check-in [13ea2fc8b1] Async I/O: Pass a context. (check-in: [13ea2fc8b1] user: js, branch: trunk, size: 6624) [annotate] [blame] [check-ins using] [diff]
2012-10-29
08:00
[3d65177451] part of check-in [7a3977d7fd] Documentation improvements. (check-in: [7a3977d7fd] user: js, branch: 0.7, size: 6410) [annotate] [blame] [check-ins using] [diff]
07:59
[e5cbeb8df7] part of check-in [63bf4de97b] Documentation improvements. (check-in: [63bf4de97b] user: js, branch: trunk, size: 6410) [annotate] [blame] [check-ins using] [diff]
2012-10-28
12:38
[9fd81ec698] part of check-in [1ad9565253] Switch to a headerdoc-compatible doc format. (check-in: [1ad9565253] user: js, branch: trunk, size: 6408) [annotate] [blame] [check-ins using] [diff]
2012-10-17
20:16
[facc710023] part of check-in [6343e04dcd] Pass exceptions on async I/O.

This makes it possible to handle exceptions that occurred during async
I/O in the specified handler. (check-in: [6343e04dcd] user: js, branch: trunk, size: 6408) [annotate] [blame] [check-ins using] [diff]

2012-09-19
23:57
[cd657843ce] part of check-in [4f149012e9] Make async connecting possible without blocks. (check-in: [4f149012e9] user: js, branch: trunk, size: 6321) [annotate] [blame] [check-ins using] [diff]
23:02
[804b5d55d9] part of check-in [4d9a641d87] Make async I/O possible without blocks.

Async connecting is still missing. (check-in: [4d9a641d87] user: js, branch: trunk, size: 5800) [annotate] [blame] [check-ins using] [diff]

2012-09-16
10:19
[fc62eafd6e] part of check-in [5d8349a8f6] Add -[OFTCPSocket asyncAcceptWithBlock:]. (check-in: [5d8349a8f6] user: js, branch: trunk, size: 5295) [annotate] [blame] [check-ins using] [diff]
2012-09-15
12:22
[3bab17e6ab] part of check-in [3b68656e8d] OFTCPSocket: Implement async connecting. (check-in: [3b68656e8d] user: js, branch: trunk, size: 4867) [annotate] [blame] [check-ins using] [diff]
2012-02-25
11:24
[df788899f8] part of check-in [99ed50a5e4] Always define __STDC_{CONSTANT,LIMIT}_MACROS before libc includes.
This is necessary for ObjC++.
(check-in: [99ed50a5e4] user: js, branch: 0.6, size: 4336) [annotate] [blame] [check-ins using] [diff]
2012-02-01
13:42
[44007219ff] part of check-in [c1b35e1495] Clean up the properties mess. (check-in: [c1b35e1495] user: js, branch: trunk, size: 4201) [annotate] [blame] [check-ins using] [diff]
2012-01-05
00:56
[514d791254] part of check-in [ce70e17b38] Update copyright. (check-in: [ce70e17b38] user: js, branch: trunk, size: 4218) [annotate] [blame] [check-ins using] [diff]
2011-12-08
02:25
[fa3ba9a6c5] part of check-in [a3b3333128] Make it possible to set a default SOCKS5 proxy for all OFTCPSockets.

For example, this is useful if you want to use
+[OFString stringWithContentsOfURL:] with a proxy or if you just want
to use anything that uses an OFTCPSocket with a proxy (even 3rd party
libraries). (check-in: [a3b3333128] user: js, branch: trunk, size: 4212) [annotate] [blame] [check-ins using] [diff]

2011-10-04
18:17
[02231d7620] part of check-in [48708f2435] Move SOCKS5 support to OFTCPSocket. (check-in: [48708f2435] user: js, branch: trunk, size: 3426) [annotate] [blame] [check-ins using] [diff]
2011-09-22
02:23
[5cb71bfab3] part of check-in [08700d08a6] D'oh, stupid typo. (check-in: [08700d08a6] user: js, branch: trunk, size: 2690) [annotate] [blame] [check-ins using] [diff]
2011-09-19
13:07
[83294d47e8] part of check-in [b8517c63ca] Rename -[bindToPort:onHost:] to -[bindToHost:port:].
This way it's consistent with -[connectToHost:port].
(check-in: [b8517c63ca] user: js, branch: trunk, size: 2690) [annotate] [blame] [check-ins using] [diff]
12:34
[d3fc0d3305] part of check-in [d43eb177bc] BOOL naming conventions. (check-in: [d43eb177bc] user: js, branch: trunk, size: 2690) [annotate] [blame] [check-ins using] [diff]
2011-09-11
17:09
[f9ba7e8037] part of check-in [8d554c0421] Documentation improvements. (check-in: [8d554c0421] user: js, branch: trunk, size: 2593) [annotate] [blame] [check-ins using] [diff]
2011-07-17
02:08
[7f7c70792a] part of check-in [1688bf89e0] Use sockaddr_storage instead of sockaddr in OFTCPSocket.
This ensures it's big enough and correctly aligned.
(check-in: [1688bf89e0] user: js, branch: 0.5, size: 2399) [annotate] [blame] [check-ins using] [diff]
02:03
[cffdc41556] part of check-in [7a5b65ee4d] Use sockaddr_storage instead of sockaddr in OFTCPSocket.
This ensures it's big enough and correctly aligned.
(check-in: [7a5b65ee4d] user: js, branch: trunk, size: 2392) [annotate] [blame] [check-ins using] [diff]
2011-06-05
18:53
[abc527a77c] part of check-in [1940d72ec7] Rename -[connetToHost:onPort:] to -[connectToHost:port:]. (check-in: [1940d72ec7] user: js, branch: trunk, size: 2382) [annotate] [blame] [check-ins using] [diff]
2011-04-22
21:08
[5adaf7382b] part of check-in [fb95acc8ab] More style improvements. (check-in: [fb95acc8ab] user: js, branch: trunk, size: 2389) [annotate] [blame] [check-ins using] [diff]
2011-04-08
07:05
[98f00d6f79] part of check-in [054a38e82d] Add -[isListening] to OFTCPSocket. (check-in: [054a38e82d] user: js, branch: trunk, size: 2389) [annotate] [blame] [check-ins using] [diff]
2011-04-06
18:30
[2a976521af] part of check-in [d776cbf5e2] Move ivar listening to OFTCPSocket.
Also, we don't need these ivars to be @public anymore.
(check-in: [d776cbf5e2] user: js, branch: trunk, size: 2306) [annotate] [blame] [check-ins using] [diff]
2011-03-29
23:19
[146d82e777] part of check-in [d983af3d93] Make it possible to let -[bindToPort:onHost:] choose a port. (check-in: [d983af3d93] user: js, branch: trunk, size: 2288) [annotate] [blame] [check-ins using] [diff]
2011-02-10
17:19
[c8cf94209d] part of check-in [a3e03981ea] Use ports instead of services in OFTCPSocket. (check-in: [a3e03981ea] user: js, branch: trunk, size: 2137) [annotate] [blame] [check-ins using] [diff]
2011-01-22
23:53
[4276a55e09] part of check-in [ca53d41c0f] Autodetect family in -[bindService:onNode:]. (check-in: [ca53d41c0f] user: js, branch: trunk, size: 2229) [annotate] [blame] [check-ins using] [diff]
2011-01-01
20:19
[5f5aec5406] part of check-in [da6b3d26cb] Change license. (check-in: [da6b3d26cb] user: js, branch: trunk, size: 2255) [annotate] [blame] [check-ins using] [diff]
2010-11-24
19:45
[64acad46b9] part of check-in [0769e074eb] Documentation improvements. (check-in: [0769e074eb] user: js, branch: trunk, size: 1999) [annotate] [blame] [check-ins using] [diff]
2010-07-07
20:57
[b07d89367b] part of check-in [28ea4a8a67] Rename OFSocket to OFStreamSocket.

This is to reflect that it is a connection-based, sequenced, reliable,
two-way byte stream. (check-in: [28ea4a8a67] user: js, branch: trunk, size: 1802) [annotate] [blame] [check-ins using] [diff]

2010-04-17
22:27
[19e54da62b] part of check-in [37db8f0fb3] New ivar naming convention.

ivars are now named like this: thisIsAnIVar. If an accessor exists for
the ivar, the ivar is named like the accessor. This is required for
@property to work. (check-in: [37db8f0fb3] user: js, branch: trunk, size: 1790) [annotate] [blame] [check-ins using] [diff]

15:46
[bc6d0d6e26] part of check-in [062a052b50] Don't return self where not necessary, return void or something useful. (check-in: [062a052b50] user: js, branch: trunk, size: 1785) [annotate] [blame] [check-ins using] [diff]
2010-04-11
17:55
[337485173f] part of check-in [04dc76c8c3] Add -[remoteAddress] to OFTCPSocket. (check-in: [04dc76c8c3] user: js, branch: trunk, size: 1754) [annotate] [blame] [check-ins using] [diff]
2010-04-02
14:18
[f3e771c9da] part of check-in [ebf57f4891] Close socket before throwing an exception when bind fails. (check-in: [ebf57f4891] user: js, branch: trunk, size: 1592) [annotate] [blame] [check-ins using] [diff]
2010-02-19
16:36
[d46a3d4e4d] part of check-in [42886185fd] Update copyright. (check-in: [42886185fd] user: js, branch: trunk, size: 1574) [annotate] [blame] [check-ins using] [diff]
2010-02-11
14:58
[156c8c4b82] part of check-in [72caeab860] Documentation improvements. (check-in: [72caeab860] user: js, branch: trunk, size: 1574) [annotate] [blame] [check-ins using] [diff]
2010-01-30
13:33
[ee8abca60b] part of check-in [fe6787bc79] Move some stuff from OFSocket to OFTCPSocket. (check-in: [fe6787bc79] user: js, branch: trunk, size: 1571) [annotate] [blame] [check-ins using] [diff]
2010-01-22
18:40
[afa9fb265e] part of check-in [273d5b90f8] Clean up OFStream and OFSocket interface.
This allows better compile-time checks.
(check-in: [273d5b90f8] user: js, branch: trunk, size: 1385) [annotate] [blame] [check-ins using] [diff]
2010-01-16
15:05
[fd6abf078a] part of check-in [1433aef0d0] Reduce dependencies between headers. (check-in: [1433aef0d0] user: js, branch: trunk, size: 1422) [annotate] [blame] [check-ins using] [diff]
2009-12-03
10:29
[852a45db8a] part of check-in [012cee4f80] More documentation improvements. (check-in: [012cee4f80] user: js, branch: trunk, size: 1425) [annotate] [blame] [check-ins using] [diff]
2009-11-09
22:45
[553ceb6fb7] part of check-in [a3cc34b139] Rename libobjfw to ObjFW. (check-in: [a3cc34b139] user: js, branch: trunk, size: 1429) [annotate] [blame] [check-ins using] [diff]
2009-06-09
20:44
[cd27a12d0a] part of check-in [f847f82b75] Make OFSocket a class cluster. (check-in: [f847f82b75] user: js, branch: trunk, size: 1432) [annotate] [blame] [check-ins using] [diff]
2009-05-29
09:28
[c2014cc1a4] part of check-in [282aadb9df] Always use [self alloc]. (check-in: [282aadb9df] user: js, branch: trunk, size: 1435) [annotate] [blame] [check-ins using] [diff]
2009-05-19
17:13
[fabcbf213d] part of check-in [0b8c5616cb] Rename + tcpSocket to + socket in OFTCPSocket. (check-in: [0b8c5616cb] user: js, branch: trunk, size: 1603) [annotate] [blame] [check-ins using] [diff]
2009-05-15
20:01
[f1ec44f94b] part of check-in [67066be692] Use OFString as much as possible. (check-in: [67066be692] user: js, branch: trunk, size: 1606) [annotate] [blame] [check-ins using] [diff]
2009-05-07
16:08
[2683abb6c9] part of check-in [0110aec5c0] Add OFSocket base class. (check-in: [0110aec5c0] user: js, branch: trunk, size: 1571) [annotate] [blame] [check-ins using] [diff]
2009-05-03
21:33
[5f9ebf21be] part of check-in [5ca127891c] Get rid of + new.
Additionally, make - accept return an autoreleased OFTCPSocket.
(check-in: [5ca127891c] user: js, branch: trunk, size: 2083) [annotate] [blame] [check-ins using] [diff]
17:19
[91d2dde531] part of check-in [7bf4b144ad] Make OFStream a class instead of a protocol and move readLine there. (check-in: [7bf4b144ad] user: js, branch: trunk, size: 2103) [annotate] [blame] [check-ins using] [diff]
15:45
[68a22b9b8b] part of check-in [dabcc373f7] readLine: for OFTCPSocket. (check-in: [dabcc373f7] user: js, branch: trunk, size: 2794) [annotate] [blame] [check-ins using] [diff]
2009-04-19
20:22
[a8e391accf] part of check-in [a756d3f511] Remove useless definitions. (check-in: [a756d3f511] user: js, branch: trunk, size: 2139) [annotate] [blame] [check-ins using] [diff]
2009-02-14
17:26
[bd7229eefe] part of check-in [029511474c] Always use #include for libc headers due to glibc being broken.
Do the same for win32 headers, just in case. They should work with
#import, but you never know ;).
(check-in: [029511474c] user: js, branch: trunk, size: 2148) [annotate] [blame] [check-ins using] [diff]
2009-01-24
15:33
[06d6c5c438] part of check-in [e635b9a3fc] Remove now useless release calls. (check-in: [e635b9a3fc] user: js, branch: trunk, size: 2142) [annotate] [blame] [check-ins using] [diff]
15:24
[968f2d5f3e] part of check-in [1496808b81] Adjust API to introduction of OFAutoreleasePool. (check-in: [1496808b81] user: js, branch: trunk, size: 2054) [annotate] [blame] [check-ins using] [diff]
2009-01-05
00:59
[f01ceb564c] part of check-in [f1b749d113] Update copyright. (check-in: [f1b749d113] user: js, branch: trunk, size: 1990) [annotate] [blame] [check-ins using] [diff]
2009-01-02
17:20
[e56061d926] part of check-in [ba01b9c18a] Some import fixes, some static lib and win32 enhancements. (check-in: [ba01b9c18a] user: js, branch: trunk, size: 1983) [annotate] [blame] [check-ins using] [diff]
2008-12-23
16:51
[4f744ac404] part of check-in [839112196f] Add Win32 support to OFTCPSocket. Even IPv6 works! (check-in: [839112196f] user: js, branch: trunk, size: 2067) [annotate] [blame] [check-ins using] [diff]
02:10
[6c14a9bc26] part of check-in [14ebaa7ca1] Check for sys/mman.h before trying to use madvise. (check-in: [14ebaa7ca1] user: js, branch: trunk, size: 2013) [annotate] [blame] [check-ins using] [diff]
2008-12-19
23:15
[4b9806efa1] part of check-in [e668c03098] Add errno in exceptions where it's useful. (check-in: [e668c03098] user: js, branch: trunk, size: 2019) [annotate] [blame] [check-ins using] [diff]
22:04
[e73bbae27a] part of check-in [2e6119eb42] Add - setBlocking and - enableKeepAlives for OFTCPSocket. (check-in: [2e6119eb42] user: js, branch: trunk, size: 2015) [annotate] [blame] [check-ins using] [diff]
2008-12-13
19:25
[59b06f95cb] part of check-in [142572f90b] Initial attempt to port to win32. (check-in: [142572f90b] user: js, branch: trunk, size: 1843) [annotate] [blame] [check-ins using] [diff]
2008-12-11
13:43
[dc54bd8b6a] part of check-in [c83137e7cd] Remove - close from OFStream protocol.
The reason is that closing a file isn't too useful, because an OFFile
object can't be reused, whereas an OFTCPSocket can. So only the
OFTCPSocket should have closed. Plus, we don't need to handle the case
that someone tried to read from / write to a closed OFFile.
(check-in: [c83137e7cd] user: js, branch: trunk, size: 1622) [annotate] [blame] [check-ins using] [diff]
2008-12-07
21:58
[01c69a8231] part of check-in [0d5b08e43e] Server support for OFTCPSocket. (check-in: [0d5b08e43e] user: js, branch: trunk, size: 1582) [annotate] [blame] [check-ins using] [diff]
10:39
[bf4dc8ccc5] part of check-in [06c6cdbd34] Remove redundant method definitions. (check-in: [06c6cdbd34] user: js, branch: trunk, size: 782) [annotate] [blame] [check-ins using] [diff]
10:35
[8a8e95826f] part of check-in [657fae20a4] Add - close to OFStream. (check-in: [657fae20a4] user: js, branch: trunk, size: 1868) [annotate] [blame] [check-ins using] [diff]
10:24
Added: [89f3d3aa72] part of check-in [d1a5065e69] OFSocket -> OFTCPSocket. (check-in: [d1a5065e69] user: js, branch: trunk, size: 1823) [annotate] [blame] [check-ins using]