Age | Commit message (Collapse) | Author | Files | Lines |
|
puts support for it into popt_common, adds a few utility functions
(in lib/credentials.c) and the callback functions for the command-line
(lib/cmdline/credentials.c). Comments are welcome :-)
(This used to be commit 1d49b57c50fe8c2683ea23e9df41ce8ad774db98)
|
|
Updated included popt to 1.7.
(This used to be commit d60cb643e8a46771f3d836307ea45b869f34dc9b)
|
|
- Always put IID in vtables (useful for asserts)
- Add table to keep track of DCOM proxy classes
- Bunch of smaller bug fixes
(This used to be commit 26d5a0b92c66bc86d0c26f687f83fa712342ac32)
|
|
DCOM paper in lorikeet. This is the result of 1.5 months work (mainly
figuring out how things *really* work) at the end of 2004.
In general:
- Clearer distinction between COM and DCOM. DCOM is now merely
the glue between DCE/RPC+ORPC and COM. COM can also work without
DCOM now. This makes the code a lot clearer.
- Clearer distinction between NDR and DCOM. Before, NDR had a couple of
"if"s to cope with DCOM, which are now gone.
- Use "real" arguments rather then structures for function arguments in
COM, mainly because most of these calls are local so packing/unpacking
data for every call is too much overhead (both speed- and code-wise)
- Support several mechanisms to load class objects:
- from memory (e.g. part of the current executable, registered at start-up)
- from shared object files
- remotely
- Most things are now also named COM rather then DCOM because that's what it
really is. After an object is created, it no longer matters whether it
was created locally or remotely.
There is a very simple example class that contains
both a class factory and a class that implements the IStream interface.
It can be tested (locally only, remotely is broken at the moment)
by running the COM-SIMPLE smbtorture test.
Still to-do:
- Autogenerate parts of the class implementation code (using the coclass definitions in IDL)
- Test server-side
- Implement some of the common classes, add definitions for common interfaces.
(This used to be commit 71fd3e5c3aac5f0002001ab29d2248e6c6842d6f)
|
|
- Disable all current DCOM functionality (I hope to commit
a large bunch of COM and DCOM changes later today)
- Make remact and oxidresolver depend on orpc rather then dcom
(This used to be commit f298f2a5478a905fe385b8d68318db92ee984374)
|
|
(This used to be commit d0a6b973307ba3b740f18214f14682495a607c63)
|
|
when linking though.
(This used to be commit 2e1e8db6dc877eb32b51cfc3d9c8f463d14530ec)
|
|
(This used to be commit 7f54c8a339f36aa43c9340be70ab7f0067593ef2)
|
|
(This used to be commit 5f40ff0f554323ed0a806be7a4d0f1fac97e3ffb)
|
|
(This used to be commit c40fb6625d5cc6b3ddadfdc3c63d7856a45ec134)
|
|
the packets it receives, but it at least shows how the server
structure will work.
To implement it I extended the libcli/nbt/ library to allow for an
incoming packet handler to be registered. That allows the nbt client
library to be used for low level processing of the nbtd server packets.
Other changes:
- made the socket library always set SO_REUSEADDR when binding to an
interface, to ensure that restarts of a server don't have to wait
for a couple of minutes.
- made the nbt port configurable. Defaults to 137, but other ports
will be useful for testing.
(This used to be commit 2fedca6adfd4df9e85cc86896dfa79630777a917)
|
|
themselves are run as a single process, but run as a child of the
main process when smbd is run in the standard model, and run as part
of the main process when in the single mode.
- rewrote the winbind template code to use the new task services. Also
fixed the packet queueing
- got rid of event_context_merge() as it is no longer needed
(This used to be commit 339964a596689278d2138cff05d7d444798a3504)
|
|
servers in smbd. The old code still contained a fairly bit of legacy
from the time when smbd was only handling SMB connection. The new code
gets rid of all of the smb_server specific code in smbd/, and creates
a much simpler infrastructures for new server code.
Major changes include:
- simplified the process model code a lot.
- got rid of the top level server and service structures
completely. The top level context is now the event_context. This
got rid of service.h and server.h completely (they were the most
confusing parts of the old code)
- added service_stream.[ch] for the helper functions that are
specific to stream type services (services that handle streams, and
use a logically separate process per connection)
- got rid of the builtin idle_handler code in the service logic, as
none of the servers were using it, and it can easily be handled by
a server in future by adding its own timed_event to the event
context.
- fixed some major memory leaks in the rpc server code.
- added registration of servers, rather than hard coding our list of
possible servers. This allows for servers as modules in the future.
- temporarily disabled the winbind code until I add the helper
functions for that type of server
- added error checking on service startup. If a configured server
fails to startup then smbd doesn't startup.
- cleaned up the command line handling in smbd, removing unused options
(This used to be commit cf6a46c3cbde7b1eb1b86bd3882b953a2de3a42e)
|
|
- nmblookup and net are generic, not torture programs.
- Add ntlm_auth
Andrew Bartlett
(This used to be commit a2a49d1be00bdf33f941890399d6cbdf46968d9b)
|
|
metze, can you look at automating this when you get time? We really
need a flag in config.mk for "BINARY::" sections for the install
location, something like:
[BINARY::nmblookup]
OBJ_FILES = \
utils/nmblookup.o
INSTALL_IN = bin
(This used to be commit a69c1a91307dc5bd13db94fdbb7cbaba90b074aa)
|
|
(This used to be commit f9e56d39c943a3edd6a13b6d29fe4e614c32d289)
|
|
This is all done in the lorikeet/ethereal Makefile now.
(This used to be commit 5ec9fad5cfc9c6010550aa1890e9d213030db55d)
|
|
build system. This still generates bogus targets (i.e
bin/swig_dcerpc.so.0.0.1) and the subsystem initialisation needs to be
done by hand but it is less of a hack.
(This used to be commit e9b69d19a84b31966fb6e66e9d8682b0f9b40a47)
|
|
just yet. More testing required.
(This used to be commit c2664bb365e31a160b72e6eecfdfce9921e913f0)
|
|
I can only get something useful happening by using the BINARY keyword
as nothing else seems to generate dependency lists that can be used
when linking the swig shared libraries. Anyway this is a lot nicer
than having lots of junk in makefile.pm.
(This used to be commit 71a22f5206086c5ab7315d38934d65483aff7a70)
|
|
(This used to be commit 1fc9448ccb0c2038c128e13535fce83d32f39058)
|
|
platforms. The problem is that some loaders (for example the IRIX 6.5
machine us4 in the build farm) must have libs listed after object
files that depend on them on the link line. If you put the libs first
then all the symbols in the libs remain unresolved.
I think the correct fix for this is to separate xxx_LINK_LIBS out from
the current xxx_LINK_FLAGS, and use xxx_LINK_FLAGS followed by
xxx_LINK_LIST followed by xxx_LINK_LIBS. I'm hoping metze or jelmer,
as our build wizards, might take a look at this when they get time.
This interim fix should work fine, but its rather ugly, as it lists
the flags and libs twice in each link.
(This used to be commit db7d43fbb95748c85316b41ad3dc4eb967ed8a08)
|
|
if you need Dumper for debugging (and it is damn useful!) then please
use the require trick in MyDumper() from pidl so we don't end up
depending on it. Too many systems don't have it.
(This used to be commit b9f32d2812bde0a4389971487006f9c553b5e3c1)
|
|
- this creates a new task and then starts a process_model "single"
with service "winbind_task"
- that means with -M single everything is in one process
with - M standard winbind is a seperate process but didn't fork for each connection
with -M thread winbind is a seperate thread but didn't thread for each connection
- the dummy server listen s on /tmp/.winbind/echo
and for better testing with telnet also on 127.0.255.1 port 55555
metze
(This used to be commit 5190f60dedc4076d94fbf77e02eb3b5312d953ec)
|
|
important
change was in the ldb_msg_add_*() routines, which now use the msg as a context,
and thus it needs to be a talloc ptr)
(This used to be commit 1a4713bfd0e519f3eb7b3241121ff914a6eeef18)
|
|
outside the tree, instead defined _SAMBA_BUILD_ inside the Samba
build. This makes it easier to pull code out of Samba for external
use.
(This used to be commit 09e98c8745cca7ccb1ad7134c0c09b8e4c0f4f06)
|
|
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)
|
|
- move dom_sid, security_descriptor, security_* funtions to one place
and rename some of them
metze
(This used to be commit b620bdd672cfdf0e009492e648b0709e6b6d8596)
|
|
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)
|
|
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 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)
|