1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-26 10:04:02 +03:00

5946 Commits

Author SHA1 Message Date
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 f77990cf2496f72d02566f09477349436be3dfcd)
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 24dc237e109f6dce69814b22e0fb7878a7f6bfa8)
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 61ec710518469876ccc48d57b5fee5d6ead3d482)
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 857e76ef6b891c199534db6ce229410340286461)
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 fffc6cfb6b9946155d209dd14faa79c5b9d43d1d)
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 917e45dafd5be4c2cd90ff425b8d6f8403122349)
2004-01-08 22:55:27 +00:00
Andrew Tridgell
f4307200ac "subsystems" should be static
(This used to be commit 64cf9b3fd3ad971973f6f1d73b924af225252837)
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 f740b02ac36780740700909da2bcdf672cb146cb)
2003-12-19 03:59:27 +00:00
Andrew Tridgell
938eef5beb removed some unused functions
(This used to be commit 09d17d705a6e378a7c1a40b29d2e091200b6d757)
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 9b1c76a8e9e953e051072441f8938ee17a674d35)
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 a0a51af6b746b1f82faaa49d33c17fea9d708fb0)
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 bb1af644a5a7b188290ce36232f255da0e5d66d2)
2003-12-16 09:02:58 +00:00
Andrew Tridgell
b2b9ea5429 enable rep_inet_ntoa() for non-pthread builds
(This used to be commit f50d4b602af73045e5b15d62fd24224eba849fd1)
2003-12-16 04:10:47 +00:00
Andrew Tridgell
1abd0be41e more mutex portability.
(This used to be commit 42dd8d888a1d4c09aebb199e8636f49df6d2e36a)
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 f4abd20b8437703211676fb12ea23af8f0e4642a)
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 ac8a23af8c67d2e39bb6cfd409c50f1f429cf271)
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 20458556017f426ab57ca9a9d098cacecefbdcff)
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 3f85f9b782dc17417baf1ca557fcae22f5b6a83a)
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 46e0a358198eeb9af1907ee2a29025d3ab23b6d1)
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 f3eaf270e57d8d2e2157a6a36e260860c7f71c19)
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 126fcd4a76ac029ee4f662ed41b84c791406c324)
2003-12-04 09:52:14 +00:00
Andrew Tridgell
b8cbd9181e don't use c++ comments
(This used to be commit 3d48fa8f37a510959c8958b5c025c7f19f632c54)
2003-12-04 01:59:24 +00:00
Andrew Tridgell
0e958fbe47 don't use c++ style comments
(This used to be commit b11a19cc767e20189710d7d9428168ed74c59d1c)
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 369a9c1ac1ff94a1d3f51eac20a39577f9cf2155)
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 9b02b486ef5906516f8cad79dbff5e3dd54cde66)
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 829b87f30d5f4cc7174b716f3354982d84af4818)
2003-11-30 23:40:04 +00:00
Andrew Tridgell
f83f0cb060 fixed some warnings
(This used to be commit 1c2b8a93c50e3d5485732a2f06847166e883f939)
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 8fe4058711c12b8116982357723c36e862aa0bef)
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 abbc9993b8f7eb9f57e079db1d0b170d0b9aa443)
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 c18c9b5585a3e5f7868562820c14f7cb529cdbcd)
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 7512b9ab1a8b3103f7a6c13f736353c46a26b668)
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 8a82050fd6f45bcdb31c2c365eaed5fc12599e4f)
2003-11-24 13:19:00 +00:00
Tim Potter
c32a03ad12 Removed unused variable.
(This used to be commit 40ccaeefed1a3baea356254795c698794cb81384)
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 7ae329e6630a07d29f83b6dd4572d26ab8a18c71)
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 04eb12b56c653f98801ab29411f47564ab32fa58)
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 26238b0f8a5752bb0f611c4aa492b964e419209a)
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 947b9f8ced486d34ee6710a921fb985ea14e2bb1)
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 874bf4689d2816474b33eb1ac21530186319ed62)
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 89f7261ba589e5760b3cf9c3594eab9d7198dd7e)
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 81c941ba8ae33567d79b4bb0bb5928f5f6077b76)
2003-08-15 20:19:30 +00:00
Andrew Tridgell
de10237719 more fixes from the IRIX compiler (thanks herb!)
(This used to be commit 02d068ba7d81d6db25122144981c63f74ad44025)
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 d32f14959277a5b7d1302638b65ff1fc568f08a9)
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 c770603ac6c3331a4ac79a650cbbbeb21c778137)
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 4059fbcf028e105c9377ec5a302623ae282e33f1)
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 9a724762012f55d21d44ea87add7daf21f7414d1)
2003-08-14 21:56:26 +00:00
Andrew Tridgell
ef2e26c91b first public release of samba4 code
(This used to be commit b0510b5428b3461aeb9bbe3cc95f62fc73e2b97f)
2003-08-13 01:53:07 +00:00