diff --git a/CompilerDependencies.h b/CompilerDependencies.h
index b6c0577..c89b125 100644
--- a/CompilerDependencies.h
+++ b/CompilerDependencies.h
@@ -146,7 +146,7 @@
 #ifndef NOT_REFERENCED
 #   define  NOT_REFERENCED(x) (x = x)
 #endif
-#ifdef _POSIX_
+#ifdef IS_POSIX
 typedef int SOCKET;
 #endif
 // #ifdef TPM_POSIX
diff --git a/GpMacros.h b/GpMacros.h
index ff4251d..3494b55 100644
--- a/GpMacros.h
+++ b/GpMacros.h
@@ -84,7 +84,7 @@
 #   define TEST_HASH(alg)
 #endif // SELF_TEST
 /* 5.11.3	For Failures */
-#if defined _POSIX_
+#if defined IS_POSIX
 #   define FUNCTION_NAME        0
 #else
 #   define FUNCTION_NAME        __FUNCTION__
diff --git a/TPMCmds.c b/TPMCmds.c
index 173dcf7..0805575 100644
--- a/TPMCmds.c
+++ b/TPMCmds.c
@@ -110,7 +110,12 @@ Usage(
 /* This is the main entry point for the simulator. */
 /* It registers the interface and starts listening for clients */
 int
-main(
+#ifndef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
+main
+#else
+tpm_server_main
+#endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
+(
      int              argc,
      char            *argv[]
      )
diff --git a/TcpServerPosix.c b/TcpServerPosix.c
index be48607..8dfcbea 100644
--- a/TcpServerPosix.c
+++ b/TcpServerPosix.c
@@ -721,9 +721,11 @@ TpmServer(
 			    memcpy(&CommandResponseSizes.largestResponse,
 				   &OutputBuffer[6], sizeof(UINT32));
 			}
+#ifndef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
 		    ok = WriteVarBytes(s,
 				       (char*) OutBuffer.Buffer,
 				       OutBuffer.BufferSize);
+#endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
 		    if(!ok)
 			return TRUE;
 		    break;
@@ -737,9 +739,11 @@ TpmServer(
 			    printf("Unsupported client version (0).\n");
 			    return TRUE;
 			}
+#ifndef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
 		    ok &= WriteUINT32(s, ServerVersion);
 		    ok &= WriteUINT32(s,
 				      tpmInRawMode | tpmPlatformAvailable | tpmSupportsPP);
+#endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
 		    break;
 		    
 		  case TPM_SET_ALTERNATIVE_RESULT:
@@ -760,7 +764,9 @@ TpmServer(
 		    printf("Unrecognized TPM interface command %08x\n", Command);
 		    return TRUE;
 		}
+#ifndef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
 	    ok = WriteUINT32(s,0);
+#endif /* FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION */
 	    if(!ok)
 		return TRUE;
 	}
diff --git a/makefile b/makefile
index cc3e410..c10ba5a 100644
--- a/makefile
+++ b/makefile
@@ -40,16 +40,19 @@
 
 
 CC = /usr/bin/gcc
+CC = clang
+CXX = clang++
 
-CCFLAGS = -Wall  			\
+CCFLAGS = $(CFLAGS) -Wall  			\
 	-Wmissing-declarations -Wmissing-prototypes -Wnested-externs \
-	-Werror -Wsign-compare \
+	-Wsign-compare \
 	 -c -ggdb -O0 			\
 	-DTPM_POSIX			\
-	-D_POSIX_			\
+	-DIS_POSIX			\
 	-DTPM_NUVOTON			\
 	-I../utils			\
-	-I.
+	-I. \
+	-DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION
 
 LNFLAGS = -ggdb 			\
 	-DTPM_POSIX			\
@@ -57,7 +60,8 @@ LNFLAGS = -ggdb 			\
 	-lcrypto			\
 	-lpthread			\
 	-lrt				\
-	-I.
+	-I. \
+	-DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION $(LIB_FUZZING_ENGINE)
 
 all:	tpm_server
 
@@ -75,9 +79,14 @@ TcpServerPosix.o	: $(HEADERS)
 tpm_server:	$(OBJFILES)
 		$(CC) $(OBJFILES) $(LNFLAGS) -o tpm_server
 
+fuzz_tpm_server:	$(OBJFILES) fuzzer.o
+		$(CXX) $(CXXFLAGS) fuzzer.o $(OBJFILES) $(LNFLAGS) -o fuzz_tpm_server
+
 clean:		
-		rm -f *.o tpm_server *~
+		rm -f *.o tpm_server fuzz_tpm_server *~
 
 %.o:		%.c
 		$(CC) $(CCFLAGS) $< -o $@
 
+%.o:		%.cc
+		$(CXX) $(CXXFLAGS) $(CCFLAGS) $(LIB_FUZZING_ENGINE) $< -o $@
