svn commit: samba r9089 - in branches/SAMBA_4_0/source/script: .
tpot at samba.org
tpot at samba.org
Fri Aug 5 01:04:46 GMT 2005
Author: tpot
Date: 2005-08-05 01:04:45 +0000 (Fri, 05 Aug 2005)
New Revision: 9089
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=9089
Log:
Start generating module init and top level ejs functions for smb_interfaces.
Modified:
branches/SAMBA_4_0/source/script/build_smb_interfaces.pl
Changeset:
Modified: branches/SAMBA_4_0/source/script/build_smb_interfaces.pl
===================================================================
--- branches/SAMBA_4_0/source/script/build_smb_interfaces.pl 2005-08-05 00:59:24 UTC (rev 9088)
+++ branches/SAMBA_4_0/source/script/build_smb_interfaces.pl 2005-08-05 01:04:45 UTC (rev 9089)
@@ -46,13 +46,16 @@
print FILE "NTSTATUS ejs_push_$name(struct ejs_rpc *ejs, struct MprVar *v, const char *name, const uint32_t *r)\n";
print FILE "{\n";
- print FILE "\tNDR_CHECK(ejs_push_struct_start(ejs, &v, name));\n";
+ print FILE "\tNDR_CHECK(ejs_push_struct_start(ejs, &v, \"output\"));\n";
print FILE "\n\treturn NT_STATUS_OK;\n";
print FILE "}\n\n";
print FILE "NTSTATUS ejs_pull_$name(struct ejs_rpc *ejs, struct MprVar *v, const char *name, const uint32_t *r)\n";
print FILE "{\n";
+
+ print FILE "\tNDR_CHECK(ejs_pull_struct_start(ejs, &v, \"input\"));\n";
+
print FILE "\treturn NT_STATUS_OK;\n";
print FILE "}\n\n";
}
@@ -87,7 +90,30 @@
# Top level functions
foreach my $x (@{$header}) {
- pushpull_for($x);
+ next, if $x->{STRUCT_NAME} eq "";
+ print FILE "static int ejs_$x->{STRUCT_NAME}(int eid, int argc, struct MprVar **argv)\n";
+ print FILE "{\n";
+ print FILE "\tejsSetErrorMsg(eid, \"Not implemented\");\n";
+ print FILE "\treturn -1;\n";
+ print FILE "}\n\n";
}
+# Module initialisation
+
+print FILE "static int ejs_${basename}_init(int eid, int argc, struct MprVar **argv)\n";
+print FILE "{\n";
+print FILE "\tstruct MprVar *obj = mprInitObject(eid, \"${basename}\", argc, argtv);\n\n";
+
+foreach my $x (@{$header}) {
+ next, if $x->{STRUCT_NAME} eq "";
+ print FILE "\tmprSetCFunction(obj, \"$x->{STRUCT_NAME}\", ejs_$x->{STRUCT_NAME});\n";
+}
+
+print FILE "}\n\n";
+
+print FILE "NTSTATUS ejs_init_${basename}(void)\n";
+print FILE "{\n";
+print FILE "\treturn smbcalls_register_ejs(\"${basename}_init\", ejs_${basename}_init);\n";
+print FILE "}\n";
+
close(FILE);
More information about the samba-cvs
mailing list