r12516: Fix drsuapi and netlogon javascript bindings
authorJelmer Vernooij <jelmer@samba.org>
Tue, 27 Dec 2005 18:15:18 +0000 (18:15 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:47:51 +0000 (13:47 -0500)
(This used to be commit b46eeba9fcb059ef83743de8be7dab26f9ef21b2)

source4/librpc/config.mk
source4/scripting/ejs/ejsrpc.c
source4/scripting/ejs/ejsrpc.h

index 5f07723ce3e4e19337271cea9dd78a88199ae7e6..70159ecb201cd4ca1c28718995f0eebb31cc3941 100644 (file)
@@ -593,7 +593,6 @@ NOPROTO = YES
 INIT_FUNCTION = ejs_init_drsuapi
 OBJ_FILES = gen_ndr/ndr_drsuapi_ejs.o
 SUBSYSTEM = SMBCALLS
-ENABLE = NO
 REQUIRED_SUBSYSTEMS = LIBRPC NDR_DRSUAPI
 NOPROTO = YES
 
@@ -644,7 +643,6 @@ NOPROTO = YES
 INIT_FUNCTION = ejs_init_netlogon
 OBJ_FILES = gen_ndr/ndr_netlogon_ejs.o
 SUBSYSTEM = SMBCALLS
-ENABLE = NO
 REQUIRED_SUBSYSTEMS = LIBRPC NDR_NETLOGON
 NOPROTO = YES
 
index a0fee2efe7b4965b6660cc587d164dc6e0076c57..c84f9eb6fb3f92e61f5f9fb8d56529c0e19f3021 100644 (file)
@@ -133,6 +133,23 @@ NTSTATUS ejs_push_int32(struct ejs_rpc *ejs,
        return mprSetVar(v, name, mprCreateIntegerVar(*r));
 }
 
+/*
+  pull a uint32 from a mpr variable to a C element
+*/
+NTSTATUS ejs_pull_time_t(struct ejs_rpc *ejs, 
+                        struct MprVar *v, const char *name, time_t *r)
+{
+       NDR_CHECK(mprGetVar(&v, name));
+       *r = mprVarToInteger(v);
+       return NT_STATUS_OK;
+}
+
+NTSTATUS ejs_push_time_t(struct ejs_rpc *ejs, 
+                        struct MprVar *v, const char *name, const time_t *r)
+{
+       return mprSetVar(v, name, mprCreateIntegerVar(*r));
+}
+
 NTSTATUS ejs_pull_hyper(struct ejs_rpc *ejs, 
                        struct MprVar *v, const char *name, uint64_t *r)
 {
index d710ff375c9b528b3a8936a8b44f79471e99a835..80674fc43bdc6e8d09a9b2adfe328bff29213524 100644 (file)
@@ -78,6 +78,10 @@ NTSTATUS ejs_pull_NTTIME(struct ejs_rpc *ejs,
                        struct MprVar *v, const char *name, uint64_t *r);
 NTSTATUS ejs_push_NTTIME(struct ejs_rpc *ejs, 
                        struct MprVar *v, const char *name, const uint64_t *r);
+NTSTATUS ejs_pull_time_t(struct ejs_rpc *ejs, 
+                        struct MprVar *v, const char *name, time_t *r);
+NTSTATUS ejs_push_time_t(struct ejs_rpc *ejs, 
+                       struct MprVar *v, const char *name, const time_t *r);
 NTSTATUS ejs_pull_enum(struct ejs_rpc *ejs, 
                       struct MprVar *v, const char *name, unsigned *r);
 NTSTATUS ejs_push_enum(struct ejs_rpc *ejs, 
@@ -149,6 +153,10 @@ NTSTATUS ejs_push_winreg_String(struct ejs_rpc *ejs,
 /* some types are equivalent for ejs */
 #define ejs_pull_dom_sid2 ejs_pull_dom_sid
 #define ejs_push_dom_sid2 ejs_push_dom_sid
+#define ejs_pull_dom_sid28 ejs_pull_dom_sid
+#define ejs_push_dom_sid28 ejs_push_dom_sid
 #define ejs_pull_NTTIME_hyper ejs_pull_NTTIME
 #define ejs_push_NTTIME_hyper ejs_push_NTTIME
+#define ejs_pull_NTTIME_1sec ejs_pull_NTTIME
+#define ejs_push_NTTIME_1sec ejs_push_NTTIME