Skip to content

Commit

Permalink
Make getnameinfo, getaddrinfo, and freeaddrinfo pointers `immut…
Browse files Browse the repository at this point in the history
…able`.
  • Loading branch information
denis-sh committed Aug 5, 2014
1 parent ddffb3d commit d451c96
Showing 1 changed file with 13 additions and 9 deletions.
22 changes: 13 additions & 9 deletions std/socket.d
Expand Up @@ -322,9 +322,13 @@ bool wouldHaveBlocked() nothrow @nogc
static assert(0);
}

private __gshared typeof(&getnameinfo) getnameinfoPointer;
private __gshared typeof(&getaddrinfo) getaddrinfoPointer;
private __gshared typeof(&freeaddrinfo) freeaddrinfoPointer;

private immutable
{
typeof(&getnameinfo) getnameinfoPointer;
typeof(&getaddrinfo) getaddrinfoPointer;
typeof(&freeaddrinfo) freeaddrinfoPointer;
}

shared static this()
{
Expand Down Expand Up @@ -1163,8 +1167,8 @@ unittest
{
// test via gethostbyname
auto getaddrinfoPointerBackup = getaddrinfoPointer;
getaddrinfoPointer = null;
scope(exit) getaddrinfoPointer = getaddrinfoPointerBackup;
cast() getaddrinfoPointer = null;
scope(exit) cast() getaddrinfoPointer = getaddrinfoPointerBackup;

addresses = getAddress("63.105.9.61");
assert(addresses.length && addresses[0].toAddrString() == "63.105.9.61");
Expand Down Expand Up @@ -1243,8 +1247,8 @@ unittest
{
// test via inet_addr
auto getaddrinfoPointerBackup = getaddrinfoPointer;
getaddrinfoPointer = null;
scope(exit) getaddrinfoPointer = getaddrinfoPointerBackup;
cast() getaddrinfoPointer = null;
scope(exit) cast() getaddrinfoPointer = getaddrinfoPointerBackup;

address = parseAddress("63.105.9.61");
assert(address.toAddrString() == "63.105.9.61");
Expand Down Expand Up @@ -1702,8 +1706,8 @@ unittest
{
// test reverse lookup, via gethostbyaddr
auto getnameinfoPointerBackup = getnameinfoPointer;
getnameinfoPointer = null;
scope(exit) getnameinfoPointer = getnameinfoPointerBackup;
cast() getnameinfoPointer = null;
scope(exit) cast() getnameinfoPointer = getnameinfoPointerBackup;

assert(ia.toHostNameString() == "digitalmars.com");
}
Expand Down

0 comments on commit d451c96

Please sign in to comment.