summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/scripting/ejs/ejsrpc.c26
-rw-r--r--source4/scripting/ejs/ejsrpc.h9
2 files changed, 34 insertions, 1 deletions
diff --git a/source4/scripting/ejs/ejsrpc.c b/source4/scripting/ejs/ejsrpc.c
index 5e81e21e4f..f3abc3c34a 100644
--- a/source4/scripting/ejs/ejsrpc.c
+++ b/source4/scripting/ejs/ejsrpc.c
@@ -292,3 +292,29 @@ NTSTATUS ejs_push_lsa_String(struct ejs_rpc *ejs,
return ejs_push_string(ejs, v, name, r->string);
}
+NTSTATUS ejs_pull_DATA_BLOB(struct ejs_rpc *ejs,
+ struct MprVar *v, const char *name, DATA_BLOB *r)
+{
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS ejs_push_DATA_BLOB(struct ejs_rpc *ejs,
+ struct MprVar *v, const char *name,
+ const DATA_BLOB *r)
+{
+ return NT_STATUS_NOT_IMPLEMENTED;
+}
+
+NTSTATUS ejs_pull_BOOL(struct ejs_rpc *ejs,
+ struct MprVar *v, const char *name, BOOL *r)
+{
+ NDR_CHECK(mprGetVar(&v, name));
+ *r = mprVarToBool(v);
+ return NT_STATUS_OK;
+}
+
+NTSTATUS ejs_push_BOOL(struct ejs_rpc *ejs,
+ struct MprVar *v, const char *name, const BOOL *r)
+{
+ return mprSetVar(v, name, mprCreateBoolVar(*r));
+}
diff --git a/source4/scripting/ejs/ejsrpc.h b/source4/scripting/ejs/ejsrpc.h
index dbd147fe1d..8bd735c739 100644
--- a/source4/scripting/ejs/ejsrpc.h
+++ b/source4/scripting/ejs/ejsrpc.h
@@ -95,7 +95,14 @@ NTSTATUS ejs_push_dom_sid(struct ejs_rpc *ejs,
struct MprVar *v, const char *name, const struct dom_sid *r);
NTSTATUS ejs_push_null(struct ejs_rpc *ejs, struct MprVar *v, const char *name);
BOOL ejs_pull_null(struct ejs_rpc *ejs, struct MprVar *v, const char *name);
-
+NTSTATUS ejs_pull_DATA_BLOB(struct ejs_rpc *ejs,
+ struct MprVar *v, const char *name, DATA_BLOB *r);
+NTSTATUS ejs_push_DATA_BLOB(struct ejs_rpc *ejs,
+ struct MprVar *v, const char *name, const DATA_BLOB *r);
+NTSTATUS ejs_pull_BOOL(struct ejs_rpc *ejs,
+ struct MprVar *v, const char *name, BOOL *r);
+NTSTATUS ejs_push_BOOL(struct ejs_rpc *ejs,
+ struct MprVar *v, const char *name, const BOOL *r);
#define EJS_ALLOC_SIZE(ejs, s, size) do { \
(s) = talloc_size(ejs, size); \