1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-05 09:18:06 +03:00
Commit Graph

468 Commits

Author SHA1 Message Date
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 f2d3dc9893)
2003-12-04 02:03:06 +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
cdd782782f we can't have two functions with the same name
(This used to be commit 5f1cdc4839)
2003-12-04 01:19:03 +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
Andrew Tridgell
eaa02c7e0d some OSes already have a uint_t
(This used to be commit d7b6aa1e2e)
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 ad52fd9baf)
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 718ee8bccc)
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 53e657b745)
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 387d8f25ff)
2003-12-02 12:16:08 +00:00
Andrew Tridgell
de32d669c6 added netr_DatabaseSync2()
(This used to be commit 0f6af0c4bd)
2003-12-02 12:01:10 +00:00
Andrew Tridgell
9ebe4489e7 added netr_LogonControl2() and netr_ServerAuthenticate2()
(This used to be commit cc4123db4b)
2003-12-02 11:43:09 +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
10ad200350 added netr_LogonControl() and netr_GetAnyDCName()
(This used to be commit 17b2be4e85)
2003-12-02 10:34:06 +00:00
Jelmer Vernooij
8af907950f Add script useful for finding checks for headers that are never used
(This used to be commit 0e5fdbc01b)
2003-12-02 10:13:18 +00:00
Andrew Tridgell
02df116352 added netr_GetDcName() - quite a useful call
(This used to be commit 63f46b223e)
2003-12-02 10:08:26 +00:00
Andrew Tridgell
16c688c9ea added netr_AccountSync(), another NT_STATUS_NOT_IMPLEMENTED call
according to w2k3
(This used to be commit b2ca00ebc5)
2003-12-02 10:04:10 +00:00
Andrew Tridgell
9ec4269760 added netr_AccountDeltas(), which w2k3 gives
"NT_STATUS_NOT_IMPLEMENTED" for
(This used to be commit aaf776a1c1)
2003-12-02 09:52:15 +00:00
Andrew Tridgell
c290906b3f make sure we can expand the critical versions structure without
causing crashes in old modules. Thanks to metze for pointing this out!
(This used to be commit 2ee5540629)
2003-12-02 09:16:53 +00:00
Andrew Tridgell
cea22e94fc netr_DatabaseDeltas() now works. We ask for the deltas associated with
the last two sequence numbers on each database.
(This used to be commit f9377c8603)
2003-12-02 08:04:37 +00:00
Tim Potter
64b7cdfc81 Hide gcc error message if using a compiler that can't precompile headers.
(This used to be commit 13d073d805)
2003-12-02 05:38:27 +00:00
Andrew Tridgell
a11727b930 * made some field names more consistent, and worked out that
unknown1 is profile_path

If we are going to use automatic backend database generation then we
are going to have to move to really consistent field names in all our
IDL. Thats the only way we are going to be able to automate it a
lot. That will take a couple of days to do when we get to it.
(This used to be commit 1732aae562)
2003-12-02 05:37:49 +00:00
Andrew Tridgell
c7a1a69d2c don't pollute the structure name space so much
(This used to be commit 107307b4c6)
2003-12-02 05:17:02 +00:00
Andrew Tridgell
399496d9d9 netr_DatabaseSync() now works fully for databases 0, 1 and 2
(This used to be commit c4c09e9413)
2003-12-02 04:59:18 +00:00
Andrew Tridgell
9632db5a19 netr_DatabaseSync() now works fully for database 0
(This used to be commit 360d03bb56)
2003-12-02 04:33:57 +00:00
Andrew Tridgell
f9419900d3 initial netlogon database sync partly works - needs some IDL tweaks
(This used to be commit 75ea276c14)
2003-12-02 04:05:05 +00:00
Andrew Tridgell
d65f0095c9 added netr_DatabaseSync(). It doesn't work as I haven't done schannel
yet, but at least the request is understood by w2k3

Also modified pidl to allow multiple branches in a union to have the
same element. This is used in netlogon.
(This used to be commit 983c0e9683)
2003-12-02 03:06:21 +00:00
Andrew Tridgell
2e70035f87 another big improvement in the credentials API. I think it now
actually makes sense, and as a nice side effect it matches the debug
output of the w2k3 netlogon.log
(This used to be commit 3c7287c24e)
2003-12-02 02:15:33 +00:00
Andrew Tridgell
06ae424835 * netr_ServerPasswordSet() now works - the test suite changes the
machine account password.

  * neater handling on value() options in IDL. The auto-print code
    will now display the right value so you don't need to initialise
    it in your C code
