Vladimir Panteleev
34e4346cf2
std.socket: Fix failing unittests
2011-09-14 16:51:07 +03:00
Vladimir Panteleev
2fbb7d6287
std.socket: Avoid reallocating address in Socket.receiveFrom
2011-09-12 23:40:00 +03:00
Vladimir Panteleev
d21e98e1b9
std.socket: Enumeration clean-up, documentation, completion
2011-09-12 06:39:25 +03:00
Vladimir Panteleev
7dab11c389
std.socket: Add UnixAddress
2011-09-11 20:48:05 +03:00
Vladimir Panteleev
e9744791dd
std.socket: Add IPV6_V6ONLY SocketOption
2011-09-09 00:43:47 +03:00
Vladimir Panteleev
72490a5d12
std.socket: Add Socket.setKeepAlive for Windows and Linux
2011-09-08 23:57:16 +03:00
Vladimir Panteleev
fc402b1897
std.socket: Add static InternetAddress.toString method
2011-09-08 16:16:48 +03:00
Vladimir Panteleev
0ed0372834
std.socket: POSIX fixes
2011-09-08 15:49:58 +03:00
Vladimir Panteleev
afc14edade
std.socket, .socketstream: Remove ws2_32 notice, a pragma(lib) exists
2011-09-08 14:49:51 +03:00
Vladimir Panteleev
f64c68be1d
std.socket: Add examples for DNS functions/classes, DDoc fixes
2011-09-08 14:48:21 +03:00
Vladimir Panteleev
af32eda6a7
std.socket: Socket.send*/receive* DDoc
2011-09-08 03:38:23 +03:00
Vladimir Panteleev
c4514e9d10
std.socket: Drop printf, add and use softUnittest
2011-09-08 03:12:40 +03:00
Vladimir Panteleev
00affa3cc1
std.socket: Recommend new functions instead of IPv4-only classes
2011-09-08 02:44:27 +03:00
Vladimir Panteleev
e22af4c8fe
std.socket: Add parseAddress function
2011-09-08 02:40:27 +03:00
Vladimir Panteleev
d5b6117af1
std.socket: Disambiguate usage of "address" term in DDoc
2011-09-08 02:10:40 +03:00
Vladimir Panteleev
28540d07b6
std.socket: Add AF_INET6 support to Socket.createAddress
2011-09-08 01:19:07 +03:00
Vladimir Panteleev
6d710ccc4a
std.socket: Throw appropriate exception in local/remoteAddress
2011-09-08 01:19:05 +03:00
Vladimir Panteleev
4698949399
std.socket: Replace Socket.newFamilyObject with createAddress
...
Socket.newFamilyObject was a private method which simply called
createAddress().
2011-09-08 01:19:03 +03:00
Vladimir Panteleev
f8846a4f46
std.socket: More constness
2011-09-08 01:19:01 +03:00
Vladimir Panteleev
2575a0b1ce
std.socket: Tcp/UdpSocket constructor DDoc
2011-09-08 01:19:00 +03:00
Vladimir Panteleev
1732544f50
std.socket: Allow specifying Socket.select timeout as Duration
2011-09-08 01:18:44 +03:00
Vladimir Panteleev
b7fea71755
std.socket: Change delay type from int to long in Socket.select
...
0x7FFFFFFF microseconds is about 36 minutes. An application which uses
the select() timeout for event timing may specify a value larger than that,
if it needs to wake up hourly or less often.
2011-09-08 00:12:18 +03:00
Vladimir Panteleev
4a5b955593
std.socket: Timeout option refactoring and overflow checks
2011-09-08 00:12:16 +03:00
Vladimir Panteleev
1c0eea1a4a
std.socket: Mention error diagnostic functions in send*/receive* DDoc
2011-09-08 00:12:15 +03:00
Vladimir Panteleev
864d566852
std.socket: Check sockaddr length in local/remoteAddress
2011-09-08 00:12:13 +03:00
Vladimir Panteleev
e1960bd824
std.socket: Use socklen_t
2011-09-08 00:12:11 +03:00
Vladimir Panteleev
75fcdfa1b6
std.socket: Add Socket.this(AddressInfo) constructor
2011-09-08 00:12:10 +03:00
Vladimir Panteleev
3a33e01a79
std.socket: @property
2011-09-07 23:56:51 +03:00
Vladimir Panteleev
a22d88fe5f
std.socket: Wrap C structs for TimeVal and Linger
...
Instead of trying to mimic the internal layout of the C timeval and linger
structures (and risking silent breakages due to differences in types,
field order and alignment issues), properly wrap them and provide proxy
properties for accessing their fields. Unfortunately I couldn't find a
neat way to do this neatly while preserving documentation, the deprecation
of the C field names and the new aliases. If Issue 6619 is implemented,
the implementation could be simplified greatly.
This commit also renames std.socket.timeval to TimeVal and marks the old
name as scheduled for deprecation.
2011-09-07 23:56:50 +03:00
Vladimir Panteleev
a65072d15e
std.socket: DDoc grammar
2011-09-07 23:56:48 +03:00
Vladimir Panteleev
a36ba862f6
std.socket: Exception class documentation
2011-09-07 23:56:46 +03:00
Vladimir Panteleev
d81efd40f9
std.socket, .socketstream: Link to examples on GitHub
2011-09-07 23:56:44 +03:00
Vladimir Panteleev
65c7f6b80f
std.socket: Refactor all *Address.toString implementations to a single base one
2011-09-07 23:56:30 +03:00
Vladimir Panteleev
ad2d04668a
std.socket: check for invalid IP addresses in InternetHost.getHostByAddr
2011-09-07 23:56:21 +03:00
Vladimir Panteleev
aefbe78e3a
std.socket: add getAddress function
2011-09-07 23:56:20 +03:00
Vladimir Panteleev
d9f43ab954
std.socket: add Internet6Address
2011-09-07 23:56:18 +03:00
Vladimir Panteleev
88a90251d6
std.socket: reword InternetAddress constructor DDoc
2011-09-07 23:56:16 +03:00
Vladimir Panteleev
15b8d62c65
std.socket: Make getAddressInfo template-variadic
2011-09-07 23:56:14 +03:00
Vladimir Panteleev
093c6f1f4d
std.socket: Drop AddressInfoHints, DDoc updates
2011-09-07 23:56:13 +03:00
Vladimir Panteleev
cf9c945e71
std.socket: Add getAddressInfo
2011-09-05 22:33:33 +03:00
Vladimir Panteleev
cb8d20b3a8
std.socket: Add UnknownAddressReference class
2011-09-05 22:11:56 +03:00
Vladimir Panteleev
5528b31edd
std.socket: Fix typo in documentation
2011-09-05 22:10:48 +03:00
Vladimir Panteleev
94b782ef70
std.socket: Add toAddrString, toPortString, toServiceNameString to Address
2011-09-05 20:54:15 +03:00
Vladimir Panteleev
3cc1436133
std.socket: Require hostname when using getnameinfo, for consistency with gethostbyaddr
2011-09-05 16:33:30 +03:00
Vladimir Panteleev
eb7d8d930f
std.socket: Update module authors
2011-09-05 14:53:38 +03:00
Vladimir Panteleev
57159cd936
std.socket: Address DDoc improvements
2011-09-05 14:11:57 +03:00
Vladimir Panteleev
1ee33a4932
std.socket: Address-family-agnostic getnameinfo support
...
This commit refactors getnameinfo usage in toHostNameString into a new
method in the base Address class, and provides an IPv4-specific override
in InternetAddress which uses the deprecated getHostByAddr function.
2011-09-05 14:01:52 +03:00
Vladimir Panteleev
193fffc519
std.socket: use INADDR_ANY
2011-09-05 13:57:09 +03:00
Vladimir Panteleev
d6ccb3447b
std.socket: Fix documentation of InternetHost.getHostByAddr
2011-09-05 12:47:54 +03:00
Vladimir Panteleev
bbbf60df7c
std.socket: Implement Address.addressFamily in the base class
2011-09-05 12:38:39 +03:00