diff -Naur ndis.1.3.0-release/amd64/Makefile ndis.1.3.0-driverver/amd64/Makefile
--- ndis.1.3.0-release/amd64/Makefile	2013-06-17 12:54:10.000000000 +0200
+++ ndis.1.3.0-driverver/amd64/Makefile	2013-04-28 16:10:26.000000000 +0200
@@ -158,6 +158,7 @@
 	@ echo "====="
 	@ echo "=== Info about currently built NDIS modules:"
 	file $(NDIS) $(NDISAPI)
+	strings bcmndis | grep DriverVer || true
 	ls -la $(NDIS) $(NDISAPI)
 	@ echo "=== Info about currently loaded NDIS modules (may be not same as built, may be not loaded):"
 	modinfo | egrep "$(NDISAPI)|$(NDIS)" || true
diff -Naur ndis.1.3.0-release/Changelog ndis.1.3.0-driverver/Changelog
--- ndis.1.3.0-release/Changelog	2013-06-17 12:53:57.000000000 +0200
+++ ndis.1.3.0-driverver/Changelog	2013-04-28 16:10:01.000000000 +0200
@@ -20,6 +17,9 @@
   that they are not automatically loaded by the OS itself)
 - Moved an empty but required restore() function from C to ASM so that it is
   not optimized out (JPA's idea, good hit)
+- Bake the original driver date and version (if available) into the ndis
+  wrapper module as part of its version. The string may be too long for
+  modinfo, but can be extracted with "strings bcmndis | grep DriverVer".
 
 ================ ndis.1.3.0.rc2, Apr 23, 2013 (Jean-Pierre Andre)
 - Implemented a mutex in KeAcquire/KeReleaseSpinLockFromDpcLevel
diff -Naur ndis.1.3.0-release/if_ndis.c ndis.1.3.0-driverver/if_ndis.c
--- ndis.1.3.0-release/if_ndis.c	2013-06-17 12:54:10.000000000 +0200
+++ ndis.1.3.0-driverver/if_ndis.c	2013-04-28 14:39:45.000000000 +0200
@@ -153,7 +153,11 @@
 
 static struct modldrv ndis_modldrv = {
 	&mod_driverops,		/* Type of module.  This one is a driver */
-	"Ndiswrapper 1.3.0",	/* short description */
+	"Ndiswrapper 1.3.0"
+#ifdef NDIS_DRIVER_VER
+	", DriverVer=" NDIS_DRIVER_VER
+#endif
+	,	/* short description */
 	&ndis_dev_ops		/* driver specific ops */
 };
 
@@ -535,11 +542,13 @@
 	int e;
 	extern mac_callbacks_t ndis_m_callbacks;
 
-	cmn_err(CE_CONT,"bcmndis %s at 0x%lx ndis_m_callbacks at 0x%lx\n",
+	cmn_err(CE_CONT,"%s %s at 0x%lx ndis_m_callbacks at 0x%lx\n",
+			NDIS_DRIVER_NAME,
 			__DATE__, (long)drv_data, (long)&ndis_m_callbacks);
 	if (layout_check()) {
-		cmn_err(CE_NOTE,"%s is badly compiled and fails layout checks,"
-			" cannot run\n", NDIS_DRIVER_NAME);
+		cmn_err(CE_NOTE,
+		    "%s is compiled badly, layout_check() failed, cannot safely run\n",
+		    NDIS_DRIVER_NAME);
 		return (ENOEXEC);
 	}
 
diff -Naur ndis.1.3.0-release/inf.c ndis.1.3.0-driverver/inf.c
--- ndis.1.3.0-release/inf.c	2013-06-17 12:54:10.000000000 +0200
+++ ndis.1.3.0-driverver/inf.c	2013-04-28 14:37:35.000000000 +0200
@@ -279,6 +279,18 @@
 	char xpsec[256];
 	int found = 0;
 
+	/* Find driver version name */
+	manf = find_assign("version", "DriverVer");
+	if (manf != NULL) {
+	    if (manf->vals[0] != NULL) {
+		fprintf (ofp, "#define NDIS_DRIVER_VER\t\"%s", manf->vals[0]);
+	    }
+	    if (manf->vals[1] != NULL) {
+		fprintf (ofp, ", %s", manf->vals[1]);
+	    }
+	    fprintf (ofp, "\"\n\n", manf->vals[1]);
+	}
+
 	/* Find manufacturer name */
 	manf = find_assign("Manufacturer", NULL);
 
