summaryrefslogtreecommitdiff
path: root/source4/scripting/ejs
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r8280: - added irpc_connect() for connecting to a irpc server by nameAndrew Tridgell3-3/+87
- make the dcerpc pipe in rpc_connect() a talloc child of the ejs connection variable. That means when the connection variable goes out of scope, the connection is automatically closed. That makes for a more natural interface for closing connections in a scripting language (tpot, you may wish to use mprSetPtrChild() in your smb glue code too) (This used to be commit 1c170138a8e82cb42958b88b94a1d567ffa88a92)
2007-10-10r8276: fixed the remaining memory leaks in smbscript. We can now loop doingAndrew Tridgell10-124/+138
lots of rpc calls without memory usage increasing. (This used to be commit 9c885a7edb771486793eb287288158157b34e8f3)
2007-10-10r8273: fixed some memory leaks in smbscript. This required convertingAndrew Tridgell4-29/+16
file_load() to use talloc, which impacted quite a few bits of code, including our smb.conf processing. took the opportunity to remove the gloabls in params.c while doing this (This used to be commit b220756cb4f1d201ba3e771ca67e4bfae5eae748)
2007-10-10r8262: - simplify the dependency handling for ejs modulesAndrew Tridgell3-106/+63
- added config.mk entries for some more pipes - simplify the handling of ejs variables in the pidl code (This used to be commit 595304708db69229495c5739b5cacab732afd55f)
2007-10-10r8260: added an init based registration system for the generated ejs rpc ↵Andrew Tridgell2-18/+47
code, so adding a new pipe only involves changes to librpc/config.mk (This used to be commit 0e54fa446665f380e9c46723a6e2be5a08b8d51c)
2007-10-10r8256: - allow rpc calls from non-command line ejs contexts by creating a setAndrew Tridgell4-2/+34
of null credentials to use if cmdline_credentials is not setup - hide the length and size elements of a lsa_String from js scripts, so you can use a lsa_String just as an ordinary string without knowing its a structure. We won't do this with all structures, just a few core ones that are used often enough to warrant it. - make sure returned ldb arrays have a length property (This used to be commit 12d2092dd8668de41776132ccbcd634790c371a9)
2007-10-10r8254: fixed a valgrind error in the unix auth codeAndrew Tridgell1-1/+1
(This used to be commit ad1a4802d0634960646a6efe039fe8b62ead63dd)
2007-10-10r8238: - fixed handling of NULL pointers from ejsAndrew Tridgell3-0/+26
- added automatic creation of all constants in IDL as ejs variables (This used to be commit 9398b02e4ba51145e447668e321ca927f44c0078)
2007-10-10r8236: fixed support for arrays of structuresAndrew Tridgell1-4/+4
(This used to be commit cbe5289ac9a8adfe68704dc16a2b32ecbd15a4eb)
2007-10-10r8233: - added support for more base types in pidl ejsAndrew Tridgell4-5/+143
- added auto generation of a header with prototypes for public ejs functions - make public functions non-static - fixed allocation of fixed sized arrays - added 'noejs' flag indicating that a typedef will be handled manually by ejs - added manual functions for sid and GUID, so they show up as nice strings in ejs scripts This allows ejs to bring in samr, security, lsa and misc IDL functions (This used to be commit a8cb2dbdcc2871090a26f580f67db8f0636d1e7e)
2007-10-10r8230: prevent authentication dying on a NULL domainAndrew Tridgell1-1/+1
(This used to be commit e1cfc6d03244e04d59a96ef2abb5b48fcb157b0a)
2007-10-10r8220: added auto-generation of ENUM constants in ejs wrapper. So we can now ↵Andrew Tridgell5-1/+41
use the enum name instead of a integer in ejs scripts making rpc calls (This used to be commit a61cdee384c3002860016c1740276529493d318d)
2007-10-10r8216: - handle union pull in ejs pidl generationAndrew Tridgell1-0/+9
- added debugging calls for missing structure/union elements (This used to be commit f3ff48204cb8edeb9f42afbbefe13f7d49305506)
2007-10-10r8215: switched the pull side of the ejs generator over to the recursive ↵Andrew Tridgell2-30/+14
LEVELS based approach. This allows for much more complex structure mappings to be generated. (This used to be commit 49fc14d13291b02f7b16ab0eefe7bfb26f51b1c8)
2007-10-10r8213: I've started to understand the LEVELS stuff in pidl much better now,Andrew Tridgell2-29/+13
and have re-coded the push side of the ejs generator to use it properly. It ends up being very neat and small, and should handle much more complex structures (like arrays of pointers to unions etc). Also added push side support for unions. This should get more of the echo pipe working via ejs. (This used to be commit 2e306be1d83f722c259c4a63233e77d8bb1d5a72)
2007-10-10r8200: - added stub functions for union pull/pushAndrew Tridgell1-0/+3
- kill the js interpreter with an exception on internal errors (This used to be commit 5f062d71481a0aa2d8c89099abb2d171b789879e)
2007-10-10r8198: - handled push/pull of simple strings in ejsAndrew Tridgell3-9/+56
- improved the error handling, so the ejs wrappers don't just ignore a type they don't handle, instead an exception is issued saying what isn't handled (This used to be commit a77c2aa8606ad668f6a513211a1d9e7d6193d741)
2007-10-10r8195: - fixed handling of simple arrays. To keep the logic simple, I moved ↵Andrew Tridgell2-17/+17
to making all push functions taking a constant pointer to the type rather than having a different calling convention for scalars and pointers - fixed the setting of the 'length' element in arrays (This used to be commit 431b4b6888434daa8d1306f0e98bae7b2fe0fddd)
2007-10-10r8194: delete the old hand-written ejs code for echo_AddOne. This is nowAndrew Tridgell1-45/+0
autogenerated by pidl (This used to be commit 697b67ed572a458494fbf9172a341f6b621c84a3)
2007-10-10r8192: updated the glue code for the generated ejs functions from pidlAndrew Tridgell5-30/+155
only handles a small subset of all IDL files so far (This used to be commit 14b6436cc51f599572932bef72c49e0da4888073)
2007-10-10r8114: fixed the build after tpots ejs commit ....Andrew Tridgell1-0/+11
(This used to be commit 8649945cf9932a169190727f99e352ad68b0589f)
2007-10-10r8105: Add ejsrpc push/pull functions for uint16 and uint8.Tim Potter2-12/+55
(This used to be commit ee27943e215126a2048d1082437ef2597d913371)
2007-10-10r8073: a successful rpc call from ejs!Andrew Tridgell6-13/+292
the ejs_echo.c code is the stuff that needs to be auto-generated by pidl. It only does echo_AddOne so far. We also need a table for registering these calls. The code is hard-wired for echo_AddOne for now. (This used to be commit b1ea58ddc482c373783d16331dd07378010ba39a)
2007-10-10r8069: the beginnings of code to allow rpc calls to be made from ejsAndrew Tridgell5-15/+194
tpot, note that this shows how you can modify passed in MprVar variables in C call (This used to be commit a782541db3de6ca3b599a220265cf9e6cb0c4d7b)
2007-10-10r7928: Add rename, unlink and list commands.Tim Potter1-2/+139
list() returns a list of strings, but maybe it should be a list of objects with size, attrib, short name etc. (This used to be commit 696aa182d5a159c26b80829e1eae9a9894cb7986)
2007-10-10r7924: Add mkdir() and rmdir() functions.Tim Potter1-2/+81
Write a macro to check tree handle parameters. (This used to be commit 043feb131f1877886a9ab7e25ada5e54692f6487)
2007-10-10r7922: Comment out complicated connect/session/tree API for the moment. ReplaceTim Potter1-2/+83
with tree_connect() and tree_disconnect() functions. (This used to be commit 9ed763f7fa9e6138d8c1da29c1e0adf2e18cb5e1)
2007-10-10r7633: this patch started as an attempt to make the dcerpc code use a givenAndrew Tridgell2-2/+5
event_context for the socket_connect() call, so that when things that use dcerpc are running alongside anything else it doesn't block the whole process during a connect. Then of course I needed to change any code that created a dcerpc connection (such as the auth code) to also take an event context, and anything that called that and so on .... thus the size of the patch. There were 3 places where I punted: - abartlet wanted me to add a gensec_set_event_context() call instead of adding it to the gensec init calls. Andrew, my apologies for not doing this. I didn't do it as adding a new parameter allowed me to catch all the callers with the compiler. Now that its done, we could go back and use gensec_set_event_context() - the ejs code calls auth initialisation, which means it should pass in the event context from the web server. I punted on that. Needs fixing. - I used a NULL event context in dcom_get_pipe(). This is equivalent to what we did already, but should be fixed to use a callers event context. Jelmer, can you think of a clean way to do that? I also cleaned up a couple of things: - libnet_context_destroy() makes no sense. I removed it. - removed some unused vars in various places (This used to be commit 3a3025485bdb8f600ab528c0b4b4eef0c65e3fc9)
2007-10-10r7570: Add tree, session and socket disconnect ejs functions.Tim Potter1-8/+114
(This used to be commit 63577628b0ee7e6b33053484190189e99cb56a5b)
2007-10-10r7530: Simply calling convention of lp_load().Andrew Bartlett1-1/+1
This always loads all the services, as we now don't have an easy way to split out smbd. Andrew Bartlett (This used to be commit 990e061939c76b559c4f5914c5fc6ca1b13e19dd)
2007-10-10r7505: Add more argument forms for session_setup().Tim Potter1-1/+34
Throw an exception if tree connect fails. (This used to be commit 5b67f2c3d91487fec38b300b4f71792cd9164a78)
2007-10-10r7501: Fix credential initialisation in ejs session setup. Implement fourTim Potter1-7/+127
arg and anonymous version of command. Implement ejs tconx. (This used to be commit 3b7df1037de813d93b284d3b4438b083e668e29f)
2007-10-10r7500: Initialise module subsystems.Tim Potter1-0/+2
(This used to be commit 564dfe14d00e80a0d373ab0fc17803ffaac0892e)
2007-10-10r7477: Add MPR_TYPE_PTR to ejs_typeof().Tim Potter1-1/+2
(This used to be commit 8574f64ca2bda864f472067ae594285b6f5dc957)
2007-10-10r7461: this is the start of some code for mapping IDL onto ejs. This is handAndrew Tridgell1-0/+197
written code, and it doesn't work or even compile yet. I am committing it to make it easier to discuss the approach with jelmer and tpot. The intention is that this code will eventually end up being mostly auto-generated (with the utility functions split out, just like librpc/ndr/*.c) (This used to be commit 30e876e9c2ba73a3bc26e7708110e00a8552a75e)
2007-10-10r7457: Return an ejs C pointer object from the ejs connect() function.Tim Potter1-16/+62
Add a session_setup() function that does an anonymous session setup. Will add credential passing later. (This used to be commit 832332de5db7102085e7c44d4256fb199d8123eb)
2007-10-10r7422: Create a ejs object to wrap a smbcli_transport pointer.Tim Potter1-0/+18
(This used to be commit a55e40651d06f416871ccbe04ad3b7d25444d645)
2007-10-10r7351: Start of ejs smb client library. I need to figure out a nice API hereTim Potter2-0/+90
that doesn't expose too much of the cifs protocol but still allows people to do neat things. Also, talloc lifetimes need to be thought about properly. (This used to be commit 8062e808ef5102b96e1b3de046c858e4a69b4d82)
2007-10-10r7350: Remove unused label.Tim Potter1-1/+0
(This used to be commit ada004595760605134eb741da9c549521938c2ce)
2007-10-10r7268: allocate the strings to avoid them disappearing under our feetSimo Sorce1-5/+5
(This used to be commit ddd7454cb3e2445fd32682b380be89c70f8a22cb)
2007-10-10r7267: REMOTE_HOST is a better choiceSimo Sorce1-34/+65
(This used to be commit 41bae267e29614d300ec2505c927ab17ccbbe64f)
2007-10-10r7266: Split the different types of js function defines into separate files,Tim Potter5-243/+365
as there are going to be a lot more of them. (This used to be commit b086768589ee27de6616945bbea42b18b40d25d5)
2007-10-10r7263: Exit smbscript with the intepreter return value (defaults to 0).Tim Potter1-10/+13
Change the exit value for an exception, usage error and other non-js errors to 127 which is kinda like the return value for the system(3) function. (This used to be commit c77a232b1152a27e2d8ffb719aefba6c6b2ba6df)
2007-10-10r7262: Add a length property to ARGV array.Tim Potter1-0/+1
(This used to be commit 4b775c619b7abed52d158ab70505320753a0c9cb)
2007-10-10r7261: Pass by reference is done in js via MPR_TYPE_OBJECT. Update argumentTim Potter1-2/+7
parsing and example for resolveName(). (This used to be commit 1a4a54931733ebfa743401a184fe460c044427b4)
2007-10-10r7255: Change syntax of resolveName() js function to be more like theTim Potter1-26/+28
resolve_name() C function. I can't figure out how to return variables by reference though. Writing to argv[] doesn't seem to work. (This used to be commit aef99859f28570b60f4fefe2981160269f6eb02a)
2007-10-10r7254: Add a mprWERROR() function with the same attributes as mprNTSTATUS.Tim Potter1-0/+24
(This used to be commit 2fa6f7bb2b8390f6486f6531212b556e98a6c528)
2007-10-10r7238: Add pam auth support in swatSimo Sorce1-0/+82
(This used to be commit 8a98572a3b5dba58181dc402dbebae5452656012)
2007-10-10r7225: Create a MprVar object from a NTSTATUS, e.g:Tim Potter1-0/+23
res: { is_err: true, is_ok: false, errstr: "NT_STATUS_IO_TIMEOUT", v: -1073741643 } (This used to be commit d81d5f8317ca82a08e6fc38ef7313fad2e631281)
2007-10-10r7223: Advance script past interpreter line.Tim Potter1-0/+11
(This used to be commit 31b9fadbed656f666f587a9dcb5a7627a2d388aa)