IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
dcerpc_interface_table struct rather then a tuple of interface
name, UUID and version.
This removes the requirement for having a global list of DCE/RPC interfaces,
except for these parts of the code that use that list explicitly
(ndrdump and the scanner torture test).
This should also allow us to remove the hack that put the authservice parameter
in the dcerpc_binding struct as it can now be read directly from
dcerpc_interface_table.
I will now modify some of these functions to take a dcerpc_syntax_id
structure rather then a full dcerpc_interface_table.
- fixed ncacn_ip_tcp to use the generic async name resolution methods,
so NBT names now work (as requested several times by abartlet!)
- changed resolve_name() to take an event_context, so it doesn't cause
the whole process to block
- cleaned up the talloc_find_parent_bytype() calls to go via a cleaner
event_context_find() call
calls. This changes the generated RPC and IRPC calls to use the 'this'
object pointer instead of requiring the passing of the object on each
call. So typical usage is now:
var echo = echo_init();
var io = irpcObj();
status = echo.connect("ncacn_np:server");
assert(status.is_ok);
io.input.in_data = 7;
status = echo.AddOne(io);
assert(status.is_ok);
- added code to send multiple irpc calls in parallel, to all servers
that have registered the given name, with output going in
io.results[i]. This allows you to make rpc calls to multiple servers
at once, which is needed for clients like smbstatus
code in pidl for ejs calls. This means that ejs_rpc_call() doesn't
need to scan the rpc tables for the right interface, and doesn't need
to scan for the call name
- 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)
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
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
- 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
- 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
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.