(This used to be commit 3dd978b12b)
2003-12-02 00:31:54 +00:00
Andrew Tridgell
8b30b0071c * another small API change in the credentials code
* don't use static variables in the smbdes code
(This used to be commit e6e0906464)
2003-12-01 22:13:11 +00:00
Andrew Tridgell
f9e2a8af39 neater credentials handling in netlogon client code
(This used to be commit b7d748f499)
2003-12-01 12:41:54 +00:00
Andrew Tridgell
232d6480a7 fixed NTLMSSP_SIGN_VERSION (which I broke earlier today)
(This used to be commit c8ef040774)
2003-12-01 10:07:24 +00:00
Andrew Tridgell
a6cf6cada9 added netr_LogonSamLogon() and test code
(This used to be commit 4fa3ad3ecb)
2003-12-01 09:28:10 +00:00
Andrew Tridgell
b4b0177fdb added netr_ServerAuthenticate() and test code
I would like the netlogon test suite to eventually do a new domain
join using a fake workstation name, then remove itself afterwards, but
for now I'm assuming we are already joined to the domain when the
testsuite runs. This means you need to use the Samba3 net command to
do a join before running RPC-NETLOGON
(This used to be commit 8c7a9446a0)
2003-12-01 04:13:43 +00:00
Andrew Tridgell
5b46116923 added netr_ServerReqChallenge and cleaned up byte array printing
(This used to be commit bb42107dcc)
2003-12-01 03:19:43 +00:00
Andrew Tridgell
b0531a38cc started adding netlogon IDL and test suite
(This used to be commit 3d64eefb46)
2003-12-01 01:41:38 +00:00
Andrew Tridgell
cfd41af814 removed more old code
(This used to be commit fbccf58539)
2003-12-01 00:38:30 +00:00
Andrew Tridgell
8d92b0a392 got rid of more group mapping code
(This used to be commit 2955ce55ee)
2003-12-01 00:29:13 +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
Tim Potter
d944b9780a Added EnumPrinterDriver, GetPrinterDriver (still in progress)
(This used to be commit a818439b59)
2003-11-30 11:57:40 +00:00
Andrew Tridgell
c95ae2d890 more unused headers
(This used to be commit 39b726d068)
2003-11-30 11:45:08 +00:00
Andrew Tridgell
e01b018359 got rid of a bunch of unused header files (now replaced with IDL
generated headers)
(This used to be commit 7f2ac326f9)
2003-11-30 11:39:03 +00:00
Tim Potter
2bb7ff5915 GetPrinterDataEx, SetPrinterDataEx, DeletePrinterDataEx.
(This used to be commit e8367f5735)
2003-11-28 11:50:33 +00:00
Tim Potter
d55fc1c9f2 Add SetPrinterData, DeletePrinterData.
(This used to be commit ea534f82d0)
2003-11-28 10:34:58 +00:00
Andrew Tridgell
f83f0cb060 fixed some warnings
(This used to be commit 1c2b8a93c5)
2003-11-28 09:05:44 +00:00
Andrew Tridgell
7ec0ead48a the beginnings of an automated tool for working out IDL properties of
a pipe. I'm not sure how possible this will be without lots of human
intervention, but its an interesting thing to try.
(This used to be commit d5afe7c6a8)
2003-11-28 08:51:09 +00:00
Tim Potter
b0ba0462a4 Fix bug in EnumPrinterData test.
Implement GetPrinterData RPC.
(This used to be commit 270c4fe389)
2003-11-28 06:39:06 +00:00
Andrew Tridgell
606514b077 make sure there is at least one valid interface in an IDL file
(This used to be commit 86ab394806)
2003-11-28 05:32:40 +00:00
Andrew Tridgell
ba33beec05 * added a bunch of placeholder IDL files
* allow for an interface to list its endpoints in the IDL file, so we
   can automatically make the server listen on the right pipes, and
   can scan pipes more easily (I don't take advantage of this yet,
   just putting the infrastructure in place)
(This used to be commit c8b8480244)
2003-11-28 05:20:11 +00:00
Tim Potter
d419464d87 Added EnumJobs, GetJob, SetJob RPCs.
(This used to be commit a06cbbbf1f)
2003-11-28 05:02:32 +00:00
Andrew Tridgell
07fdc2c73e * support multiple interfaces in one IDL file in pidl
* make far more generated functions static

 * get rid of gen_rpc, and include the client calls in ndr_*.c

 * added placeholder IDL for a number of intefaces (dcom, wzcsvc, browser etc)
