diff -purN -x CVS -x '*~' -x '.*' -x 'obj-*' srtp-win/Makefile.in srtp/Makefile.in
--- srtp-win/Makefile.in	2007-06-15 14:17:39.000000000 -0400
+++ srtp/Makefile.in	2009-04-22 18:25:43.000000000 -0400
@@ -26,7 +26,7 @@ runtest: build_table_apps test
 	test/roc_driver$(EXE) -v >/dev/null
 	test/replay_driver$(EXE) -v >/dev/null
 	test/dtls_srtp_driver$(EXE) >/dev/null
-	cd test; ./rtpw_test.sh >/dev/null	
+	cd test; $(abspath $(srcdir))/test/rtpw_test.sh >/dev/null	
 	@echo "libsrtp test applications passed."
 	$(MAKE) -C crypto runtest
 
@@ -189,18 +189,20 @@ libsrtpdoc:
 .PHONY: clean superclean install
 
 install:
-	@if [ -d $(DESTDIR)$(includedir)/srtp ]; then \
+	@if [ -r $(DESTDIR)$(includedir)/srtp/srtp.h ]; then \
 	   echo "you should run 'make uninstall' first"; exit 1;  \
 	fi
 	$(INSTALL) -d $(DESTDIR)$(includedir)/srtp
 	$(INSTALL) -d $(DESTDIR)$(libdir)
-	cp include/*.h $(DESTDIR)$(includedir)/srtp  
-	cp crypto/include/*.h $(DESTDIR)$(includedir)/srtp
+	cp $(srcdir)/include/*.h $(DESTDIR)$(includedir)/srtp  
+	cp $(srcdir)/crypto/include/*.h $(DESTDIR)$(includedir)/srtp
+	if [ "$(srcdir)" != "." ]; then cp crypto/include/*.h $(DESTDIR)$(includedir)/srtp; fi
 	if [ -f libsrtp.a ]; then cp libsrtp.a $(DESTDIR)$(libdir)/; fi
 
 uninstall:
-	rm -rf $(DESTDIR)$(includedir)/srtp
-	rm -rf $(DESTDIR)$(libdir)/libsrtp.a
+	rm -f $(DESTDIR)$(includedir)/srtp/*.h
+	rm -f $(DESTDIR)$(libdir)/libsrtp.a
+	-rmdir $(DESTDIR)$(includedir)/srtp
 
 clean:
 	rm -rf $(cryptobj) $(srtpobj) $(cryptomath) TAGS \
diff -purN -x CVS -x '*~' -x '.*' -x 'obj-*' srtp-win/srtp/ekt.c srtp/srtp/ekt.c
--- srtp-win/srtp/ekt.c	2009-04-22 18:47:06.000000000 -0400
+++ srtp/srtp/ekt.c	2009-04-22 18:50:51.000000000 -0400
@@ -131,6 +131,9 @@ ekt_alloc(ekt_stream_t *stream_data, ekt
     return err_status_ok;
   }
 
+  /* TODO */
+  *stream_data = NULL;
+
   return err_status_ok;
 }
 
diff -purN -x CVS -x '*~' -x '.*' -x 'obj-*' srtp-win/test/dtls_srtp_driver.c srtp/test/dtls_srtp_driver.c
--- srtp-win/test/dtls_srtp_driver.c	2006-07-17 16:41:22.000000000 -0400
+++ srtp/test/dtls_srtp_driver.c	2009-04-23 15:50:26.000000000 -0400
@@ -183,6 +183,7 @@ test_dtls_srtp() {
   err = crypto_policy_set_from_profile_for_rtcp(&policy.rtcp, profile);
   if (err) return err;
   policy.ssrc.type  = ssrc_any_inbound;
+  policy.ekt = NULL;
   policy.next = NULL;
     
   err = srtp_add_stream(s, &policy);
diff -purN -x CVS -x '*~' -x '.*' -x 'obj-*' srtp-win/test/rtpw_test.sh srtp/test/rtpw_test.sh
--- srtp-win/test/rtpw_test.sh	2006-06-13 11:17:57.000000000 -0400
+++ srtp/test/rtpw_test.sh	2009-04-22 18:30:27.000000000 -0400
@@ -4,7 +4,7 @@
 # 
 # tests the rtpw sender and receiver functions
 
-RTPW=rtpw
+RTPW=./rtpw
 DEST_PORT=9999
 DURATION=3
 
@@ -18,7 +18,7 @@ ARGS="-k $key -ae"
 # they are killed, those processes will linger.  Re-running the script
 # will get rid of them.
 
-killall rtpw 2&>/dev/null
+killall rtpw 2>/dev/null
 
 if test -x $RTPW; then
 
diff -purN -x CVS -x '*~' -x '.*' -x 'obj-*' srtp-win/test/srtp_driver.c srtp/test/srtp_driver.c
--- srtp-win/test/srtp_driver.c	2007-06-15 14:17:40.000000000 -0400
+++ srtp/test/srtp_driver.c	2009-04-22 18:20:27.000000000 -0400
@@ -153,7 +153,7 @@ main (int argc, char *argv[]) {
   if (sizeof(srtp_hdr_t) != 12) {
      printf("error: srtp_hdr_t has incorrect size"
 	    "(size is %ld bytes, expected 12)\n", 
-	    sizeof(srtp_hdr_t));
+	    (long)sizeof(srtp_hdr_t));
     exit(1);
   }