From e33e19d0587146859d48a134ec9fd94e7b7ba5cd Mon Sep 17 00:00:00 2001 From: "FWoltermann@gmail.com" Date: Thu, 8 Dec 2011 14:53:40 +0000 Subject: Initial upload --- NetEx/NetLayer.cpp | 93 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 NetEx/NetLayer.cpp (limited to 'NetEx/NetLayer.cpp') diff --git a/NetEx/NetLayer.cpp b/NetEx/NetLayer.cpp new file mode 100644 index 0000000..8494f72 --- /dev/null +++ b/NetEx/NetLayer.cpp @@ -0,0 +1,93 @@ +/* Project nGenEx + Destroyer Studios LLC + Copyright © 1997-2004. All Rights Reserved. + + SUBSYSTEM: NetEx.lib + FILE: NetLayer.cpp + AUTHOR: John DiCamillo + + + OVERVIEW + ======== + Wrapper for WinSock Library +*/ + + +#include "MemDebug.h" +#include +#include "NetLayer.h" + +#include +#include + +// +-------------------------------------------------------------------+ + +static DWORD baseTime = timeGetTime(); + +// +-------------------------------------------------------------------+ + +NetLayer::NetLayer() +{ + fail = false; + ZeroMemory(&info, sizeof(info)); + + WORD ver = MAKEWORD(2,2); + int err = WSAStartup(ver, &info); + + if (err) + fail = true; +} + +NetLayer::~NetLayer() +{ + WSACleanup(); +} + +bool +NetLayer::OK() const +{ + return !fail; +} + +const char* +NetLayer::Description() const +{ + return info.szDescription; +} + +int +NetLayer::GetLastError() +{ + return WSAGetLastError(); +} + +DWORD +NetLayer::GetTime() +{ + DWORD msec = timeGetTime(); + + if (msec >= baseTime) { + return msec - baseTime; + } + + else { + DWORD extra = 0xffffffff; + return msec + extra - baseTime; + } +} + +long +NetLayer::GetUTC() +{ + return (long) time(0); +} + +Text +NetLayer::GetHostName() +{ + char hostname[256]; + ZeroMemory(hostname, sizeof(hostname)); + ::gethostname(hostname, sizeof(hostname)); + + return hostname; +} -- cgit v1.1