Age | Commit message (Collapse) | Author | Files | Lines |
|
- 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)
|
|
lots of rpc calls without memory usage increasing.
(This used to be commit 9c885a7edb771486793eb287288158157b34e8f3)
|
|
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)
|
|
- added config.mk entries for some more pipes
- simplify the handling of ejs variables in the pidl code
(This used to be commit 595304708db69229495c5739b5cacab732afd55f)
|
|
code, so
adding a new pipe only involves changes to librpc/config.mk
(This used to be commit 0e54fa446665f380e9c46723a6e2be5a08b8d51c)
|
|
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)
|
|
(This used to be commit ad1a4802d0634960646a6efe039fe8b62ead63dd)
|
|
- added automatic creation of all constants in IDL as ejs variables
(This used to be commit 9398b02e4ba51145e447668e321ca927f44c0078)
|
|
(This used to be commit cbe5289ac9a8adfe68704dc16a2b32ecbd15a4eb)
|
|
- 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)
|
|
(This used to be commit e1cfc6d03244e04d59a96ef2abb5b48fcb157b0a)
|
|
use the enum name
instead of a integer in ejs scripts making rpc calls
(This used to be commit a61cdee384c3002860016c1740276529493d318d)
|
|
- added debugging calls for missing structure/union elements
(This used to be commit f3ff48204cb8edeb9f42afbbefe13f7d49305506)
|
|
LEVELS based approach.
This allows for much more complex structure mappings to be generated.
(This used to be commit 49fc14d13291b02f7b16ab0eefe7bfb26f51b1c8)
|
|
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)
|
|
- kill the js interpreter with an exception on internal errors
(This used to be commit 5f062d71481a0aa2d8c89099abb2d171b789879e)
|
|
- 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)
|
|
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)
|
|
autogenerated by pidl
(This used to be commit 697b67ed572a458494fbf9172a341f6b621c84a3)
|
|
only handles a small subset of all IDL files so far
(This used to be commit 14b6436cc51f599572932bef72c49e0da4888073)
|
|
(This used to be commit 8649945cf9932a169190727f99e352ad68b0589f)
|
|
(This used to be commit ee27943e215126a2048d1082437ef2597d913371)
|
|
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)
|
|
tpot, note that this shows how you can modify passed in MprVar
variables in C call
(This used to be commit a782541db3de6ca3b599a220265cf9e6cb0c4d7b)
|
|
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)
|
|
Write a macro to check tree handle parameters.
(This used to be commit 043feb131f1877886a9ab7e25ada5e54692f6487)
|
|
with tree_connect() and tree_disconnect() functions.
(This used to be commit 9ed763f7fa9e6138d8c1da29c1e0adf2e18cb5e1)
|
|
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)
|
|
(This used to be commit 63577628b0ee7e6b33053484190189e99cb56a5b)
|
|
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)
|
|
Throw an exception if tree connect fails.
(This used to be commit 5b67f2c3d91487fec38b300b4f71792cd9164a78)
|
|
arg and anonymous version of command.
Implement ejs tconx.
(This used to be commit 3b7df1037de813d93b284d3b4438b083e668e29f)
|
|
(This used to be commit 564dfe14d00e80a0d373ab0fc17803ffaac0892e)
|
|
(This used to be commit 8574f64ca2bda864f472067ae594285b6f5dc957)
|
|
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)
|
|
Add a session_setup() function that does an anonymous session setup. Will
add credential passing later.
(This used to be commit 832332de5db7102085e7c44d4256fb199d8123eb)
|
|
(This used to be commit a55e40651d06f416871ccbe04ad3b7d25444d645)
|
|
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)
|
|
(This used to be commit ada004595760605134eb741da9c549521938c2ce)
|
|
(This used to be commit ddd7454cb3e2445fd32682b380be89c70f8a22cb)
|
|
(This used to be commit 41bae267e29614d300ec2505c927ab17ccbbe64f)
|
|
as there are going to be a lot more of them.
(This used to be commit b086768589ee27de6616945bbea42b18b40d25d5)
|
|
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)
|
|
(This used to be commit 4b775c619b7abed52d158ab70505320753a0c9cb)
|
|
parsing and example for resolveName().
(This used to be commit 1a4a54931733ebfa743401a184fe460c044427b4)
|
|
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)
|
|
(This used to be commit 2fa6f7bb2b8390f6486f6531212b556e98a6c528)
|
|
(This used to be commit 8a98572a3b5dba58181dc402dbebae5452656012)
|
|
res: {
is_err: true,
is_ok: false,
errstr: "NT_STATUS_IO_TIMEOUT",
v: -1073741643
}
(This used to be commit d81d5f8317ca82a08e6fc38ef7313fad2e631281)
|
|
(This used to be commit 31b9fadbed656f666f587a9dcb5a7627a2d388aa)
|