Age | Commit message (Collapse) | Author | Files | Lines |
|
main rpc server code. let the backends specify a ndr_push/ndr_pull function
like we already do with the dispatch() function.
this allows an interface implmentation to work as real proxy
without needing to know the idl for an interface that means
just the plain decrypted payload can be forwarded
If someone want to write such a backend, patches are wellcome
metze
(This used to be commit a150bdf140d9165a05cbc7cac40b6e3c03a7bd3c)
|
|
separately)
(This used to be commit e399834ae1aa9731d5d29c04d5b7b90e356dad6f)
|
|
(This used to be commit 3040cd65151dbcc54404f9be9d1fbcf539c7b635)
|
|
check that the server
hasn't given us a null pointer, otherwise we can segv when we dereference it. For example:
[size_is(*size)] *x;
uint32 *size;
if a broken server gave us x != NULL and size == NULL then we would crash. I've added
a check_null_pointer() call in pidl to catch this.
(This used to be commit 8cbd3f47a95367e861c6b99c44416a9ccef3c9ca)
|
|
(This used to be commit 573230ea99136bd66d00bac18effd28b1e5ba76f)
|
|
thanks to Bjoern JACKE <samba@j3e.de> for pointing this out
(This used to be commit 53c4d0a7d83181afbe01bbbb0840cb2a086b45da)
|
|
(This used to be commit 83221a0da07bf7c45757e737782f2f4ee541ad88)
|
|
that depend on variables that come after the array in the structure or function.
This has been something that has been problematic for a while, but the
winreg QueryValue problem finally prompted me to fix it properly. We
should now go back and fix up all the ugly workarounds we have used to
avoid this problem in other calls.
Unfortunately the solution is fairly complex, and involves the use of
the internal ndr token lists (similar to the solution for relative
pointers). I wonder if anyone else will be able to follow the logic if
I get run over by a bus :-)
(This used to be commit e839b19ec5581f669f2a7705b1fb80845313251c)
|
|
the idea is to have a directory service db layer
which will be used by the ldap server, samr server, drsuapi server
authentification...
I plan to make different implementations of this interface possible
- current default will be the current samdb code with sam.ldb
- a compat implementation for samba3 (if someone wants to write one)
- a new dsdb implementation which:
- understands naming contexts (directory parrtitions)
- do schema and acl checking checking
- maintain objectGUID, timestamps and USN number,
maybe linked attributes ('member' and 'memberOf' attributes)
- store metadata on a attribute=value combination...
metze
(This used to be commit 893a8b8bca2f020fbbe6f469aaa8dd4478249eb8)
|
|
dcerpc_ndr_request_send()
- this allows us to call dcerpc_log_packet() when we receive a packet we
can't parse correctly
metze
(This used to be commit a7a6cea112a180a28188997ca99f30d8dd286bb8)
|
|
metze
(This used to be commit 979c453c4dedf0006997dfc9994331e49643b741)
|
|
metze
(This used to be commit 2647b47557c880dd5f24a4cd15475badfd7fdc94)
|
|
metze
(This used to be commit 7264a2227d7a1881db01964d0d713c144eb77152)
|
|
metze
(This used to be commit 44f168c44de908fdf38b39aae8bf10e80206410a)
|
|
on Simple example server side implementation
(This used to be commit 98afb504d95ccca4d6ec48273e10b52ccfa26ad0)
|
|
some other minor fixes
(This used to be commit 9fca748fe3c12af83a006f1d0821aa560d08fc95)
|
|
This reduces the total size of the samba binaries from 119 Mb to 73 Mb.
Next step will be to have the build system obtain some of this information
by itself, so that we don't have to write ~10 lines per interface manually.
(This used to be commit 16d905f6b0cbec591eebc44ee2ac9516a5730378)
|
|
I see a new 64 bit time field which are seconds since 1601,
this will be mapped to NTTIME by th eparsing code
+#define NTTIME_1sec NTTIME
metze
(This used to be commit db35f3b0f99943311ff8b797e8336616dab28220)
|
|
- Add some const
(This used to be commit a00bda88e1b6abdc36e5aa8c2a35f64855f67c96)
|
|
- move dom_sid, security_descriptor, security_* funtions to one place
and rename some of them
metze
(This used to be commit b620bdd672cfdf0e009492e648b0709e6b6d8596)
|
|
rather then a large table in librpc/gen_ndr/tables.c. This will allow us
to only link in only the required gen_ndr files (speeds up linking quite a
bit, makes binaries smaller).
Each gen_ndr_* file now has a init function that calls the init functions
of the interfaces it contains. I did it this way to keep pidl's code simple,
though it might hurt startup time a bit. I'd be happy to change it if
people like one function better.
(This used to be commit 3c436590ae95b58ad6d00e72d6fdd08a4d80f208)
|
|
metze
(This used to be commit 461ff03ce38c6bf6b90f95029287c6e6b01fc1e0)
|
|
(This used to be commit 9929aa94ef01eba64ccf41f4b22df0cdbe3e96b3)
|
|
(This used to be commit f28638628a10fbb42276517527d681bd0b3f6217)
|
|
modules
(This used to be commit c7757dd9adc18549fa3f908c2714624ec3f91394)
|
|
so while this does compile, it does not work yet.
(This used to be commit 3d885562c9f83d60c5d4957b067e35387dfa50dd)
|
|
(This used to be commit a7c3c8cb6256acf672996fc6bf6128865a9ba0a9)
|
|
(This used to be commit 2a38b77a1d8674b46028214896e37747c4082f13)
|
|
some machines)
(This used to be commit 9e65718102da901bbe07213c6cb16d837ccc3127)
|
|
- Re-disable tdbtool (it was building fine on my Debian box but other
machines were having problems)
(This used to be commit 0d7bb2c40b7a9ed59df3f8944133ea562697e814)
|
|
can use installed.
(This used to be commit 359a3570f32902db0e9f59f168af464e8c652cea)
|
|
this support, run SUBSYSTEM_OUTPUT_TYPE=STATIC_LIBRARY ./config.status
I haven't enabled this by default because there are some circular dependencies
in the makefile that have to be resolved first (LIBRPC depends on LIBSMB
and LIBSMB depends on LIBRPC..)
(This used to be commit fc0432069bf3569a47a7c32f4bf789cec2ca44db)
|
|
- Use .mk files directly (no need for a SMB_*_MK() macro when adding a new SUBSYSTEM, MODULE or BINARY). This allows addition of new modules and subsystems without running configure
- Add support for generating .dot files with the Samba4 dependency tree (as used by the graphviz and springgraph utilities)
(This used to be commit 64826da834e26ee0488674e27a0eae36491ee179)
|
|
the hierarchy in the init functions is correct now
will also make it easier to implement some other features
(This used to be commit cbe819a75568403ac8850ea4d344c607a46d61c2)
|
|
(This used to be commit e32f87fdea3070ea715ef547f2a406aa63ab775f)
|
|
(This used to be commit dab264b78cdf709f1e2618b2b52b0e4aa2ad85b7)
|
|
files
(This used to be commit fb849a309b823296a31bbf0b5b683760119c615c)
|
|
(This used to be commit 975f06b626a3cc25e69bbe95dcfa04dc78e3dc92)
|
|
rather then using "cat"
(This used to be commit 4d018b2b701faa56d7e3bb7634729296b53e0acb)
|
|
- Work on server side and local COM support (should work, just no
example classes yet)
- Use vtables so that local and remote calls can be used transparently
- Generate 'proxies and stubs' rather then heavily modified code in client.pm and server.pm. proxies (client side code) are generated in proxy.pm, stubs (server side dispatchers) are generated in stubs.pm
- Support registering classes and interfaces
- DCOM interfaces no longer have to be in the same IDL file as their
base interface, which will allow us to split up dcom.idl
(This used to be commit 7466947a23985f9bb15209b67880f7b94dc515c8)
|
|
(This used to be commit 7484b9be7423ccd7e37432951700939e8a53d513)
|
|
This allows us to call 'make eparser_idl', generate the files required
by the ethereal pidl plugin, and put them in the right place. (See
lorikeet/ethereal)
Andrew Bartlett
(This used to be commit bd9497b092335b2646a1955ea7c55ad33eb7d538)
|
|
(This used to be commit 0cf3978714cbe7ee49f5ab182ed007fcdf94b33b)
|
|
(This used to be commit 709f279b192c8f9eeea04749169c00f2d57b20d3)
|
|
The torture test DCOM-SIMPLE now successfully does an
IStream_Read and a IStream_Write call.
This test can now be run successfully against the "Simple DCOM" Visual
Studio example.
(You have to quote out line 337 in pidl. pidl complains if the variable
that contains the array size follows the array. I still need to fix this
properly)
Next goals:
- Clean up code
- Server side support
- Support custom marshalling
- Support DCOM interfaces in files other then dcom.idl
(This used to be commit 8693344772a9b700533179f4bacfe27ec27dfcfe)
|
|
- OXID tables work now. IOXIDResolver is used if there is used for getting a STRINGBINDING if none is known yet
- Add custom dissectors for STRINGARRAY and DUALSTRINGARRAY. If there's a way to get rid of these later on (by supporting them thru pidl somehow), I'd be happy to use that instead of doing it manually.
I can now get to the point where we have created an object and are connected to
it. The only thing left to do is being able to set the Object UUID properly..
(This used to be commit 54e1e5edca50d3cd496c080715e84ec62cb2a10c)
|
|
use of contexts.
(This used to be commit 93eb3cd99c4fb065a69eabcead0c33804259c976)
|
|
(This used to be commit 358f6410639f4843a2781094fb102952f9dc8639)
|
|
Both subsystems and modules can now have init functions, which can be
specified in .mk files (INIT_FUNCTION = ...)
The build system will define :
- SUBSYSTEM_init_static_modules that calls the init functions of all statically compiled modules. Failing to load will generate an error which is not fatal
- BINARY_init_subsystems that calls the init functions (if defined) for the subsystems the binary depends on
This removes the hack with the "static bool Initialised = " and the
"lazy_init" functions
(This used to be commit 7a8244761bfdfdfb48f8264d76951ebdfbf7bd8a)
|
|
modular headers confine the warnings, and everwhere else we need them.
Use the gcc option to suppress the silly strftime warning.
Andrew Bartlett
(This used to be commit 0bf3c245902da7e2e1a6b03c410d49c79f43edc7)
|