(This used to be commit a2bdf0be01)
2003-11-28 03:47:45 +00:00
Andrew Tridgell
df5949efb4 added auto-generation of the IDL interface tables. This makes two less
places that need to be edited when someone adds a new IDL file.
(This used to be commit ccd9ddeed6)
2003-11-28 00:48:05 +00:00
Tim Potter
abff8aac56 Implemented SetForm RPC.
(This used to be commit bdb0dfc370)
2003-11-27 20:55:13 +00:00
Tim Potter
6aee8274ef Add DeleteForm, start cleaning up tests.
(This used to be commit 10b31623fd)
2003-11-27 09:50:25 +00:00
Andrew Tridgell
c7c9e61987 more epmapper and mgmt magic
protocol 0x1f is interesting - its ncacn_http !
(This used to be commit e3d40e3da6)
2003-11-27 07:28:46 +00:00
Tim Potter
4884a97f3b Implemented AddForm RPC. The mystery of the useless_ptr has been
solved.  It was a pointer in a union member.

RPC-SPOOLSS tests a bit messy and could do with a cleanup.
(This used to be commit cf8cd44852)
2003-11-27 06:15:06 +00:00
Andrew Tridgell
ab3d728b7e added an rpc scanner. This prints messages like this:
uuid 82273fdc-e32a-18c3-3f78-827929dc23ea  version 0x0000:0x0000  'eventlog'
        24 calls available
        WARNING: local IDL defines 4 calls

when all the WARNINGs are gone then we know we have all the calls :)
(This used to be commit f5821b2468)
2003-11-27 05:34:28 +00:00
Andrew Tridgell
61bb3c865c use EPMAPPER_PORT constant instead of 135
(This used to be commit 953ab587dc)
2003-11-27 04:04:31 +00:00
Andrew Tridgell
a9203bf02b a couple of tidyups
* don't try to map the epmapper uuid !

 * some preliminary support for alter context pdus
(This used to be commit f9857e5685)
2003-11-27 04:02:15 +00:00
Andrew Tridgell
1cab707f0b switched to WERROR return codes in the management IDL
(This used to be commit a81f659e9e)
2003-11-27 04:01:18 +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
3e0501082c fixed default port handling pointed out by Tom Jansen
(This used to be commit 8246e6ca0b)
2003-11-26 21:57:29 +00:00
Andrew Tridgell
1ca1b85c4c by default sign RPC over TCP but not RPC over SMB. I will add command line control soon
(This used to be commit 215852116c)
2003-11-26 12:29:08 +00:00
Tim Potter
ee67d68f1c Implemented EnumForms and GetForm.
(This used to be commit 822750592c)
2003-11-26 06:26:18 +00:00
Andrew Tridgell
2edb73fbe9 added a link to opengroup PDU definitions
(This used to be commit 939d832e5e)
2003-11-26 04:32:39 +00:00
Andrew Tridgell
d49d528618 show an error when the epmapper fails to find an interface
(This used to be commit 448dead14d)
2003-11-26 04:32:04 +00:00
Tim Potter
33844ade40 Add bind nak to dcerpc_payload.
(This used to be commit 0deb9179f0)
2003-11-26 04:23:24 +00:00
Andrew Tridgell
c168ca2157 transfer syntax V2 isn't as magic as I thought
(This used to be commit bb3bb5dc8d)
2003-11-26 03:43:04 +00:00
Andrew Tridgell
fca5f78032 use the IDL defined NDR version number
(This used to be commit 00e0c14b76)
2003-11-26 03:41:06 +00:00
Andrew Tridgell
fffd741a7a added auto-determination of the DCERPC over TCP port number by asking
the servers endpoint mapper
(This used to be commit 4abf5376b0)
2003-11-26 03:36:17 +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
Andrew Tridgell
06942f3ddb added some paranoid checking for enums
(This used to be commit 3492f37b0b)
2003-11-26 01:13:00 +00:00
Tim Potter
49a85dc890 Spoolss functions return WERROR not NTSTATUS.
Start writing idl for forms RPCs.
(This used to be commit 9274ef60b6)
2003-11-25 11:24:49 +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
Jelmer Vernooij
97dbe926ec 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 3433c4c71f)
2003-11-25 02:09:40 +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
Andrew Tridgell
7befc0648e initial implementation of dcerpc over tcp. RPC-EPMAPPER works, now to
add epm_Map calls and support the rest of the pipes
(This used to be commit 39add48158)
2003-11-24 12:40:47 +00:00
Andrew Tridgell
bbb11d4a0d * prepared the dcerpc subsystem for adding the RPC over TCP transport
* fixed a uninitialised variable bug in pidl (found by valgrind)
(This used to be commit 8bce61b8af)
2003-11-24 11:45:33 +00:00
Andrew Tridgell
5e64ecac2f removed the STFS specific flags in the Makefile.
Jim, we are going to need to redo the STFS backend as a module, as
otherwise maintaining it outside of the samba.org tree will become too
awkward.
(This used to be commit 0fedafd7a0)
2003-11-24 10:37:24 +00:00
Andrew Tridgell
f5fe95abd2 added tests for epm_Map endpointer map calls
(This used to be commit 570ad78525)
2003-11-24 10:15:17 +00:00
Andrew Tridgell
7d36545d33 give far more detail in the EPMAPPER results
(This used to be commit 4203019698)
2003-11-24 05:28:10 +00:00
Andrew Tridgell
3114289c64 make sure we don't try to update a constant
(This used to be commit 4a6034f2e3)
2003-11-24 03:31:03 +00:00
Andrew Tridgell
e4773b184c added tests for the remaining calls on the rpc management interface
(This used to be commit 00f9b0e120)
2003-11-24 03:21:49 +00:00
Andrew Tridgell
c7fd83d0b2 added the dcerpc remote management interfaces as mgmt.idl, and wrote a
test suite. The test suite dumps all of the interfaces available on
all pipes. There sure are a lot more interfaces on w2k3 than w2k !
(This used to be commit f94bc07990)
2003-11-24 01:24:29 +00:00
Andrew Tridgell
27b1dbaea6 * better diagnostics in ndrdump
* added samr_Connect2()
(This used to be commit 6b262ca37c)
2003-11-23 21:51:24 +00:00
Andrew Tridgell
3d0e6b3835 added a tool called 'ndrdump' that allows you to dump NDR data
according to the current IDL taking the data from a file. In
combination with a little hack to ethereal to extract data this is a
quite powerful IDL development tool.
(This used to be commit 229a325c3c)
2003-11-23 13:44:19 +00:00
Tim Potter
66694c571f Modify WINREG test program to recursively enumerate keys in all known
hives.  Limit the recursion depth to ensure the test doesn't run too long.
(This used to be commit 152af383b8)
2003-11-23 11:57:15 +00:00
Tim Potter
c32a03ad12 Removed unused variable.
(This used to be commit 40ccaeefed)
2003-11-23 11:05:31 +00:00
Tim Potter
29ee36d0c9 Check NT_STATUS code from dcerpc call function before checking the
WERROR code.
(This used to be commit b4792b7b31)
2003-11-23 10:51:39 +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
1b9452ffc5 fixed the handling of value() attributes on scalars in IDL that
reference other elements of the same structure
(This used to be commit d8d17be290)
2003-11-23 07:14:17 +00:00
Tim Potter
03eda90641 Actually call right function name.
(This used to be commit 634ea43720)
2003-11-23 06:54:18 +00:00
Tim Potter
8cd945501b Call enumkey for tridge.
(This used to be commit cc71bd2a90)
2003-11-23 06:38:37 +00:00
Tim Potter
136c2d7961 String termination fix.
Re-arrange winreg tests - currently it's failing with an input validation
error on tridge's test pull/push test code.
(This used to be commit 8f154f8b9f)
2003-11-23 06:31:10 +00:00
Tim Potter
aa42dd6269 Strings in the winreg pipe are terminated.
(This used to be commit 1f56d4cd04)
2003-11-23 06:29:11 +00:00
Andrew Tridgell
800d3e0134 ooh, this is fun!
I have recoded the core dcerpc packet structures (all the PDUs etc) in
terms of IDL, which means we now use pidl to generate all the code for
handling the most basic dcerpc packets. This is not normally possible
as it isn't completely valid NDR, but pidl has a number of extensions
that make it quite easy.

This also means we get the server side dcerpc
marshalling/unmarshalling code for free.
(This used to be commit 92bcad0258)
2003-11-23 06:28:12 +00:00
Andrew Tridgell
02dc7536dd save about 35% of the time for "make idl" by processing multiple IDL
files at once, which means less perl startup time.
(This used to be commit 64b2c67e47)
2003-11-23 03:42:20 +00:00
Andrew Tridgell
231ae2430e get rid of some more unused headers
(This used to be commit 48276c768b)
2003-11-23 03:10:50 +00:00
Andrew Tridgell
11e9184895 by using a single proto.h we gain another factor of 4 in the speed of
"make proto"
(This used to be commit f6bb118799)
2003-11-23 03:03:27 +00:00