Oaf! Bad looking on me - I forgot to pass it in, your right ^^
::EDIT:: - running into some compiler errors. Aparently #define NETWORK_ERROR -1, and #define NETWORK_OK 0 are both out of scope later down in the coding. - I'm still having problems passing an integer to a void. I followed the tutorial i'm learning from to a tee. For the out of scope definitions since I was trying to located where they go out of scope which I didn't (Shows what an amateur I am ^^) - I just replaced them with -1, 0 respectavily. I'm also having linkage issues and issues with WinMain(HINSTANCE hInst, HINSTANCE hPrevInsnt, LPSTR lpCmd, int nShow) {.
Code:
#include <winsock.h>
#include <windows.h>
#include <stdio.h>
#define Network_Error -1
#define Network_OK 0
void ReportError(int, const char *);
int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmd, int nShow) {
WORD sockVersion;
WSADATA wsaData;
int nret;
sockVersion = MAKEWORD(1, 1);
WSAStartup(sockVersion, &wsaData);
SOCKET listeningSocket;
listeningSocket = socket(AF_INET,
SOCK_STREAM,
IPPROTO_TCP);
if(listeningSocket == INVALID_SOCKET) {
nret = WSAGetLastError();
ReportError(nret, "socket()");
WSACleanup();
return Network_Error; }
SOCKADDR_IN serverInfo;
serverInfo.sin_family = AF_INET;
serverInfo.sin_addr.s_addr = INADDR_ANY;
serverInfo.sin_port = htons(8888);
nret = bind(listeningSocket, (LPSOCKADDR) &serverInfo, sizeof(struct sockaddr));
if(nret == SOCKET_ERROR) {
nret = WSAGetLastError();
ReportError(nret, "bind()");
WSACleanup();
return -1; }
nret = listen(listeningSocket, 10);
if(nret == SOCKET_ERROR) {
nret = WSAGetLastError();
ReportError(nret, "listen()");
WSACleanup();
return -1; }
SOCKET theClient;
theClient = accept(listeningSocket, NULL, NULL);
if(theClient = SOCKET_ERROR) {
nret = WSAGetLastError();
ReportError(nret, "accept()");
WSACleanup();
return -1; }
closesocket(theClient);
closesocket(listeningSocket);
WSACleanup();
return 0;
}
void ReportError(int errorCode, const char *whichFunc) {
char ErrorMSG[92];
ZeroMemory(ErrorMSG, 92);
sprintf(ErrorMSG, "Call %s returned error %d", (char*)whichFunc, errorCode);
MessageBox(NULL, ErrorMSG, "Socket Indication", MB_OK);
}
I'm just a hobbiest - this isn't a project or anything of the sort.