1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-23 17:34:34 +03:00
Commit Graph

6212 Commits

Author SHA1 Message Date
Andrew Tridgell
2fe43ec90f added a private pointer to tdb_traverse() to allow callers to supply
data to their traverse function
(This used to be commit 76bf816485)
2004-03-28 01:33:32 +00:00
Andrew Tridgell
4217c609a8 removed the state parameter to tdb_traverse and the TDB_MODIFY flag
(This used to be commit 6505efc7e9)
2004-03-28 01:30:54 +00:00
Stefan Metzmacher
2622eaeca6 make proto should not catch any function of the lib/popt/*.c stuff
metze
(This used to be commit ec96914c66)
2004-02-24 06:53:53 +00:00
Stefan Metzmacher
2027b1922b let the popt replacement stuff survive a make proto
metze
(This used to be commit 0f1c6dd631)
2004-02-24 06:49:59 +00:00
Stefan Metzmacher
42887e406a - creat the LIBCMDLINE subsystem
including readline and popt

- creat the CONFIG subsystem
  including param/* dynconfig.* and passdb/secrets.*

metze
(This used to be commit bfd7fd21c8)
2004-02-22 13:09:51 +00:00
Stefan Metzmacher
64cdbddbc1 don't inlcude rpc/rpc.h and rpcsvc/*.h anymore
and remove NET_GROUP stuff, this needs to be implemented
in a better way if we ever readd this

metze
(This used to be commit da5f22976f)
2004-02-18 15:31:25 +00:00
Stefan Metzmacher
932026724f remove unused NISPLUS/AUTOMOUNT stuff
metze
(This used to be commit cbfa29549e)
2004-02-18 13:55:15 +00:00
Stefan Metzmacher
0af9994327 move some cryto stuff to lib/crypto/*
metze
(This used to be commit afe4dbfea6)
2004-02-18 12:20:17 +00:00
Stefan Metzmacher
9a8cd1aa27 move the tdb lib code to lib/tdb/*
metze
(This used to be commit 5ebd6fb761)
2004-02-12 15:59:16 +00:00
Stefan Metzmacher
6647ff7430 move -lpopt replacement code from source/popt/* to source/lib/popt/*
metze
(This used to be commit 9d1018557f)
2004-02-12 14:21:44 +00:00
Stefan Metzmacher
e46d297083 move the -lpopt replacement to a LIBPOPT subsystem
metze
(This used to be commit 9eb593a7c0)
2004-02-12 08:07:46 +00:00
Stefan Metzmacher
45e446248d move more code to the config.m4 scheme
LIBBASIC, LIBSMB are the new global subsystems

metze
(This used to be commit a25c167b3f)
2004-02-12 06:02:32 +00:00
Andrew Tridgell
078cced5ec - modified the dcerpc client security code to be generic, so ntlmssp
and schannel are both instances of possible security modules

- added schannel sign and sign/seal support to the dcerpc client
  code. You select it with binding options of "schannel,sign" or
  "schannel,seal".
(This used to be commit 05db0b9d94)
2004-02-10 10:22:12 +00:00
Stefan Metzmacher
c61089219b - we now specify the object files in the subsystems config.m4 file
I plan to convert all objectfile group to use SMB_SUBSYSTEM
  later I'll add a SMB_BINARY() and SMB_LIBRARY(), then there will be no more need
  to touch Makefile.in, because all make rules will be autogenerated by configure

- convert the PROCESS_MODEL subsystem to this new scheme
  and move the pthread test to smbd/process_model.m4

- convert the CHARSET subsystem to this new scheme
  and move the iconv test to lib/iconv.m4
(This used to be commit 2e57ee884e)
2004-02-02 13:43:03 +00:00
Stefan Metzmacher
ada1de721a some compilers don't like the #warning preprocessing directive
so just do a DEBUG(0,("..."));

metze
(This used to be commit c087ff38b0)
2004-02-02 12:15:25 +00:00
Stefan Metzmacher
ac7d38c3f9 remove unused files
we maybe need the util_smbd.c code later but this should not be in the lib/ dir

metze
(This used to be commit 2149d41407)
2004-02-02 07:23:29 +00:00
Stefan Metzmacher
a5ece462ab remove a lot of unused stuff from the header files
and exclude some files from Makefile.in

metze
(This used to be commit f77990cf24)
2004-01-28 18:54:36 +00:00
Stefan Metzmacher
e06687eb17 merge the version.h autogeneration stuff from 3.0
metze
(This used to be commit 24dc237e10)
2004-01-28 12:47:52 +00:00
Stefan Metzmacher
55dfa23e41 initilize ev->maxfd = EVENT_INVALID_MAXFD; before the while() loop.
metze
(This used to be commit 61ec710518)
2004-01-22 01:56:31 +00:00
Stefan Metzmacher
d8ee9d7a0e - make the recalculation of ev->maxfd a bit more efficient.
- fix the case when we have no fd_events left on the event_context
  we now exit after doing the timed events and not block in select()
  waiting for no fd's to become ready...

metze
(This used to be commit 857e76ef6b)
2004-01-22 01:35:51 +00:00
Stefan Metzmacher
aafd0efc58 let the event_add_XXX() function return a pointer of the allocated event structure
and NULL on allacation error.

metze
(This used to be commit fffc6cfb6b)
2004-01-21 23:19:59 +00:00
Stefan Metzmacher
7e6cf43756 This patch adds a better dcerpc server infastructure.
1.) We now register endpoint servers add startup via register_backend()
    and later use the smb.conf 'dcerpc endpoint servers' parameter to setup the dcesrv_context

2.) each endpoint server can register at context creation time as much interfaces as it wants
    (multiple interfaces on one endpoint are supported!)
    (NOTE:  there's a difference between 'endpoint server' and 'endpoint'!
	    for details look at rpc_server/dcesrv_server.h)

3.) one endpoint can have a security descriptor registered to it self
    this will be checked in the future when a client wants to connect
    to an smb pipe endpoint.

4.) we now have a 'remote' endpoint server, which works like the ntvfs_cifs module
    it takes this options in the [globals] section:

    dcerpc remote:interfaces = srvsvc, winreg, w32time, epmapper
    dcerpc remote:binding = ...
    dcerpc remote:user = ...
    dcerpc remote:password = ...

5.) we currently have tree endpoint servers: epmapper, rpcecho and remote

    the default for the 'dcerpc endpiont servers = epmapper, rpcecho'

    for testing you can also do
    dcerpc endpoint servers = rpcecho, remote, epmapper
    dcerpc remote:interfaces = srvsvc, samr, netlogon

6,) please notice the the epmapper now only returns NO_ENTRIES
    (but I think we'll find a solution for this too:-)

7.) also there're some other stuff left, but step by step :-)

This patch also includes updates for the
register_subsystem() , ntvfs_init(), and some other funtions
to check for duplicate subsystem registration


metze

(hmmm, my first large commit...I hope it works as supposed :-)
(This used to be commit 917e45dafd)
2004-01-08 22:55:27 +00:00
Andrew Tridgell
f4307200ac "subsystems" should be static
(This used to be commit 64cf9b3fd3)
2003-12-30 22:55:12 +00:00
Andrew Tridgell
db22c0c5f9 added a bunch of alias functions in samr.idl based on work by Kai.
(This used to be commit f740b02ac3)
2003-12-19 03:59:27 +00:00
Andrew Tridgell
938eef5beb removed some unused functions
(This used to be commit 09d17d705a)
2003-12-16 12:59:20 +00:00
Andrew Tridgell
6f12e4ace1 it turns out that a wire policy handle isn't a blob either, its a
uint32 followed by a GUID. I needed to fix this to support running in
mixed-mode rpc (where smbtorture is bigendian and w2k3 is
little-endian). Otherwise when you send back a policy handle the
server doesn't recognise it.
(This used to be commit 9b1c76a8e9)
2003-12-16 09:50:49 +00:00
Andrew Tridgell
7779b1e000 added support for big-endian ucs2 strings (as used by big-endian
msrpc).

this was easier than I expected!
(This used to be commit a0a51af6b7)
2003-12-16 09:20:34 +00:00
Andrew Tridgell
24c22aef90 a fairly large commit!
This adds support for bigendian rpc in the client. I have installed
SUN pcnetlink locally and am using it to test the samba4 rpc
code. This allows us to easily find places where we have stuffed up
the types (such as 2 uint16 versus a uint32), as testing both
big-endian and little-endian easily shows which is correct. I have now
used this to fix several bugs like that in the samba4 IDL.

In order to make this work I also had to redefine a GUID as a true
structure, not a blob. From the pcnetlink wire it is clear that it is
indeed defined as a structure (the byte order changes). This required
changing lots of Samba code to use a GUID as a structure.

I also had to fix the if_version code in dcerpc syntax IDs, as it
turns out they are a single uint32 not two uint16s.

The big-endian support is a bit ugly at the moment, and breaks the
layering in some places. More work is needed, especially on the server
side.
(This used to be commit bb1af644a5)
2003-12-16 09:02:58 +00:00
Andrew Tridgell
b2b9ea5429 enable rep_inet_ntoa() for non-pthread builds
(This used to be commit f50d4b602a)
2003-12-16 04:10:47 +00:00
Andrew Tridgell
1abd0be41e more mutex portability.
(This used to be commit 42dd8d888a)
2003-12-16 03:45:04 +00:00
Andrew Tridgell
2c6b585f2d more portability fixes. We now almost compile on solaris
(This used to be commit f4abd20b84)
2003-12-16 03:34:23 +00:00
Andrew Tridgell
ff6478bb4a use smb_rwlock_t instead of rwlock_t to avoid conflicts with system
types on some platforms (eg. solaris)
(This used to be commit ac8a23af8c)
2003-12-16 03:27:36 +00:00
Andrew Tridgell
089ae5e435 fixed some memory leaks in the rpc server code
(This used to be commit 2045855601)
2003-12-14 03:51:48 +00:00
Andrew Tridgell
340d9b71f9 added a basic dcerpc endpoint mapper to Samba4. Currently only
implements the epm_Lookup() call, I'll add the other important calls
soon. I was rather pleased to find that epm_Lookup() worked first
time, which is particularly surprising given its complexity.

This required quite a bit of new infrastructure:

  * a generic way of handling dcerpc policy handles in the rpc server

  * added type checked varients of talloc. These are much less error
    prone. I'd like to move to using these for nearly all uses of
    talloc.

  * added more dcerpc fault handling code, and translation from
    NTSTATUS to a dcerpc fault code

  * added data_blob_talloc_zero() for allocating an initially zero
    blob

  * added a endpoint enumeration hook in the dcerpc endpoint server
    operations
(This used to be commit 3f85f9b782)
2003-12-13 02:20:40 +00:00
Andrew Tridgell
16309de71d * the RPC-ECHO pipe now works in smbd, as long as the data sizes
don't cause fragmented pdus (I'll add fragments shortly)

 * change data_blob_talloc() to not zero memory when the 2nd argument
   is NULL. The zeroing just masks bugs, and can't even allow a DOS
   attack

 * modified pidl to ensure that [ref] arguments to the out side of
   functions are allocated when parsing the in side. This allows rpc
   backends to assume that [ref] variables are all setup. Doesn't work
   correctly for [ref] arrays yet

 * changed DLIST_ADD_END() to take the type instead of a tmp
   variable. This means you don't need to declare a silly tmp variable in
   the caller
(This used to be commit 46e0a35819)
2003-12-12 03:59:09 +00:00
Andrew Tridgell
3c76426f2e * removed some unused code
* updated tdb to latest version from Samba3

 * removed some extraneous ';' in tdbutil.c (Thanks to Erlend Aasland
   for pointing this out)
(This used to be commit f3eaf270e5)
2003-12-10 03:02:12 +00:00
Andrew Tridgell
2e5ae6f065 * added a debug thread id hook from jim myers
* change to select() from sys_select() in events.c, as sys_select() is
  not thread safe. We need a new unified signal handling scheme for
  Samba4, but for now just use select()
(This used to be commit 126fcd4a76)
2003-12-04 09:52:14 +00:00
Andrew Tridgell
b8cbd9181e don't use c++ comments
(This used to be commit 3d48fa8f37)
2003-12-04 01:59:24 +00:00
Andrew Tridgell
0e958fbe47 don't use c++ style comments
(This used to be commit b11a19cc76)
2003-12-04 01:18:34 +00:00
Jelmer Vernooij
47702c8552 Initial step at cleaning and splitting up configure.in.
(This used to be commit 369a9c1ac1)
2003-12-02 11:10:56 +00:00
Andrew Tridgell
7602aa50fd * got rid of UNISTR2 and everything that depends on it
* removed a bunch of code that needs to be rewritten using the new
    interfaces
(This used to be commit 9b02b486ef)
2003-12-01 00:17:30 +00:00
Andrew Tridgell
fa062af11a * removed a bunch of unused code
* made some functions static
(This used to be commit 829b87f30d)
2003-11-30 23:40:04 +00:00
Andrew Tridgell
f83f0cb060 fixed some warnings
(This used to be commit 1c2b8a93c5)
2003-11-28 09:05:44 +00:00
Andrew Tridgell
0b1b3850a0 added -m for 'max protocol' as a standard option
(This used to be commit 8fe4058711)
2003-11-27 04:00:21 +00:00
Andrew Tridgell
c123c84541 fixed some memory leaks in the dcerpc use of ntlmssp signing
(This used to be commit abbc9993b8)
2003-11-26 02:08:41 +00:00
Andrew Tridgell
e0ac659917 signed DCERPC over TCP now works !
* moved ntlmssp code into libcli/auth/, and updated to latest ntlmssp
   code from samba3 (thanks Andrew! the new interface is great)

 * added signing/ntlmssp support in the dcerpc code

 * added a dcerpc_auth.c module for the various dcerpc auth mechanisms
(This used to be commit c18c9b5585)
2003-11-26 01:16:41 +00:00
Jelmer Vernooij
a846e59205 CVS: ----------------------------------------------------------------------
CVS: Enter Log.  Lines beginning with `CVS:' are removed automatically
CVS:
CVS: Committing in .
CVS:
CVS: Modified Files:
CVS: 	Makefile.in configure.in include/includes.h include/ntvfs.h
CVS: 	include/smb.h lib/iconv.c lib/module.c ntvfs/ntvfs_base.c
CVS: 	ntvfs/cifs/vfs_cifs.c ntvfs/ipc/vfs_ipc.c
CVS: 	ntvfs/posix/vfs_posix.c ntvfs/print/vfs_print.c
CVS: 	ntvfs/reference/vfs_ref.c ntvfs/simple/vfs_simple.c
CVS: 	passdb/pdb_interface.c
CVS: Added Files:
CVS: 	include/module.h
CVS: ----------------------------------------------------------------------
Update to the modules system. Fixed:
 - get rid of smb_probe_module
 - merge older updates from 3.0
 - introduced register_subsystem() and register_backend() functions
 - adapt ntvfs and charset to use new register functions
 - made smb_load_modules() work recursively (e.g. 'preload modules = /usr/lib/samba')
 - got rid of some old remains

Things that still need work:
 - Did I break tankFS? I don't think so, but I can't test it here :-(
 - Add 'postload modules = ' (for modules that need to be loaded after fork() in smbd, if applicable)
 - Convert RPC, auth, passdb, etc to use new register_{subsystem,backend}() functions
 - Accept wildcards in 'preload modules' option, instead of loading recursively
(This used to be commit 7512b9ab1a)
2003-11-25 03:15:26 +00:00
Andrew Tridgell
f4e485117a * fixed byte order in epmapper parsing
* allow rpc transport to be specified on command line in smbtorture
(This used to be commit 8a82050fd6)
2003-11-24 13:19:00 +00:00
Tim Potter
c32a03ad12 Removed unused variable.
(This used to be commit 40ccaeefed)
2003-11-23 11:05:31 +00:00
Tim Potter
c071301a77 Add a strlen_m_term() function for returning the length of a string
including the termination.  Using value(strlen_m((r->name)+1)*2) gives
the wrong answer for the NULL string.
(This used to be commit 7ae329e663)
2003-11-23 10:50:52 +00:00
Andrew Tridgell
d47d14f2ff reduced the number of magic types we need in mkproto.pl
In general I prefer "struct foo" to just "foo" for most
structures. There are exceptions.
(This used to be commit 04eb12b56c)
2003-11-23 01:53:54 +00:00
Andrew Tridgell
d4dfcda78e * fixed level2 of QueryUserInfo
* added per-field testing of SetUserInfo

 * fixed strlen_m()
(This used to be commit 26238b0f8a)
2003-11-20 10:29:54 +00:00
Andrew Tridgell
bcfbaa312a run LookupDomain on each domain returned from EnumDomains in samr
(This used to be commit 947b9f8ced)
2003-11-15 07:51:19 +00:00
Andrew Tridgell
062670f00c removed a bunch of the old rpc code in preparation for replacing it all with auto-generated code
(This used to be commit 874bf4689d)
2003-11-13 10:15:48 +00:00
Andrew Tridgell
4e73a3c0fe fixed snprintf.c for systems that have only some of the *printf() family of functions
cope with servers that return bogus (too large) values in max_xmit

cope with a couple more error conditions in RAW-SFILEINFO

better startup time heuristics in NBENCH
(This used to be commit 89f7261ba5)
2003-10-10 05:40:32 +00:00
Andrew Tridgell
039e9dc5e6 - patch to fix a memory leak from metze
- fix a couple of unicode string errors for ascii clients found by
  RAW- tests
(This used to be commit 81c941ba8a)
2003-08-15 20:19:30 +00:00
Andrew Tridgell
de10237719 more fixes from the IRIX compiler (thanks herb!)
(This used to be commit 02d068ba7d)
2003-08-15 18:54:44 +00:00
Herb Lewis
f24c298f43 rename mutex_t to smb_mutex_t to prevent name collision
(This used to be commit d32f149592)
2003-08-15 17:13:41 +00:00
Andrew Tridgell
cc38992e3f fixed some places where we don't brace (flags & STR_UNICODE)
this fixes the samba4 server with ascii clients
(This used to be commit c770603ac6)
2003-08-15 16:19:48 +00:00
Andrew Tridgell
fe31953678 a few build fixes to try to get irix building
(This used to be commit 4059fbcf02)
2003-08-15 15:16:34 +00:00
Herb Lewis
2efe201fa4 client/client.c - cannot initialize struct with non-const values
include/byteorder.h - fix for IRIX compiler - cannot cast an LVALUE
include/smb_interfaces.h - remove empty structure
source/lib/debug.c - void functions cannot return value
libcli/clifile.c - cannot assign *struct to struct
(This used to be commit 9a72476201)
2003-08-14 21:56:26 +00:00
Andrew Tridgell
ef2e26c91b first public release of samba4 code
(This used to be commit b0510b5428)
2003-08-13 01:53:07 +00:00