summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimo Sorce <idra@samba.org>2006-02-06 18:29:57 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:51:50 -0500
commitb56282dec786683055f65f25ec419113bd7aa297 (patch)
tree271694df8b27cb20cf3aa5d2069e230c6f7c942a
parent52f01e20815120f8096a7d268db96a236b898127 (diff)
downloadsamba-b56282dec786683055f65f25ec419113bd7aa297.tar.gz
samba-b56282dec786683055f65f25ec419113bd7aa297.tar.bz2
samba-b56282dec786683055f65f25ec419113bd7aa297.zip
r13369: let's have a way to show the samba4 version through ejs
and use it in provisioning to fullfill rfc 3045 requirements (This used to be commit 3fb9571a76481560304a826fc945983d52123299)
-rw-r--r--source4/scripting/ejs/smbcalls.c11
-rw-r--r--source4/scripting/libjs/provision.js2
-rw-r--r--source4/setup/provision_init.ldif2
3 files changed, 14 insertions, 1 deletions
diff --git a/source4/scripting/ejs/smbcalls.c b/source4/scripting/ejs/smbcalls.c
index 3e96f8bef2..b63687b304 100644
--- a/source4/scripting/ejs/smbcalls.c
+++ b/source4/scripting/ejs/smbcalls.c
@@ -25,6 +25,7 @@
#include "lib/appweb/ejs/ejs.h"
#include "scripting/ejs/smbcalls.h"
#include "smb_build.h"
+#include "version.h"
/*
return the type of a variable
@@ -111,6 +112,15 @@ static int ejs_libinclude(int eid, int argc, char **argv)
return 0;
}
+/*
+ return the current version
+*/
+static int ejs_version(MprVarHandle eid, int argc, struct MprVar **argv)
+{
+ mpr_ReturnString(eid, SAMBA_VERSION_STRING);
+ return 0;
+}
+
/*
setup C functions that be called from ejs
@@ -146,5 +156,6 @@ void smb_setup_ejs_functions(void)
ejsDefineCFunction(-1, "typeof", ejs_typeof, NULL, MPR_VAR_SCRIPT_HANDLE);
ejsDefineStringCFunction(-1, "libinclude", ejs_libinclude, NULL, MPR_VAR_SCRIPT_HANDLE);
+ ejsDefineCFunction(-1, "version", ejs_version, NULL, MPR_VAR_SCRIPT_HANDLE);
}
diff --git a/source4/scripting/libjs/provision.js b/source4/scripting/libjs/provision.js
index fe112eeb24..84ed69231b 100644
--- a/source4/scripting/libjs/provision.js
+++ b/source4/scripting/libjs/provision.js
@@ -150,7 +150,6 @@ function hostname()
return s[0];
}
-
/* the ldb is in bad shape, possibly due to being built from an
incompatible previous version of the code, so delete it
completely */
@@ -452,6 +451,7 @@ function provision_guess()
assert(subobj.DOMAIN);
assert(subobj.HOSTNAME);
+ subobj.VERSION = version();
subobj.HOSTIP = hostip();
subobj.DOMAINGUID = randguid();
subobj.DOMAINSID = randsid();
diff --git a/source4/setup/provision_init.ldif b/source4/setup/provision_init.ldif
index a54c5632ca..a029709d8c 100644
--- a/source4/setup/provision_init.ldif
+++ b/source4/setup/provision_init.ldif
@@ -74,6 +74,8 @@ domainFunctionality: 0
forestFunctionality: 0
domainControllerFunctionality: 2
isSynchronized: TRUE
+vendorName: Samba Team (http://samba.org)
+vendorVersion: ${VERSION}
#Add modules to the list to activate them by default
#beware often order is important