diff -rupN quirc-0.9.84b/command.cc quirc-0.9.84/command.cc
--- quirc-0.9.84b/command.cc	2009-01-22 01:48:42.000000000 -0400
+++ quirc-0.9.84/command.cc	2009-01-22 02:06:11.000000000 -0400
@@ -8,10 +8,11 @@
 #include <netinet/in.h>
 #include <arpa/inet.h>
 #include <sys/socket.h>
+#include <cstring>
+#include <string>
 
 #include "config.h"
 
-#include <string>
 #ifdef USING_STD_STRING
 using std::string;
 #endif
diff -rupN quirc-0.9.84b/complete.cc quirc-0.9.84/complete.cc
--- quirc-0.9.84b/complete.cc	2009-01-22 01:48:42.000000000 -0400
+++ quirc-0.9.84/complete.cc	2009-01-22 02:07:18.000000000 -0400
@@ -2,6 +2,7 @@
 #include <ctype.h>
 #include <pwd.h>
 #include <sys/types.h>
+#include <cstring>
 
 #ifdef DMALLOC
 #include <dmalloc.h>
diff -rupN quirc-0.9.84b/dcc.cc quirc-0.9.84/dcc.cc
--- quirc-0.9.84b/dcc.cc	2009-01-22 01:48:42.000000000 -0400
+++ quirc-0.9.84/dcc.cc	2009-01-22 02:03:46.000000000 -0400
@@ -2,7 +2,7 @@
 #include <sys/types.h>
 #include <sys/socket.h>
 #include <netinet/in.h>
-#include <strings.h>
+#include <cstring>
 #include <unistd.h>
 #include <fcntl.h>
 #include <sys/stat.h>
diff -rupN quirc-0.9.84b/format.cc quirc-0.9.84/format.cc
--- quirc-0.9.84b/format.cc	2009-01-22 01:48:42.000000000 -0400
+++ quirc-0.9.84/format.cc	2009-01-22 02:07:41.000000000 -0400
@@ -1,5 +1,6 @@
 #include <stdarg.h>
 #include <sys/types.h>
+#include <cstring>
 
 #include "quirc.h"
 #include "hash.h"
diff -rupN quirc-0.9.84b/nick.h quirc-0.9.84/nick.h
--- quirc-0.9.84b/nick.h	2009-01-22 01:48:42.000000000 -0400
+++ quirc-0.9.84/nick.h	2009-01-22 02:08:00.000000000 -0400
@@ -5,6 +5,7 @@
 #include <dmalloc.h>
 #endif
 
+#include <cstring>
 #include "support.h"
 #include "defines.h"
 
diff -rupN quirc-0.9.84b/query.h quirc-0.9.84/query.h
--- quirc-0.9.84b/query.h	2009-01-22 01:48:42.000000000 -0400
+++ quirc-0.9.84/query.h	2009-01-22 02:08:26.000000000 -0400
@@ -5,6 +5,7 @@
 #include <dmalloc.h>
 #endif
 
+#include <cstring>
 #include "nick.h"
 #include "defines.h"
 
diff -rupN quirc-0.9.84b/quirc.cc quirc-0.9.84/quirc.cc
--- quirc-0.9.84b/quirc.cc	2009-01-22 01:48:42.000000000 -0400
+++ quirc-0.9.84/quirc.cc	2009-01-22 02:04:31.000000000 -0400
@@ -1,4 +1,4 @@
-#include <stdio.h>
+#include <cstring>
 
 #ifdef DMALLOC
 #include <dmalloc.h>
diff -rupN quirc-0.9.84b/server.cc quirc-0.9.84/server.cc
--- quirc-0.9.84b/server.cc	2009-01-22 01:48:42.000000000 -0400
+++ quirc-0.9.84/server.cc	2009-01-22 02:07:01.000000000 -0400
@@ -5,16 +5,16 @@
 #include <unistd.h>
 #include <signal.h>
 #include <fcntl.h>
-#include <strings.h>
 #include <sys/file.h>
 #include <time.h>
 #include <ctype.h>
 #include <netdb.h> 
 #include <stdarg.h>
+#include <cstring>
+#include <string>
 
 #include "config.h"
 
-#include <string>
 #ifdef USING_STD_STRING
 using std::string;
 #endif
diff -rupN quirc-0.9.84b/servertcl.cc quirc-0.9.84/servertcl.cc
--- quirc-0.9.84b/servertcl.cc	2009-01-22 01:48:42.000000000 -0400
+++ quirc-0.9.84/servertcl.cc	2009-01-22 02:05:20.000000000 -0400
@@ -2,6 +2,7 @@
 #include <sys/types.h>
 #include <netinet/in.h>
 #include <arpa/inet.h>
+#include <cstring>
 
 #ifdef DMALLOC
 #include <dmalloc.h>
diff -rupN quirc-0.9.84b/tcl.cc quirc-0.9.84/tcl.cc
--- quirc-0.9.84b/tcl.cc	2009-01-22 01:48:42.000000000 -0400
+++ quirc-0.9.84/tcl.cc	2009-01-22 02:05:02.000000000 -0400
@@ -2,6 +2,7 @@
 #include <sys/time.h>
 #include <unistd.h>
 #include <sys/socket.h>
+#include <cstring>
 
 #ifdef DMALLOC
 #include <dmalloc.h>
diff -rupN quirc-0.9.84b/window.cc quirc-0.9.84/window.cc
--- quirc-0.9.84b/window.cc	2009-01-22 01:48:42.000000000 -0400
+++ quirc-0.9.84/window.cc	2009-01-22 02:08:10.000000000 -0400
@@ -4,6 +4,7 @@
 #include <dmalloc.h>
 #endif
 
+#include <cstring>
 #include "window.h"
 
 int twindow::windowtype(char *pathname) {