Skip to content

Instantly share code, notes, and snippets.

@ddevault
Created December 27, 2012 01:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ddevault/8377075da938b128bef7 to your computer and use it in GitHub Desktop.
Save ddevault/8377075da938b128bef7 to your computer and use it in GitHub Desktop.
private static IPEndPoint ParseEndPoint(string arg)
{
IPAddress address;
int port;
if (arg.Contains(':'))
{
// Both IP and port are specified
var parts = arg.Split(':');
if (!IPAddress.TryParse(parts[0], out address))
address = Resolve(parts[0]);
return new IPEndPoint(address, int.Parse(parts[1]));
}
if (IPAddress.TryParse(arg, out address))
return new IPEndPoint(address, 25565);
if (int.TryParse(arg, out port))
return new IPEndPoint(IPAddress.Loopback, port);
return new IPEndPoint(Resolve(arg), 25565);
}
private static IPAddress Resolve(string arg)
{
return Dns.GetHostEntry(arg).AddressList.FirstOrDefault();
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment