1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-17 02:05:21 +03:00

507 Commits

Author SHA1 Message Date
Andrew Tridgell
e2898c098f fix _ptr_ declaration
(This used to be commit 5fed4681edc93405a8b39080adfe72af8beea65d)
2003-12-14 08:44:38 +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
8f6b3eb1a9 fixed a bug handling multiple PDUs being read from a socket at one
time in the rpc server.

started on the framework for the dcerpc authentication server code
(This used to be commit 74041b6a0a60d792e1b220496d66ec27b9ee6c25)
2003-12-14 01:09:10 +00:00
Andrew Tridgell
346a4af6f0 add the ntlmssp calls back into smbtorture on rpc over tcp. The samba4
rpc server doesn't do ntlmssp yet, so this breaks the tests, but that
is the next step.
(This used to be commit ebe29305af82553ef0197d1950b57f8ff8efa78b)
2003-12-13 23:30:43 +00:00
Andrew Tridgell
d262b8c3c7 completed the linkage between the endpoint mapper and the dcerpc
server endpoints. We can now successfully setup listening endpoints on
high ports, then use our endpoint mapper redirect incoming clients to
the right port.

also greatly cleanup the rpc over tcp session handling.
(This used to be commit 593bc29bbe0e46d356d001160e8a3332a88f2fa8)
2003-12-13 23:25:15 +00:00
Andrew Tridgell
8d79eb52f1 make the IO in the dcerpc over TCP server completely async, handling
partial packets on both input and output
(This used to be commit 4f46606af880f6dd86c20b8dc5799102a8e80cc9)
2003-12-13 11:44:28 +00:00
Andrew Tridgell
d4705378ce dcerpc over tcp in the samba4 server now works to some extent. It
needs quite a bit more work to get it finished. The biggest missing
feature is the lack of NTLMSSP which is needed for basic
authentication over tcp
(This used to be commit 9fb0f0369356909c99389e2cbc525be27c08793c)
2003-12-13 10:58:48 +00:00
Andrew Tridgell
8faa77f177 rpcdump.exe now works fine against a Samba4 server
for some reason the epm_Lookup replies can't be parsed by ethereal,
although w2k parses then fine as does the Samba4 NDR code.
(This used to be commit 097e7ca99d947932df5674c36e628ca6b8f31d3a)
2003-12-13 04:46:50 +00:00
Andrew Tridgell
da86d3af31 added the epm_Map() call.
the RPC-EPMAPPER torture test now passes
(This used to be commit fbdcf9ef548aefb1233cbb22a60bff3eacba996f)
2003-12-13 03:23:41 +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
f7065cc0a5 after chatting with jeremy I decided to use a separate directory for
each rpc endpoint implementation, so we will have rpc_server/samr/
rpc_server/lsa/ etc.

this should encourage each pipe to be written in a more complete
manner, as it gives easy ways to split the pipe into multiple modules.
(This used to be commit 30a996b68222de72dd7959a09ff884f266f2fc9a)
2003-12-12 22:48:57 +00:00
Tim Potter
a79be6e377 Small cleanup of test code. Rename enum indexes to be the same name
for EnumKey and EnumValue.
(This used to be commit 817a2fe2e5824e6bb9547697d27c66c0c8356181)
2003-12-12 11:49:29 +00:00
Tim Potter
6fba6f5ca3 Got winreg_EnumValue working - what a mess!
(This used to be commit cc494086e796c0090a92ac36012727c67e3587d1)
2003-12-12 06:29:21 +00:00
Tim Potter
d68d1558f7 Added routines for arrays of uint16s.
(This used to be commit 370512f6644507ed0457de71ab5a50207e00e750)
2003-12-12 06:26:34 +00:00
Andrew Tridgell
fece5b7aba added support for sending bind_nak replies in the rpc server
(This used to be commit 6e7c50bcd9929b6b1400b3155f55e6c9a4a730b3)
2003-12-12 06:12:41 +00:00
Andrew Tridgell
fcd86aa59e added the echo pipe test calls
(This used to be commit 8ad47eff4971e86763f9bd8f298e07d3de7e1089)
2003-12-12 05:40:26 +00:00
Andrew Tridgell
9d8ef74eac we now support pdu fragmentation on both input and output in the rpc
server code
(This used to be commit 4dac9517188f2dba06df481071063543ede89495)
2003-12-12 05:30:00 +00:00
Andrew Tridgell
dab0deae83 added handling of fragmented requests in the rpc server
now we just need to handle fragmented replies ....
(This used to be commit 14005c95d7c6c68f7da0f1ad7b7d7952a04a125b)
2003-12-12 05:01:41 +00:00
Andrew Tridgell
869df3adbd handle the auto-allocation of [ref] output arrays in pidl. This
can simplify rpc servers a lot.
(This used to be commit 28fa62d63d020052a0d2f467f3f9cc6344aaf0ce)
2003-12-12 04:18:21 +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
fcc4efd1ea the next step in the dcerpc server code. Added the link between the
IPC IO routines and the dcerpc endpoint servers.
(This used to be commit 4929c53bc8dddda8a763fdfbcf81a79776d01113)
2003-12-11 09:07:45 +00:00
Andrew Tridgell
e5ed18db65 more portable array of endpoints code from pidl
(This used to be commit c598590a117d4281c530cded4bf9dae16ac1ee76)
2003-12-10 23:49:55 +00:00
Andrew Tridgell
2bde98c0ee the rest of the initial rpc server side infrastructure
(This used to be commit 5fb01b0ec0321724c25669151ea7c20e6ec182d0)
2003-12-10 22:24:33 +00:00
Andrew Tridgell
188b2054a8 initial rpc server side infrastructure
(This used to be commit 3706af7a6cb2090e0baeff5ee54bf49ebda2cce1)
2003-12-10 22:21:04 +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
303454cae1 remove the tdbsam code for now. I have other plans for SAM backends :)
(This used to be commit bbd35e7c31310f012bf328329ad11d4ed62903bc)
2003-12-08 08:21:04 +00:00
Andrew Tridgell
8fa36b1fbc some systems don't have "which" and some systems don't have the "-nt"
flag to test. It's amazing that systems like that are ever sold.
(This used to be commit fe91635da87104544946983c7c63d5c584db614a)
2003-12-08 07:37:38 +00:00
Andrew Tridgell
696c70c2f4 fixed shell scripting error
(This used to be commit b18dce549dd390681e70bc0e290d7ec4e44791c3)
2003-12-08 04:05:57 +00:00
Andrew Tridgell
86d0e4b7f1 cope with yapp not being installed
(This used to be commit e41d95acc016087d77712d214a52813c00923d4d)
2003-12-08 03:57:03 +00:00
Andrew Tridgell
989788a7e8 "make proto" now depends on "make idl_test"
this should give the build farm a fighting chance
(This used to be commit 9246b4a331d7399e201bdf81e73ab7072ea862e7)
2003-12-08 03:54:30 +00:00
Andrew Tridgell
2773e54c98 commit idl.pm now, as many build farm machines don't have 'yapp'
(This used to be commit 2b1300386dc8a3e3e802c8b1dafdbea286cfbb46)
2003-12-08 02:55:28 +00:00
Andrew Tridgell
58714e6bda * reduced the number of grammer conflicts a lot using (arbitrary)
precedence rules

 * build a standalone parser. When we come to distributing Samba4 we
   can just include idl.pm and other developers won't need Parse::Yapp
   installed

 * avoid the recursive make in most cases in build_idl.sh
(This used to be commit be2c2be459d1bed41c113590e70711cb89ad12b9)
2003-12-08 02:24:40 +00:00
Andrew Tridgell
daeffe3f11 don't save the intermediate form to disk unless we need to
(This used to be commit 4e1a5a21a4c8da0d2a23d5ba02168eac1987c260)
2003-12-07 23:47:35 +00:00
Andrew Tridgell
dbf4b65d49 a bit more speed and better line matching in errors
(This used to be commit 788f6c44dbae48e13c9eeaca3bfa3ac7efbbd4e2)
2003-12-07 13:51:23 +00:00
Andrew Tridgell
4e1bac41f4 make pidl a little less verbose
(This used to be commit 76f48affe5d1e8fd96d5dc9af2ec1059f3dd741c)
2003-12-07 13:39:45 +00:00
Andrew Tridgell
55d2c54e03 re-wrote pidl to use Parse::Yapp instead of Parse::RecDescent, This
makes pidl about 3x faster, and also gives us much better error
reporting and a more standard grammer definition that will be much
easier to code in lex/yacc if we want to do so at a later
date. (Parse::Yapp uses essentially the same grammer file as lex/yacc)

It also means we no longer need Parse::RecDescent, which should make
pidl much more portable.
(This used to be commit 4bbaffeb44dca99ad8c0245beb1fddbe01557215)
2003-12-07 13:38:07 +00:00
Andrew Tridgell
e10859fd0a removed an unused file
(This used to be commit 77c622c3acf8bc950afe23e30770a658d018406c)
2003-12-04 11:02:22 +00:00
Andrew Tridgell
42c6a2548a merged more updates from Jim Myers
(This used to be commit 03bf30659640d684073f92d64da6e911edb65a73)
2003-12-04 11:01:58 +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
926240428c * patch based on work by Jim Myers to unify the ioctl handling to be
more like the other major SMB functions

* added SMBntrename code
(This used to be commit f2d3dc9893fa0e089c407fa16ce9ff13587e70cd)
2003-12-04 02:03:06 +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
cdd782782f we can't have two functions with the same name
(This used to be commit 5f1cdc4839a1ba0b18bcd4525847f9c284d181ca)
2003-12-04 01:19:03 +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
Andrew Tridgell
eaa02c7e0d some OSes already have a uint_t
(This used to be commit d7b6aa1e2ec1dc475e1bd5dce1c537720bc65eac)
2003-12-04 01:17:59 +00:00
Andrew Tridgell
2bd7a626a6 my debian unstable box uses "autoconf2.50" - i wish there were a
better way than this!
(This used to be commit ad52fd9baf2180a89634eaaa5af22e9bed1de0a7)
2003-12-04 01:17:00 +00:00
Tim Potter
61a2a79105 Updated some of the function names in the IDL.
(This used to be commit 718ee8bccc2357ffa7ea7cdec1bda6103e0fa24f)
2003-12-03 11:31:29 +00:00
Andrew Bartlett
ec92e2f9a2 My first stab at Samba4 IDL!
This patch adds the samr_CreateUser2 function, which is create_user
in Samba 3.0.

This also adds a torture suite that checks for various valid and invalid
account flags, and that they are persistant.

Also, a patch by Anthony Liguori to fix the build

Andrew Bartlett
(This used to be commit 53e657b74572ab329d4598a85e6989547c324209)
2003-12-03 03:10:10 +00:00
Andrew Tridgell
ea507ee605 added netr_LogonControl2Ex()
I also added IDL for netr_DatabaseRedo() but I don't yet know how it
works

thats the last of the netlogon IDL !
(This used to be commit 387d8f25ff4858943d1389974127d03a58bf4c8f)
2003-12-02 12:16:08 +00:00
Andrew Tridgell
de32d669c6 added netr_DatabaseSync2()
(This used to be commit 0f6af0c4bde0eb3758192b74dab797b558c944a1)
2003-12-02 12:01:10 +00:00
Andrew Tridgell
9ebe4489e7 added netr_LogonControl2() and netr_ServerAuthenticate2()
(This used to be commit cc4123db4baec6a217500dc55113f89e1ea8ef61)
2003-12-02 11:43:09 +00:00