Index: trunk/Common/Makefile
===================================================================
--- trunk/Common/Makefile	(revision 253)
+++ trunk/Common/Makefile	(revision 255)
@@ -15,7 +15,9 @@
 
 common.a: $(OBJS)
+	rm -f common.a
 	$(AR) rcs $@ `echo $(OBJS) | $(AR_PROC)`
 
 common.lib: $(OBJS)
+	rm -f common.lib
 	$(AR) $(AR_FLAGS)$@ `echo $(OBJS) | $(AR_PROC)`
 
Index: trunk/Common/dir.c
===================================================================
--- trunk/Common/dir.c	(revision 253)
+++ trunk/Common/dir.c	(revision 255)
@@ -22,5 +22,46 @@
 char** cm_scandir(const char* path) {
 #if defined(_MSC_VER) || defined(__BORLANDC__)
-	return NULL;
+	WIN32_FIND_DATA ffd;
+	HANDLE hfind;
+	char** r = malloc(sizeof(*r));
+	int len;
+	char** old;
+	int i;
+	char* p;
+	r[0] = NULL;
+
+	p = cm_strcat(path, "/*");
+	hfind = FindFirstFile(p, &ffd);
+	if(INVALID_HANDLE_VALUE == hfind) {
+		return NULL;
+	}
+	do {
+		if(strcmp(ffd.cFileName, ".") != 0 && strcmp(ffd.cFileName, "..") != 0) {
+		old = r;
+		for(i = 0; old[i] != NULL; i++)
+			;
+		r = malloc(sizeof(*r) * (i + 2));
+		for(i = 0; old[i] != NULL; i++) r[i] = old[i];
+		r[i] = cm_strcat(ffd.cFileName, (ffd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) ? "/" : "");
+		r[i + 1] = NULL;
+		free(old);
+		}
+	} while(FindNextFile(hfind, &ffd) != 0);
+	FindClose(hfind);
+	free(p);
+	for(len = 0; r[len] != NULL; len++)
+		;
+	qsort(r, len, sizeof(char*), cm_sort);
+
+	old = r;
+	for(i = 0; old[i] != NULL; i++)
+		;
+	r = malloc(sizeof(*r) * (i + 2));
+	for(i = 0; old[i] != NULL; i++) r[i + 1] = old[i];
+	r[0] = cm_strdup("../");
+	r[i + 1] = NULL;
+	free(old);
+
+	return r;
 #else
 	DIR* dir = opendir(path);
Index: trunk/Module/Makefile
===================================================================
--- trunk/Module/Makefile	(revision 253)
+++ trunk/Module/Makefile	(revision 255)
@@ -18,3 +18,3 @@
 
 clean:
-	rm -f *.o *.so *.a *.dll
+	rm -f *.o *.so *.a *.dll *.tds
Index: trunk/Platform/bcc.mk
===================================================================
--- trunk/Platform/bcc.mk	(revision 253)
+++ trunk/Platform/bcc.mk	(revision 255)
@@ -11,7 +11,7 @@
 LDFLAGS =
 LIBS =
-EXEC =
+EXEC = .exe
 STATIC = lib
 LIBSUF = .dll
 OBJ = obj
-REQOBJS = tewi_bcc.res gui_bcc.res
+REQOBJS = gui_bcc.res
Index: trunk/Platform/vc6.mk
===================================================================
--- trunk/Platform/vc6.mk	(revision 253)
+++ trunk/Platform/vc6.mk	(revision 255)
@@ -10,5 +10,5 @@
 LDFLAGS =
 LIBS = -ladvapi32 -llibcmt
-EXEC =
+EXEC = .exe
 STATIC = lib
 LIBSUF = .dll
Index: trunk/Platform/win32.mk
===================================================================
--- trunk/Platform/win32.mk	(revision 253)
+++ trunk/Platform/win32.mk	(revision 255)
@@ -12,3 +12,3 @@
 EXEC = .exe
 LIBSUF = .dll
-PREOBJS = tewi.res gui.res
+PREOBJS = gui.res
Index: trunk/Platform/win64.mk
===================================================================
--- trunk/Platform/win64.mk	(revision 253)
+++ trunk/Platform/win64.mk	(revision 255)
@@ -12,3 +12,3 @@
 EXEC = .exe
 LIBSUF = .dll
-PREOBJS = tewi.res gui.res
+PREOBJS = gui.res
Index: trunk/README
===================================================================
--- trunk/README	(revision 253)
+++ trunk/README	(revision 255)
@@ -38,6 +38,4 @@
 Windows 9x               Working if I compile it using Borland C++ 5.x
                          or Visual C++ 6.0/Open Watcom 2.0
-                         TODO: Get directory listing working on
-                                       Borland/VC++
 Windows NT 4.0/later     Working on NT 4.0 SP6a
 Linux                    Working on Debian GNU/Linux 12 (x86_64)
Index: trunk/README.tmpl
===================================================================
--- trunk/README.tmpl	(revision 253)
+++ trunk/README.tmpl	(revision 255)
@@ -38,6 +38,4 @@
 Windows 9x               Working if I compile it using Borland C++ 5.x
                          or Visual C++ 6.0/Open Watcom 2.0
-                         TODO: Get directory listing working on
-                                       Borland/VC++
 Windows NT 4.0/later     Working on NT 4.0 SP6a
 Linux                    Working on Debian GNU/Linux 12 (x86_64)
Index: trunk/Server/Makefile
===================================================================
--- trunk/Server/Makefile	(revision 253)
+++ trunk/Server/Makefile	(revision 255)
@@ -46,11 +46,5 @@
 	$(CC) $(CFLAGS) $(EXTCFLAGS) -c -o $@ $<
 
-tewi.res: concat.rc ../Binary/tewi.ico
-	$(WINDRES) concat.rc -O coff -o $@
-
-tewi_bcc.res: concat.rc ../Binary/tewi.ico
-	brc32 -r -fo$@ concat.rc
-
-gui.res: concat.rc gui.h
+gui.res: concat.rc ../Binary/tewi.ico
 	$(WINDRES) concat.rc -O coff -o $@
 
@@ -66,3 +60,3 @@
 
 clean:
-	rm -f *.o tewi *.exe *.res *.elf *.sfo *.pbp *.self *.pkg *.obj concat.rc
+	rm -f *.o tewi *.exe *.res *.elf *.sfo *.pbp *.self *.pkg *.obj concat.rc *.tds
Index: trunk/Server/config.c
===================================================================
--- trunk/Server/config.c	(revision 253)
+++ trunk/Server/config.c	(revision 255)
@@ -489,8 +489,9 @@
 		free(line);
 		fclose(f);
-		for(portcount = 0; config.ports[portcount] != -1; portcount++);
-		if(portcount == 0){
+		for(portcount = 0; config.ports[portcount] != -1; portcount++)
+			;
+		if(portcount == 0) {
 			return 1;
-		}else{
+		} else {
 			return stop;
 		}
Index: trunk/Server/gui.c
===================================================================
--- trunk/Server/gui.c	(revision 253)
+++ trunk/Server/gui.c	(revision 255)
@@ -19,4 +19,6 @@
 HWND button_stop;
 HWND button_about;
+HWND button_reset;
+HWND button_exit;
 HWND status;
 HFONT monospace;
@@ -33,5 +35,5 @@
 int startup(int argc, char** argv);
 
-void ShowBitmapSize(HWND hWnd, HDC hdc, const char* name, int x, int y, int w, int h){
+void ShowBitmapSize(HWND hWnd, HDC hdc, const char* name, int x, int y, int w, int h) {
 	HBITMAP hBitmap = LoadBitmap(hInst, name);
 	BITMAP bmp;
@@ -40,7 +42,7 @@
 	hmdc = CreateCompatibleDC(hdc);
 	SelectObject(hmdc, hBitmap);
-	if(w == 0 && h == 0){
+	if(w == 0 && h == 0) {
 		StretchBlt(hdc, x, y, bmp.bmWidth, bmp.bmHeight, hmdc, 0, 0, bmp.bmWidth, bmp.bmHeight, SRCCOPY);
-	}else{
+	} else {
 		StretchBlt(hdc, x, y, w, h, hmdc, 0, 0, bmp.bmWidth, bmp.bmHeight, SRCCOPY);
 	}
@@ -49,10 +51,8 @@
 }
 
-void ShowBitmap(HWND hWnd, HDC hdc, const char* name, int x, int y){
-	ShowBitmapSize(hWnd, hdc, name, x, y, 0, 0);
-}
+void ShowBitmap(HWND hWnd, HDC hdc, const char* name, int x, int y) { ShowBitmapSize(hWnd, hdc, name, x, y, 0, 0); }
 
 int max = 0;
-void AddLog(const char* str){
+void AddLog(const char* str) {
 	HDC hdc;
 	PAINTSTRUCT ps;
@@ -65,6 +65,6 @@
 	GetTextExtentPoint32(hdc, str, strlen(str), &sz);
 	DeleteDC(hdc);
-	
-	if(max < sz.cx){
+
+	if(max < sz.cx) {
 		max = sz.cx;
 		SendMessage(logarea, LB_SETHORIZONTALEXTENT, max, 0);
@@ -72,8 +72,8 @@
 }
 
-LRESULT CALLBACK VersionDialog(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp){
-	if(msg == WM_COMMAND){
+LRESULT CALLBACK VersionDialog(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp) {
+	if(msg == WM_COMMAND) {
 		if(LOWORD(wp) == IDOK) EndDialog(hWnd, IDOK);
-	}else if(msg == WM_PAINT){
+	} else if(msg == WM_PAINT) {
 		HDC hdc;
 		PAINTSTRUCT ps;
@@ -87,9 +87,9 @@
 		ShowBitmapSize(hWnd, hdc, "TEWILOGO", size.left, size.top, WINWIDTH(size), WINWIDTH(size));
 		EndPaint(hWnd, &ps);
-	}else if(msg == WM_CTLCOLORDLG || msg == WM_CTLCOLORSTATIC){
+	} else if(msg == WM_CTLCOLORDLG || msg == WM_CTLCOLORSTATIC) {
 		HDC dc = (HDC)wp;
 		SetBkMode(dc, TRANSPARENT);
 		return (LRESULT)GetSysColorBrush(COLOR_MENU);
-	}else{
+	} else {
 		return FALSE;
 	}
@@ -97,11 +97,11 @@
 }
 
-void tewi_thread(void* ptr){
+void tewi_thread(void* ptr) {
 	int st = startup(0, NULL);
 	was_starting = TRUE;
-	if(st == -1){
+	if(st == -1) {
 		tewi_alive = TRUE;
 		idle = FALSE;
-	}else{
+	} else {
 		cm_force_log("Config error");
 		idle = FALSE;
@@ -116,5 +116,5 @@
 }
 
-void StartTewi(void){
+void StartTewi(void) {
 	EnableWindow(button_start, FALSE);
 	EnableWindow(button_stop, FALSE);
@@ -122,5 +122,5 @@
 }
 
-void StopTewi(void){
+void StopTewi(void) {
 	EnableWindow(button_start, FALSE);
 	EnableWindow(button_stop, FALSE);
@@ -128,40 +128,46 @@
 }
 
-LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp){
-	if(msg == WM_COMMAND){
+LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp) {
+	if(msg == WM_COMMAND) {
 		int trig = LOWORD(wp);
 		int ev = HIWORD(wp);
-		if(trig == GUI_BUTTON_ABOUT){
-			if(ev == BN_CLICKED){
+		if(trig == GUI_BUTTON_ABOUT) {
+			if(ev == BN_CLICKED) {
 				DialogBox(hInst, "VERSIONDLG", hWnd, (DLGPROC)VersionDialog);
 			}
-		}else if(trig == GUI_BUTTON_START){
-			if(ev == BN_CLICKED){
-				SendMessage(status, SB_SETTEXT, 0, (LPARAM)"Starting Tewi HTTPd");
+		} else if(trig == GUI_BUTTON_START) {
+			if(ev == BN_CLICKED) {
+				SendMessage(status, SB_SETTEXT, 0, (LPARAM) "Starting Tewi HTTPd");
 				StartTewi();
 			}
-		}else if(trig == GUI_BUTTON_STOP){
-			if(ev == BN_CLICKED){
-				SendMessage(status, SB_SETTEXT, 0, (LPARAM)"Stopping Tewi HTTPd");
+		} else if(trig == GUI_BUTTON_STOP) {
+			if(ev == BN_CLICKED) {
+				SendMessage(status, SB_SETTEXT, 0, (LPARAM) "Stopping Tewi HTTPd");
 				StopTewi();
 			}
-		}else if(trig == GUI_BUTTON_EXIT){
-			if(ev == BN_CLICKED){
-				if(tewi_alive){
-					SendMessage(status, SB_SETTEXT, 0, (LPARAM)"Stopping Tewi HTTPd");
+		} else if(trig == GUI_BUTTON_RESET) {
+			if(ev == BN_CLICKED) {
+				SendMessage(logarea, LB_RESETCONTENT, 0, 0);
+				max = 0;
+				SendMessage(logarea, LB_SETHORIZONTALEXTENT, max, 0);
+			}
+		} else if(trig == GUI_BUTTON_EXIT) {
+			if(ev == BN_CLICKED) {
+				if(tewi_alive) {
+					SendMessage(status, SB_SETTEXT, 0, (LPARAM) "Stopping Tewi HTTPd");
 					StopTewi();
 					exiting = TRUE;
-				}else{
+				} else {
 					SendMessage(hWnd, WM_CLOSE, 0, 0);
 				}
 			}
-		}else if(trig == GUI_LOG){
+		} else if(trig == GUI_LOG) {
 		}
-	}else if(msg == WM_CLOSE){
+	} else if(msg == WM_CLOSE) {
 		DestroyWindow(hWnd);
-	}else if(msg == WM_DESTROY){
+	} else if(msg == WM_DESTROY) {
 		DeleteObject(pbtewi_brush);
 		PostQuitMessage(0);
-	}else if(msg == WM_CREATE){
+	} else if(msg == WM_CREATE) {
 		RECT rc, src;
 		GetClientRect(hWnd, &rc);
@@ -173,5 +179,5 @@
 		status = CreateStatusWindow(WS_CHILD | WS_VISIBLE | CCS_BOTTOM, NULL, hWnd, GUI_STATUS);
 		SendMessage(status, SB_SIMPLE, 0, 0);
-		SendMessage(status, SB_SETTEXT, 0, (LPARAM)"Welcome to Tewi HTTPd");
+		SendMessage(status, SB_SETTEXT, 0, (LPARAM) "Welcome to Tewi HTTPd");
 		SendMessage(status, SB_GETRECT, 0, (LPARAM)&src);
 
@@ -180,5 +186,6 @@
 		button_stop = CreateWindow("BUTTON", "S&top", WS_CHILD | WS_VISIBLE | WS_DISABLED | BS_PUSHBUTTON, WINWIDTH(rc) - 100, 20 * 1, 100, 20, hWnd, (HMENU)GUI_BUTTON_STOP, hInst, NULL);
 		button_about = CreateWindow("BUTTON", "&About", WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, WINWIDTH(rc) - 100, 20 * 2, 100, 20, hWnd, (HMENU)GUI_BUTTON_ABOUT, hInst, NULL);
-		button_about = CreateWindow("BUTTON", "E&xit", WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, WINWIDTH(rc) - 100, WINHEIGHT(rc) - WINHEIGHT(src) - 20, 100, 20, hWnd, (HMENU)GUI_BUTTON_EXIT, hInst, NULL);
+		button_reset = CreateWindow("BUTTON", "&Reset", WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, WINWIDTH(rc) - 100, WINHEIGHT(rc) - WINHEIGHT(src) - 20 - 20, 100, 20, hWnd, (HMENU)GUI_BUTTON_RESET, hInst, NULL);
+		button_exit = CreateWindow("BUTTON", "E&xit", WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, WINWIDTH(rc) - 100, WINHEIGHT(rc) - WINHEIGHT(src) - 20, 100, 20, hWnd, (HMENU)GUI_BUTTON_EXIT, hInst, NULL);
 		logarea = CreateWindow("LISTBOX", NULL, WS_CHILD | WS_VISIBLE | WS_VSCROLL | WS_HSCROLL | LBS_NOINTEGRALHEIGHT | LBS_NOSEL, 0, 40, WINWIDTH(rc) - 100, WINHEIGHT(rc) - 40 - WINHEIGHT(src), hWnd, (HMENU)GUI_LOG, hInst, NULL);
 
@@ -186,23 +193,23 @@
 
 		SetTimer(hWnd, TIMER_WATCH_TEWI, 100, NULL);
-	}else if(msg == WM_TIMER){
-		if(wp == TIMER_WATCH_TEWI){
-			if(idle){
-			}else if(tewi_alive){
-				if(was_starting){
+	} else if(msg == WM_TIMER) {
+		if(wp == TIMER_WATCH_TEWI) {
+			if(idle) {
+			} else if(tewi_alive) {
+				if(was_starting) {
 					was_starting = FALSE;
-					SendMessage(status, SB_SETTEXT, 0, (LPARAM)"Started Tewi HTTPd");
+					SendMessage(status, SB_SETTEXT, 0, (LPARAM) "Started Tewi HTTPd");
 				}
 				EnableWindow(button_start, FALSE);
 				EnableWindow(button_stop, TRUE);
 				idle = TRUE;
-			}else{
-				if(was_starting){
+			} else {
+				if(was_starting) {
 					was_starting = FALSE;
-					SendMessage(status, SB_SETTEXT, 0, (LPARAM)"Stopped Tewi HTTPd");
+					SendMessage(status, SB_SETTEXT, 0, (LPARAM) "Stopped Tewi HTTPd");
 				}
 				EnableWindow(button_start, TRUE);
 				EnableWindow(button_stop, FALSE);
-				if(exiting){
+				if(exiting) {
 					KillTimer(hWnd, TIMER_WATCH_TEWI);
 					SendMessage(hWnd, WM_CLOSE, 0, 0);
@@ -211,5 +218,5 @@
 			}
 		}
-	}else if(msg == WM_PAINT){
+	} else if(msg == WM_PAINT) {
 		HDC hdc;
 		PAINTSTRUCT ps;
@@ -223,5 +230,5 @@
 		ShowBitmap(hWnd, hdc, "PBTEWI", 0, 0);
 		EndPaint(hWnd, &ps);
-	}else{
+	} else {
 		return DefWindowProc(hWnd, msg, wp, lp);
 	}
@@ -229,5 +236,5 @@
 }
 
-BOOL InitApp(void){
+BOOL InitApp(void) {
 	WNDCLASSEX wc;
 	wc.cbSize = sizeof(WNDCLASSEX);
@@ -246,5 +253,5 @@
 }
 
-BOOL InitWindow(int nCmdShow){
+BOOL InitWindow(int nCmdShow) {
 	HWND hWnd;
 	RECT deskrc, rc;
@@ -253,5 +260,5 @@
 	hWnd = CreateWindow("tewihttpd", "Tewi HTTPd", (WS_OVERLAPPEDWINDOW ^ WS_THICKFRAME) ^ WS_MAXIMIZEBOX, 0, 0, 600, 400, NULL, 0, hInst, NULL);
 
-	if(!hWnd){
+	if(!hWnd) {
 		return FALSE;
 	}
@@ -263,5 +270,5 @@
 }
 
-int WINAPI WinMain(HINSTANCE hCurInst, HINSTANCE hPrevInst, LPSTR lpsCmdLine, int nCmdShow){
+int WINAPI WinMain(HINSTANCE hCurInst, HINSTANCE hPrevInst, LPSTR lpsCmdLine, int nCmdShow) {
 	MSG msg;
 	BOOL bret;
@@ -272,12 +279,12 @@
 	idle = TRUE;
 	logfile = stderr;
-	if(!InitApp()){
-		return FALSE;
-	}
-	if(!InitWindow(nCmdShow)){
-		return FALSE;
-	}
-
-	while((bret = GetMessage(&msg, NULL, 0, 0)) != 0){
+	if(!InitApp()) {
+		return FALSE;
+	}
+	if(!InitWindow(nCmdShow)) {
+		return FALSE;
+	}
+
+	while((bret = GetMessage(&msg, NULL, 0, 0)) != 0) {
 		if(bret == -1) {
 			break;
Index: trunk/Server/gui.h
===================================================================
--- trunk/Server/gui.h	(revision 253)
+++ trunk/Server/gui.h	(revision 255)
@@ -15,4 +15,5 @@
 #define GUI_LOG 109
 #define GUI_BUTTON_EXIT 104
+#define GUI_BUTTON_RESET 105
 
 #define TIMER_WATCH_TEWI 1000
Index: trunk/Server/main.c
===================================================================
--- trunk/Server/main.c	(revision 253)
+++ trunk/Server/main.c	(revision 255)
@@ -6,6 +6,4 @@
 
 #ifdef __BORLANDC__
-
-#pragma resource "tewi_bcc.res"
 
 #pragma resource "gui_bcc.res"
Index: trunk/Server/server.c
===================================================================
--- trunk/Server/server.c	(revision 253)
+++ trunk/Server/server.c	(revision 255)
@@ -34,5 +34,5 @@
 
 #if defined(__MINGW32__) || defined(_MSC_VER) || defined(__BORLANDC__) || defined(__WATCOMC__)
-#ifndef NO_GETADDRINFO
+#ifndef NO_GETNAMEINFO
 #include <ws2tcpip.h>
 #include <wspiapi.h>
@@ -64,5 +64,5 @@
 #include <netinet/tcp.h>
 #endif
-#ifndef NO_GETADDRINFO
+#ifndef NO_GETNAMEINFO
 #include <netdb.h>
 #endif
@@ -78,5 +78,5 @@
 
 #ifndef S_ISDIR
-#define S_ISDIR(x) ((x) & _S_IFDIR)
+#define S_ISDIR(x) ((x)&_S_IFDIR)
 #endif
 
@@ -494,9 +494,12 @@
 	struct tw_http_response res;
 	struct tw_tool tools;
-#ifndef NO_GETADDRINFO
+	char* addrstr;
+#ifndef NO_GETNAMEINFO
 	struct sockaddr* sa = (struct sockaddr*)&addr;
 	getnameinfo(sa, sizeof(addr), address, 512, NULL, 0, NI_NUMERICHOST);
 #endif
-	address[0] = 0;
+	addrstr = inet_ntoa(addr.sin_addr);
+	strcpy(address, addrstr);
+	address[strlen(addrstr)] = 0;
 #ifdef FREE_PTR
 	free(ptr);
@@ -1050,5 +1053,5 @@
 		}
 	}
-	for(i = 0; i < sockcount; i++){
+	for(i = 0; i < sockcount; i++) {
 		close_socket(sockets[i]);
 	}
Index: trunk/Server/tw_version.h
===================================================================
--- trunk/Server/tw_version.h	(revision 253)
+++ trunk/Server/tw_version.h	(revision 255)
@@ -8,6 +8,6 @@
 #endif
 
-#define TW_VERSION "2.03D\0"
-#define TW_VERSION_TEXT "Tewi HTTPd version 2.03D"
+#define TW_VERSION "2.03E\0"
+#define TW_VERSION_TEXT "Tewi HTTPd version 2.03E"
 
 const char* tw_get_version(void);
Index: trunk/Tool/option.c
===================================================================
--- trunk/Tool/option.c	(revision 253)
+++ trunk/Tool/option.c	(revision 255)
@@ -16,7 +16,7 @@
 #endif
 #ifdef BUILD_GUI
-		if(strcmp(argv[3], "WINDOWS_WATCOM") == 0){
+		if(strcmp(argv[3], "WINDOWS_WATCOM") == 0) {
 			printf(" -b nt_win");
-		}else if(strcmp(argv[3], "WINDOWS") == 0){
+		} else if(strcmp(argv[3], "WINDOWS") == 0) {
 			printf(" -mwindows");
 		}
@@ -27,7 +27,7 @@
 #endif
 #ifdef BUILD_GUI
-		if(strcmp(argv[3], "WINDOWS_WATCOM") == 0){
+		if(strcmp(argv[3], "WINDOWS_WATCOM") == 0) {
 			printf(" -b nt_win");
-		}else if(strcmp(argv[3], "WINDOWS") == 0){
+		} else if(strcmp(argv[3], "WINDOWS") == 0) {
 			printf(" -mwindows");
 		}
@@ -38,5 +38,5 @@
 #endif
 #ifdef BUILD_GUI
-		if(strcmp(argv[3], "WINDOWS") == 0 || strcmp(argv[3], "WINDOWS_WATCOM") == 0){
+		if(strcmp(argv[3], "WINDOWS") == 0 || strcmp(argv[3], "WINDOWS_WATCOM") == 0) {
 			printf(" gui.%s", argv[4]);
 		}
@@ -46,5 +46,5 @@
 		printf("-lssl -lcrypto");
 #endif
-		if(strcmp(argv[3], "WINDOWS") == 0){
+		if(strcmp(argv[3], "WINDOWS") == 0) {
 #ifdef USE_WINSOCK1
 			printf(" -lwsock32");
@@ -56,5 +56,5 @@
 			printf(" -luser32");
 #endif
-		}else if(strcmp(argv[3], "WINDOWS_WATCOM") == 0){
+		} else if(strcmp(argv[3], "WINDOWS_WATCOM") == 0) {
 #ifdef USE_WINSOCK1
 			printf(" wsock32.lib");
Index: trunk/config.h.tmpl
===================================================================
--- trunk/config.h.tmpl	(revision 253)
+++ trunk/config.h.tmpl	(revision 255)
@@ -10,5 +10,5 @@
 #define USE_POLL
 #define HAS_CHROOT
-#undef NO_GETADDRINFO
+#undef NO_GETNAMEINFO
 #undef USE_WINSOCK1
 #undef BUILD_GUI
@@ -29,7 +29,7 @@
 #endif
 
-#if (defined(__MINGW32__) || defined(_MSC_VER) || defined(__BORLANDC__) || defined(__WATCOMC__)) && defined(USE_WINSOCK1) && !defined(NO_GETADDRINFO)
-#define NO_GETADDRINFO
-/* getaddrinfo is not on winsock 1 */
+#if (defined(__MINGW32__) || defined(_MSC_VER) || defined(__BORLANDC__) || defined(__WATCOMC__)) && defined(USE_WINSOCK1) && !defined(NO_GETNAMEINFO)
+#define NO_GETNAMEINFO
+/* getnameinfo is not on winsock 1 */
 #endif
 
@@ -39,7 +39,7 @@
 #endif
 
-#if (defined(_MSC_VER) || defined(__BORLANDC__) || defined(__WATCOMC__)) && !defined(NO_GETADDRINFO)
-#define NO_GETADDRINFO
-/* Do not use getaddrinfo */
+#if (defined(_MSC_VER) || defined(__BORLANDC__) || defined(__WATCOMC__)) && !defined(NO_GETNAMEINFO)
+#define NO_GETNAMEINFO
+/* Do not use getnameinfo */
 #endif
 
@@ -59,7 +59,7 @@
 #endif
 
-#if (defined(_PSP) || defined(__PPU__) || defined(__ps2sdk__)) && !defined(NO_GETADDRINFO)
-#define NO_GETADDRINFO
-/* PSP/PS2/PS3 should not have getaddrinfo */
+#if (defined(_PSP) || defined(__PPU__) || defined(__ps2sdk__)) && !defined(NO_GETNAMEINFO)
+#define NO_GETNAMEINFO
+/* PSP/PS2/PS3 should not have getnameinfo */
 #endif
 
Index: trunk/make-installer.sh
===================================================================
--- trunk/make-installer.sh	(revision 253)
+++ trunk/make-installer.sh	(revision 255)
@@ -27,4 +27,9 @@
 cp install.exe ../install.exe
 cd ..
+rm -rf Tewi tewi.7z
+7z x -oTewi install.exe
+rm -rf Tewi/'$'*
+7z a tewi.7z Tewi
+rm -rf Tewi
 rm tewi.exe
 rm itworks.html
