Steve Grubb 9fd72a
diff -urp aide-0.13.1.orig/doc/aide.1.in aide-0.13.1/doc/aide.1.in
Steve Grubb 9fd72a
--- aide-0.13.1.orig/doc/aide.1.in	2009-12-01 12:23:10.000000000 -0500
Steve Grubb 9fd72a
+++ aide-0.13.1/doc/aide.1.in	2009-12-01 12:28:14.000000000 -0500
Steve Grubb 9fd72a
@@ -67,6 +67,7 @@ conditions:
Steve Grubb 9fd72a
 .IP "16 Unimplemented function error"
Steve Grubb 9fd72a
 .IP "17 Invalid configureline error"
Steve Grubb 9fd72a
 .IP "18 IO error"
Steve Grubb 9fd72a
+.IP "19 Version mismatch error"
Steve Grubb 9fd72a
 .PP
Steve Grubb 9fd72a
 .SH NOTES
Steve Grubb 9fd72a
 Please note that due to mmap issues, aide cannot be terminated with
Steve Grubb 9fd72a
diff -urp aide-0.13.1.orig/include/report.h aide-0.13.1/include/report.h
Steve Grubb 9fd72a
--- aide-0.13.1.orig/include/report.h	2009-12-01 12:23:10.000000000 -0500
Steve Grubb 9fd72a
+++ aide-0.13.1/include/report.h	2009-12-01 12:27:43.000000000 -0500
Steve Grubb 9fd72a
@@ -31,6 +31,7 @@
Steve Grubb 9fd72a
 #define UNIMPLEMENTED_FUNCTION_ERROR 16
Steve Grubb 9fd72a
 #define INVALID_CONFIGURELINE_ERROR 17
Steve Grubb 9fd72a
 #define IO_ERROR 18
Steve Grubb 9fd72a
+#define VERSION_MISMATCH_ERROR 19
Steve Grubb 9fd72a
 
Steve Grubb 9fd72a
 /* Errorcodes */
Steve Grubb 9fd72a
 #define HASH_ALGO_ERROR 30
Steve Grubb 9fd72a
diff -urp aide-0.13.1.orig/src/md.c aide-0.13.1/src/md.c
Steve Grubb 9fd72a
--- aide-0.13.1.orig/src/md.c	2009-12-01 12:23:10.000000000 -0500
Steve Grubb 9fd72a
+++ aide-0.13.1/src/md.c	2009-12-01 12:27:04.000000000 -0500
Steve Grubb 9fd72a
@@ -201,6 +201,15 @@ int init_md(struct md_container* md) {
Steve Grubb 9fd72a
 #endif 
Steve Grubb 9fd72a
 #ifdef WITH_GCRYPT
Steve Grubb 9fd72a
   error(255,"Gcrypt library initialization\n");
Steve Grubb 9fd72a
+  	/* 
Steve Grubb 9fd72a
+  	  Initialize libgcrypt as per
Steve Grubb 9fd72a
+  	  http://www.gnupg.org/documentation/manuals/gcrypt/Initializing-the-library.html
Steve Grubb 9fd72a
+  	 */
Steve Grubb 9fd72a
+  	if(!gcry_check_version(GCRYPT_VERSION)) {
Steve Grubb 9fd72a
+		error(0,"libgcrypt version mismatch\n");
Steve Grubb 9fd72a
+		exit(VERSION_MISMATCH_ERROR);
Steve Grubb 9fd72a
+	}
Steve Grubb 9fd72a
+	gcry_control(GCRYCTL_INITIALIZATION_FINISHED, 0);
Steve Grubb 9fd72a
 	if(gcry_md_open(&md->mdh,0,0)!=GPG_ERR_NO_ERROR){
Steve Grubb 9fd72a
 		error(0,"gcrypt_md_open failed\n");
Steve Grubb 9fd72a
 		exit(IO_ERROR);