- Added runtime and compiletime version information

diff --git a/library/CMakeLists.txt b/library/CMakeLists.txt
index c545d56..9e84ca6 100644
--- a/library/CMakeLists.txt
+++ b/library/CMakeLists.txt
@@ -22,6 +22,7 @@
      ssl_srv.c 
      ssl_tls.c
      timing.c
+     version.c
      x509parse.c
      xtea.c
 )
diff --git a/library/Makefile b/library/Makefile
index 205c6a2..e27f2bf 100644
--- a/library/Makefile
+++ b/library/Makefile
@@ -25,7 +25,7 @@
 	sha1.o		sha2.o		sha4.o		\
 	ssl_cli.o	ssl_srv.o	ssl_tls.o	\
 	timing.o	x509parse.o	xtea.o		\
-	camellia.o
+	camellia.o  version.o
 
 .SILENT:
 
diff --git a/library/version.c b/library/version.c
new file mode 100644
index 0000000..a43e488
--- /dev/null
+++ b/library/version.c
@@ -0,0 +1,46 @@
+/*
+ *  Version information
+ *
+ *  Copyright (C) 2006-2010, Paul Bakker <polarssl_maintainer at polarssl.org>
+ *  All rights reserved.
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License along
+ *  with this program; if not, write to the Free Software Foundation, Inc.,
+ *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#include "polarssl/config.h"
+
+#if defined(POLARSSL_VERSION_C)
+
+#include "polarssl/version.h"
+#include <string.h>
+
+const char version[] = POLARSSL_VERSION_STRING;
+
+unsigned int version_get_number()
+{
+    return POLARSSL_VERSION_NUMBER;
+}
+
+void version_get_string( char *string )
+{
+    memcpy( string, POLARSSL_VERSION_STRING, sizeof( POLARSSL_VERSION_STRING ) );
+}
+
+void version_get_string_full( char *string )
+{
+    memcpy( string, POLARSSL_VERSION_STRING_FULL, sizeof( POLARSSL_VERSION_STRING_FULL ) );
+}
+
+#endif /* POLARSSL_VERSION_C */