summaryrefslogtreecommitdiff
path: root/source4/build/smb_build
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r5917: First step in using the new cli_credentials structure. This patchJelmer Vernooij1-0/+1
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)
2007-10-10r5906: Fix the usage of the internal popt (make proto should ignore it)Jelmer Vernooij1-0/+1
Updated included popt to 1.7. (This used to be commit d60cb643e8a46771f3d836307ea45b869f34dc9b)
2007-10-10r5674: - Re-enable DCOM support.Jelmer Vernooij1-1/+0
- 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)
2007-10-10r5490: The big (D)COM commit! :-) Contains most of the changes described in theJelmer Vernooij1-1/+2
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)
2007-10-10r5487: - Allow disabling modulesJelmer Vernooij1-0/+5
- 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)
2007-10-10r5438: Keep new CFLAGS if the compiler accepted them.Jelmer Vernooij1-1/+1
(This used to be commit d0a6b973307ba3b740f18214f14682495a607c63)
2007-10-10r5437: Allow Samba4 to be compiled by tcc (www.tinycc.org). It still crashes ↵Jelmer Vernooij1-4/+13
when linking though. (This used to be commit 2e1e8db6dc877eb32b51cfc3d9c8f463d14530ec)
2007-10-10r5197: moved events code to lib/events/ (suggestion from metze)Andrew Tridgell1-0/+1
(This used to be commit 7f54c8a339f36aa43c9340be70ab7f0067593ef2)
2007-10-10r5190: Grr - typo.Tim Potter1-1/+1
(This used to be commit 5f40ff0f554323ed0a806be7a4d0f1fac97e3ffb)
2007-10-10r5188: Add config.mk file for swig.Tim Potter1-0/+1
(This used to be commit c40fb6625d5cc6b3ddadfdc3c63d7856a45ec134)
2007-10-10r5108: the beginnings of a nbtd server for Samba4. Currently just displaysAndrew Tridgell1-0/+1
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)
2007-10-10r5104: - added support for task based servers. These are servers that withinAndrew Tridgell1-0/+1
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)
2007-10-10r5102: This is a major simplification of the logic for controlling top levelAndrew Tridgell1-2/+1
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)
2007-10-10r5086: Fix list of binaries to install:Andrew Bartlett1-4/+5
- nmblookup and net are generic, not torture programs. - Add ntlm_auth Andrew Bartlett (This used to be commit a2a49d1be00bdf33f941890399d6cbdf46968d9b)
2007-10-10r5085: add net and nmblookup to installed binariesAndrew Tridgell1-1/+3
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)
2007-10-10r5047: Fix swig dependencies.Tim Potter1-4/+4
(This used to be commit f9e56d39c943a3edd6a13b6d29fe4e614c32d289)
2007-10-10r5033: Remove --with-eparserdir configure option and eparser_idl make target.Tim Potter2-23/+0
This is all done in the lorikeet/ethereal Makefile now. (This used to be commit 5ec9fad5cfc9c6010550aa1890e9d213030db55d)
2007-10-10r5016: Use LIBRARY instead of BINARY for inserting the swig stuff into theTim Potter1-5/+5
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)
2007-10-10r4983: On second thoughts don't include the config.mk file for the swig stuffTim Potter1-1/+0
just yet. More testing required. (This used to be commit c2664bb365e31a160b72e6eecfdfce9921e913f0)
2007-10-10r4982: Start to move swig dependencies into new build system. UnfortunatelyTim Potter2-34/+6
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)
2007-10-10r4814: cope with perl not being in /usr/bin for idl buildingAndrew Tridgell1-1/+1
(This used to be commit 1fc9448ccb0c2038c128e13535fce83d32f39058)
2007-10-10r4813: this is a temporary solution to a link problem we have on someAndrew Tridgell1-1/+2
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)
2007-10-10r4812: removed dependence on Data::DumperAndrew Tridgell1-1/+0
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)
2007-10-10r4729: add dummy "winbind" serviceStefan Metzmacher1-1/+2
- 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)
2007-10-10r4475: fixed smbd to work with the small changes in the ldb API (the most ↵Andrew Tridgell1-0/+1
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)
2007-10-10r4466: rather than defining "STANDALONE" for building tdb, ldb and tallocAndrew Tridgell1-1/+1
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)
2007-10-10r4096: move the samdb code to source/dsdb/Stefan Metzmacher1-1/+2
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)
2007-10-10r3810: create a LIB_SECURITY subsystemStefan Metzmacher1-1/+2
- move dom_sid, security_descriptor, security_* funtions to one place and rename some of them metze (This used to be commit b620bdd672cfdf0e009492e648b0709e6b6d8596)
2007-10-10r3769: fix the build of shared librariesStefan Metzmacher2-3/+9
metze (This used to be commit 461ff03ce38c6bf6b90f95029287c6e6b01fc1e0)
2007-10-10r3768: Fix build of librariesJelmer Vernooij1-0/+3
(This used to be commit 9929aa94ef01eba64ccf41f4b22df0cdbe3e96b3)
2007-10-10r3752: Remove direct.pm for now (not used and breaks solaris build)Jelmer Vernooij2-61/+0
(This used to be commit f28638628a10fbb42276517527d681bd0b3f6217)
2007-10-10r3751: Some fixes to using enable and disable for subsystems, ext libs and ↵Jelmer Vernooij4-15/+11
modules (This used to be commit c7757dd9adc18549fa3f908c2714624ec3f91394)
2007-10-10r3744: Support building subsystems as a shared library. Modules don't work yet,Jelmer Vernooij3-3/+5
so while this does compile, it does not work yet. (This used to be commit 3d885562c9f83d60c5d4957b067e35387dfa50dd)
2007-10-10r3740: Convert more files to .mk, fix the buildJelmer Vernooij3-4/+6
(This used to be commit a7c3c8cb6256acf672996fc6bf6128865a9ba0a9)
2007-10-10r3739: Remove a bunch of unused m4 macrosJelmer Vernooij2-156/+4
(This used to be commit 2a38b77a1d8674b46028214896e37747c4082f13)
2007-10-10r3738: Use a hardcoded list of .mk files rather then "find" (breaks onJelmer Vernooij1-1/+29
some machines) (This used to be commit 9e65718102da901bbe07213c6cb16d837ccc3127)
2007-10-10r3737: - Get rid of the register_subsystem() and register_backend() functions.Jelmer Vernooij2-35/+0
- Re-disable tdbtool (it was building fine on my Debian box but other machines were having problems) (This used to be commit 0d7bb2c40b7a9ed59df3f8944133ea562697e814)
2007-10-10r3736: Fix the build for builds that haven't got all libs sambaJelmer Vernooij1-2/+21
can use installed. (This used to be commit 359a3570f32902db0e9f59f168af464e8c652cea)
2007-10-10r3735: Allow building subsystems as static libraries (.a files). To enableJelmer Vernooij3-8/+8
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)
2007-10-10r3733: More build system fixes/features:Jelmer Vernooij7-220/+88
- 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)
2007-10-10r3730: More build system fixes and simplificationsJelmer Vernooij10-1003/+313
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)
2007-10-10r3726: More simplifications/fixes in the build systemJelmer Vernooij6-98/+113
(This used to be commit e32f87fdea3070ea715ef547f2a406aa63ab775f)
2007-10-10r3696: Feed directly to perl, rather then creating an intermediate fileJelmer Vernooij1-12/+2
(This used to be commit dab264b78cdf709f1e2618b2b52b0e4aa2ad85b7)
2007-10-10r3695: Add intermediate functions to use when migrating from .m4+.mk to .pm ↵Jelmer Vernooij2-2/+68
files (This used to be commit fb849a309b823296a31bbf0b5b683760119c615c)
2007-10-10r3691: Use packagesJelmer Vernooij10-60/+80
(This used to be commit 975f06b626a3cc25e69bbe95dcfa04dc78e3dc92)
2007-10-10r3690: Use perl's 'use' statement to include the build system partsJelmer Vernooij8-16/+21
rather then using "cat" (This used to be commit 4d018b2b701faa56d7e3bb7634729296b53e0acb)
2007-10-10r3651: Add a new configure option --with-eparserdirAndrew Bartlett2-1/+25
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)
2007-10-10r3636: Fix python buildJelmer Vernooij1-0/+1
(This used to be commit 0cf3978714cbe7ee49f5ab182ed007fcdf94b33b)
2007-10-10r3587: Add status_codes.i as a dependencies for dcerpc.iTim Potter1-1/+1
(This used to be commit 358f6410639f4843a2781094fb102952f9dc8639)
2007-10-10r3586: Fix some of the issues with the module init functions.Jelmer Vernooij3-47/+62
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)