Commit graph

173 commits

Author SHA1 Message Date
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
David Nadlinger
5adfd209db InternetHost.getHostByAddr accepts address in host byte order.
Thanks to Vladimir Panteleev for reporting this.
2011-09-06 16:06:09 +02: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
Vladimir Panteleev
f4a629bd13 std.socket: Add const name() method to Address covariant with non-const method 2011-09-05 12:30:49 +03:00
Vladimir Panteleev
6313c40bca std.socket: Mark SocketException.errorCode as scheduled for deprecation 2011-09-05 12:12:16 +03:00
Vladimir Panteleev
7aa9e5fbe3 std.socket: fix reverse IPv4 lookup via gethostbyaddr (with test) 2011-09-04 21:38:22 +03:00
Vladimir Panteleev
c42e414674 std.socket: Linger struct - D naming conventions and automatic field typing 2011-09-04 15:13:31 +03:00
Vladimir Panteleev
48c3c8234e std.socket: use stdint types for network numbers 2011-09-04 14:48:51 +03:00
Vladimir Panteleev
8d8726b28d std.socket: use thread-safe name resolution where it's available 2011-09-04 13:55:14 +03:00
Daniel Murphy
b2a4c71b63 Fix typo 2011-09-03 23:52:28 +10:00
Daniel Murphy
66630de763 Remove another stray typedef 2011-09-03 22:28:58 +10:00
Vladimir Panteleev
0e94b20b62 std.socket: Refactor common code in InternetHost methods 2011-09-03 13:16:27 +03:00
Vladimir Panteleev
5fb6c4ed64 Merge branch 'master' into new-std-socket 2011-09-03 09:35:22 +03:00
Daniel Murphy
1590a5cc38 Issue 6572 - Deprecate typedef
Remove use of deprecated typedef from phobos.  This mostly consists of changing typedef to alias, and disabling unittests that require typedef.  One change to std.registry is needed to work around a bug in typedef (6571).
2011-08-30 13:22:10 +10:00
Vladimir Panteleev
8716f74a42 std.socket: Refactor Service.getServiceBy* to use optional arguments instead of overloads 2011-08-26 08:26:29 +03:00
Vladimir Panteleev
8be7c18cf3 std.socket: verify capacity in SocketSet operations for memory safety 2011-08-25 07:19:21 +03:00
Vladimir Panteleev
8fee67f4ca std.socket: add getErrorText() to Socket 2011-08-25 07:14:22 +03:00
Vladimir Panteleev
aec1d8ed79 Issue 3484 - std.socket.Address hierarchy not const-safe 2011-08-24 08:47:09 +03:00
Vladimir Panteleev
65e6bbea31 Merge branch 'std-socket-chris' into new-std-socket
Conflicts:
	std/socket.d
2011-08-24 08:01:08 +03:00
Chris Miller
8e743ade60 std.socket updates and boost license
Committed on behalf of Christopher Miller by Vladimir Panteleev <thecybershadow@gmail.com>
2011-08-24 06:41:26 +03:00
Vladimir Panteleev
1f2cc3ac74 std.socket: Add support for variable set sizes on Windows 2011-08-22 07:30:41 +03:00
Vladimir Panteleev
956decdba7 std.socket: re-enabled Windows getProtocolByType test (works for me) 2011-08-22 05:54:30 +03:00
Vladimir Panteleev
9b5aa12891 std.socket: replace version(BsdSockets) with version(Posix) 2011-08-22 05:50:06 +03:00
Vladimir Panteleev
1963269deb std.socket: add wouldHaveBlocked function 2011-08-22 05:33:31 +03:00
Vladimir Panteleev
0ac3b8cd39 std.socket: Add support for error message formatting on Windows 2011-08-22 05:31:05 +03:00
Vladimir Panteleev
4dfe306463 std.socket: Refactor error message retrieval to own function, add lastSocketError 2011-08-22 05:22:56 +03:00
Vladimir Panteleev
6ecc85b8e4 std.socket: Ddoc formatting and minor improvements 2011-08-22 05:13:18 +03:00