1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-27 03:21:53 +03:00
Commit Graph

260 Commits

Author SHA1 Message Date
Stefan Metzmacher
a1b295ed48 r14256: - rename smb_file -> smb_handle
- move it into the in/out substructs again
- allow file.path only on smb_fileinfo/smb_setfileinfo

metze
(This used to be commit be6d5298a2)
2007-10-10 13:57:06 -05:00
Stefan Metzmacher
307e43bb56 r14173: change smb interface structures to always use
a union smb_file, to abtract
- const char *path fot qpathinfo and setpathinfo
- uint16_t fnum for SMB
- smb2_handle handle for SMB2

the idea is to later add a struct ntvfs_handle *ntvfs
so that the ntvfs subsystem don't need to know the difference between SMB and SMB2

metze
(This used to be commit 2ef3f59709)
2007-10-10 13:56:57 -05:00
Stefan Metzmacher
e6023d44bc r14140: block SIGPIPE in smbtorture
hopefully this fixed the problems with BASE-NEGNOWAIT

metze
(This used to be commit 45441954d0)
2007-10-10 13:56:54 -05:00
Stefan Metzmacher
a9fd2d7f42 r14040: report errors better
metze
(This used to be commit 10cd4dbac9)
2007-10-10 13:52:38 -05:00
Stefan Metzmacher
959c419182 r14039: as samba4 drops the connection on multiple negprot requests
make the BASE-NEGNOWAIT tests more robust.

was it correct that the important thing to test in this
test is that the 2nd connection works fine?

metze
(This used to be commit f941e74864)
2007-10-10 13:52:37 -05:00
Jelmer Vernooij
4ac2be9958 r13924: Split more prototypes out of include/proto.h + initial work on header
file dependencies
(This used to be commit 1228358767)
2007-10-10 13:52:24 -05:00
Jelmer Vernooij
ba564a901e r13903: Don't generate prototypes for modules and binaries in include/proto.h by
default.
(This used to be commit c80a8f1102)
2007-10-10 13:52:21 -05:00
Andrew Tridgell
ec16146601 r13853: fixed the BASE-NEGNOWAIT test to not fail with a sigpipe if the server
drops the connection on multiple negprots
(This used to be commit 34b2855a62)
2007-10-10 13:52:16 -05:00
Jelmer Vernooij
5d0aa16dfc r13839: Use registration mechanism for backends as well (in the same sense
my previous patch added it for modules). This is the next step towards
LDB backends and modules as run-time loadable .so files.
(This used to be commit fb2f70de4f)
2007-10-10 13:52:14 -05:00
Jelmer Vernooij
dfc517b053 r13658: More moving around of files:
- Collect the generic utility functions into a lib/util/ (a la GLib is
		for the GNOME folks)
 - Remove even more files from include/
(This used to be commit ba62880f5b)
2007-10-10 13:52:05 -05:00
Stefan Metzmacher
f2f3e1801b r13627: split the NBT-WINSREPLICATION tests into multiple tests
metze
(This used to be commit ae559920e1)
2007-10-10 13:52:02 -05:00
James Peach
716b0ee234 r13373: Implement the -p option for smbtorture.
(This used to be commit fc17a50b48)
2007-10-10 13:51:51 -05:00
Stefan Metzmacher
1a53c1dc92 r13346: use private proto header files for the torture tests
metze
(This used to be commit 67837dbd2b)
2007-10-10 13:51:47 -05:00
Jelmer Vernooij
713b296441 r13210: Revert my named pipes patch until it passes not just 'make quicktest' but
also 'make test'
(This used to be commit e3d0676aee)
2007-10-10 13:51:35 -05:00
Jelmer Vernooij
ad6303f82f r13208: Clearly separate named pipes from the IPC$ NTVFS type.
This allows the easy addition of additional named pipes and removes the
circular dependencies between the CIFS, RPC and RAP servers.

Simple tests for a custom named pipe included.
(This used to be commit 898d15acbd)
2007-10-10 13:51:34 -05:00
Jelmer Vernooij
e53f420552 r13182: Add first bits of browsing testsuite.
(This used to be commit 841fb3d4e7)
2007-10-10 13:51:32 -05:00
Volker Lendecke
53091bf83e r12764: Add a test for lsa_lookup. This will be expanded when I get around to add
trusted domains.

Volker
(This used to be commit 8b8bb85ad3)
2007-10-10 13:49:51 -05:00
Jelmer Vernooij
78c50015bb r12694: Move some headers to the directory of the subsystem they belong to.
(This used to be commit c722f665c9)
2007-10-10 13:49:39 -05:00
Jelmer Vernooij
046a54f963 r12622: Move table.c prototypes to seperate header to prevent circular dependencies
with proto.h
(This used to be commit 9e0ba38037)
2007-10-10 13:49:06 -05:00
Jelmer Vernooij
aa9f67163c r12620: Get rid of automatically generated lists of init functions of subsystems.
This allows Samba libraries to be used by other projects (and parts of
Samba to be built as shared libraries).
(This used to be commit 44f0aba715)
2007-10-10 13:49:06 -05:00
Jelmer Vernooij
d4de4c2d21 r12608: Remove some unused #include lines.
(This used to be commit 70e7449318)
2007-10-10 13:49:03 -05:00
Jelmer Vernooij
46aa296cc9 r12592: Remove some useless dependencies
(This used to be commit ca8db1a0cd)
2007-10-10 13:49:00 -05:00
Jelmer Vernooij
19d606ce18 r12584: Move NDR tests from rpc/ to local/, add to list of tests
to run for 'make all'
(This used to be commit e71cd4778b)
2007-10-10 13:48:59 -05:00
Jelmer Vernooij
b9fa7bc48e r12558: Support [flag(NULLTERM)] on [charset()] arrays
(This used to be commit 2e5a6eb219)
2007-10-10 13:47:57 -05:00
Jelmer Vernooij
2cd5ca7d25 r12542: Move some more prototypes out to seperate headers
(This used to be commit 0aca5fd513)
2007-10-10 13:47:55 -05:00
Jelmer Vernooij
acd6a086b3 r12510: Change the DCE/RPC interfaces to take a pointer to a
dcerpc_interface_table struct rather then a tuple of interface
name, UUID and version.

This removes the requirement for having a global list of DCE/RPC interfaces,
except for these parts of the code that use that list explicitly
(ndrdump and the scanner torture test).

This should also allow us to remove the hack that put the authservice parameter
in the dcerpc_binding struct as it can now be read directly from
dcerpc_interface_table.

I will now modify some of these functions to take a dcerpc_syntax_id
structure rather then a full dcerpc_interface_table.
(This used to be commit 8aae0f168e)
2007-10-10 13:47:48 -05:00
Jelmer Vernooij
6aafed9600 r12499: Move smb_build.h out of includes.h
(This used to be commit c92ace494f)
2007-10-10 13:47:45 -05:00
Volker Lendecke
cfea76ac9b r12405: I'm afraid I can't take care of the xplogin test in the near future, so remove
it.

I'll add it again later when I have more time for it.

Volker
(This used to be commit 84ae166e91)
2007-10-10 13:47:34 -05:00
Stefan Metzmacher
37cc5873e0 r12075: remove NBT-WINSREPLICATION-QUICK test, as we now pass the NBT-WINSREPLICATION
test

metze
(This used to be commit 224dab45ab)
2007-10-10 13:47:06 -05:00
Andrew Tridgell
3aaa6ff496 r12008: added a simple LOCAL-SDDL test suite. Only one example so far. Will be
filled in with more examples as I expand the sddl parsing code.
(This used to be commit 8f80e483a3)
2007-10-10 13:46:58 -05:00
Andrew Tridgell
3294bf59aa r11850: added a test suite for the SMB2 find calls
(This used to be commit 3ac32d802b)
2007-10-10 13:46:38 -05:00
Andrew Tridgell
c7c4dc5b98 r11838: lower the default numops in smbtorture. When people want lots of
repeated operations they should manually specify --num-ops=XX

this should speed up a few of the build farm tests
(This used to be commit d91506e1ce)
2007-10-10 13:46:37 -05:00
Andrew Tridgell
fc04e3e795 r11801: - added basic SMB2 find support
- added SMB2-SCANFIND test

- cleaned up continue flags in EAs and find requests
(This used to be commit 8792bc07d9)
2007-10-10 13:46:29 -05:00
Andrew Tridgell
c8c7fb2492 r11775: added support for creating files on SMB2 with initial EA lists and an ACL
(This used to be commit ff19709298)
2007-10-10 13:46:25 -05:00
Andrew Tridgell
d931455e6e r11773: added a SMB2-SETINFO test suite. This tests the following levels:
BASIC_INFORMATION
DISPOSITION_INFORMATION
ALLOCATION_INFORMATION
END_OF_FILE_INFORMATION
POSITION_INFORMATION
MODE_INFORMATION
(This used to be commit 8804b6a7eb)
2007-10-10 13:46:24 -05:00
Andrew Tridgell
b51703baf1 r11730: added parsing and tests for a bunch more SMB2 getinfo levels
(This used to be commit ca65bf0235)
2007-10-10 13:46:18 -05:00
Andrew Tridgell
67a85b3f1b r11697: - added a generic SMB2 getinfo call
- added a SMB2-SCANGETINFO test for scanning for available info levels

- added names for the info levels I recognise to smb2.h
(This used to be commit fe5986067e)
2007-10-10 13:46:15 -05:00
Andrew Tridgell
4d74d259d8 r11695: added SMB2-SCAN torture test for scanning for active SMB2 opcodes
(This used to be commit aa3bcf952c)
2007-10-10 13:46:14 -05:00
Andrew Tridgell
686070a147 r11663: start of a SMB2 torture test. Just does a negprot and prints some fields for now.
test name is SMB2-CONNECT
(This used to be commit 13f27fadca)
2007-10-10 13:46:09 -05:00
Andrew Tridgell
b18ed75a75 r11660: - the libcli/raw/ lib no longer uses the SMBCLI_REQUEST_SEND state, or
the associated send queue

- fixed negnowait to not watch for the SMBCLI_REQUEST_SEND state
(This used to be commit d19235ede5)
2007-10-10 13:46:08 -05:00
Stefan Metzmacher
f8a3335cb4 r11091: add a NBT-WINSREPLICATION-QUICK test that passed the current samba4 server
metze
(This used to be commit 772467c8d4)
2007-10-10 13:44:47 -05:00
Stefan Metzmacher
2d29354a35 r10865: merge branches/SOC/SAMBA_4_0 into main the main SAMBA_4_0 tree
metze

 r8017@SERNOX:  metze | 2005-06-30 13:44:23 +0200
 create the SAMBA_4_0 branch for the Summer Of Code Project

 metze

 r8730@SERNOX:  brad | 2005-07-24 03:09:48 +0200
 Branching Samba 4
 r8731@SERNOX:  brad | 2005-07-24 06:39:00 +0200
 added 'make installmisc' to howto.txt
 added existing 'compression' option to level8 drsuapi torture test
 added new 'neighbour_writeable' option to level8 drsuapi torture test
 r8732@SERNOX:  brad | 2005-07-24 06:42:38 +0200
 added metze's dssync patch as source/torture/rpc/dssync.c
 r8739@SERNOX:  brad | 2005-07-25 00:24:46 +0200
 added a test called RPC-DSSYNC to config.mk
 hacking at dssync.c in an attempt to make it compile
 r8754@SERNOX:  brad | 2005-07-25 15:19:21 +0200
 Changing dssync.c to use ldb routines for accessing ldap rather than raw ldap calls.

 r8765@SERNOX:  brad | 2005-07-26 03:35:38 +0200
 more ldb changes to test_CompleteJoin(), it mostly kind of almost works now!

 r8766@SERNOX:  brad | 2005-07-26 03:56:00 +0200
 Trying to fix the crazy nesting in the branch
 r8769@SERNOX:  brad | 2005-07-26 04:48:29 +0200
 merging latest changes
 r8770@SERNOX:  brad | 2005-07-26 04:53:43 +0200
 removing nested branch
 r8793@SERNOX:  jerry | 2005-07-27 05:04:57 +0200
 merging on of Brad missing changes from the nested 4.0 branch debacle
 r8794@SERNOX:  jerry | 2005-07-27 05:14:42 +0200
 syncing up with the main 4_0 branch for Brad
 r8842@SERNOX:  brad | 2005-07-29 00:26:30 +0200
 merging changes from branches/SAMBA_4_0
 r8850@SERNOX:  brad | 2005-07-29 21:07:57 +0200
 Bringing my tree up to date
 r8851@SERNOX:  brad | 2005-07-30 00:48:04 +0200
 making dssync.c more ldb-centric, reverted samlogon.c from rev. 8845 to get my branch to compile again.
 r8856@SERNOX:  brad | 2005-07-30 03:20:33 +0200
 I think I have the ldb code down in test_CompleteJoin (not complete yet though)
 r8860@SERNOX:  brad | 2005-07-30 07:08:13 +0200
 Changed comments to C style /**/ (thanks Richard), some more changes to test_CompleteJoin().
 r8862@SERNOX:  brad | 2005-07-31 04:45:32 +0200
 Bringing the SOC/SAMBA_4_0 branch up to date.
 r8863@SERNOX:  brad | 2005-07-31 20:00:41 +0200
 Updated some missing files from the branch
 r8864@SERNOX:  brad | 2005-07-31 20:25:50 +0200
 Removing autogenerated files from branch
 r8865@SERNOX:  brad | 2005-07-31 20:43:58 +0200
 last of the unneeded files in SOC/SAMBA_4_0
 r9004@SERNOX:  brad | 2005-08-03 18:51:23 +0200
  r5214@buttercup:  j0j0 | 2005-08-03 10:44:30 -0600
   r@buttercup:  j0j0 | 2005-08-02 22:54:13 -0600
   creating a local branch of branches/SAMBA_4_0

 r9013@SERNOX:  brad | 2005-08-03 20:57:48 +0200
  r5228@buttercup:  j0j0 | 2005-08-03 13:00:11 -0600
  Fixing differences between this branch and /branches/SAMBA_4_0

 r9014@SERNOX:  brad | 2005-08-03 21:18:05 +0200
  r5231@buttercup:  j0j0 | 2005-08-03 13:23:12 -0600
  Updating config.mk so that smbtorture builds again

 r9061@SERNOX:  brad | 2005-08-04 18:17:36 +0200
  r5249@buttercup:  j0j0 | 2005-08-03 21:01:02 -0600
  Start using libnet_Join() for DC join.

 r9062@SERNOX:  brad | 2005-08-04 18:17:47 +0200
  r5250@buttercup:  j0j0 | 2005-08-04 10:21:34 -0600
  Some more work towards performing a dc join.

 r9064@SERNOX:  brad | 2005-08-04 18:53:51 +0200
  r5253@buttercup:  j0j0 | 2005-08-04 10:53:00 -0600
  Fixed a bug (passing a TALLOC_CTX to libnet_context_init() )

 r9069@SERNOX:  brad | 2005-08-04 21:59:55 +0200
  r5279@buttercup:  j0j0 | 2005-08-04 14:04:55 -0600
  Some more work on the domain join

 r9117@SERNOX:  brad | 2005-08-05 16:50:26 +0200
  r5281@buttercup:  j0j0 | 2005-08-05 08:55:58 -0600
  Committing minor changes before merge

 r9180@SERNOX:  brad | 2005-08-07 17:25:25 +0200
  r5314@buttercup:  j0j0 | 2005-08-07 09:30:12 -0600
  Reworked libnet_join to use two join levels, AUTOMATIC and SPECIFIED.

 r9181@SERNOX:  brad | 2005-08-07 17:25:36 +0200
  r5315@buttercup:  j0j0 | 2005-08-07 09:31:22 -0600
  Working with libnet_Join(), code cleanup needed in the near future.

 r9192@SERNOX:  brad | 2005-08-07 21:40:22 +0200
  r5373@buttercup:  j0j0 | 2005-08-07 13:46:09 -0600
  Some code cleanup to make things a little more readable.

 r9249@SERNOX:  brad | 2005-08-12 01:31:48 +0200
  r5375@buttercup:  j0j0 | 2005-08-11 17:38:44 -0600
  Split libnet_JoinDomain() into libnet_JoinDomain() and libnet_JoinADSDomain().

 r9256@SERNOX:  brad | 2005-08-12 04:55:11 +0200
  r5413@buttercup:  j0j0 | 2005-08-11 21:02:27 -0600
  Clean up libnet_JoinADSDomain() a little, added a comment to the test_join struct.

 r9314@SERNOX:  brad | 2005-08-16 03:53:20 +0200
  r5436@buttercup:  j0j0 | 2005-08-15 20:01:21 -0600
  libnet_JoinDomain() should honour LIBNET_JOIN_TORTURE now.
  torture_join_domain() should properly use libnet_JoinDomain().
  dssync.c uses torture_join_domain() again.

 r9351@SERNOX:  brad | 2005-08-17 07:15:31 +0200
  r5438@buttercup:  j0j0 | 2005-08-16 23:23:58 -0600
  Removed LIBNET_JOIN_TORTURE level, as it became unnecessary once libnet_Join_primary_domain() handled netbios names better.
  Corrected libnet_JoinDomain() and libnet_JoinADSDomain().

 r9352@SERNOX:  brad | 2005-08-17 07:24:49 +0200
  r5440@buttercup:  j0j0 | 2005-08-16 23:33:25 -0600
  Fixed a typo.

 r9354@SERNOX:  metze | 2005-08-17 10:28:25 +0200
 remove object files from svn

 metze
 r9376@SERNOX:  brad | 2005-08-18 05:15:48 +0200
  r5476@buttercup:  j0j0 | 2005-08-17 21:24:33 -0600
  Proof that I shouldn't code when i'm tired (silly bugfixes).

 r9405@SERNOX:  brad | 2005-08-19 22:50:10 +0200
  r5500@buttercup:  j0j0 | 2005-08-19 14:56:25 -0600
  Get dssync.c compiling again after merge (ldb_dn changes from rev. 9391).

 r9407@SERNOX:  brad | 2005-08-20 03:22:42 +0200
  r5502@buttercup:  j0j0 | 2005-08-19 19:28:22 -0600
  libnet/libnet_join.c
  Some more fixes so ldb uses ldb_dn's.

  torture/rpc/dssync.c
  Some debugging printf()'s.
  ldb_dn fixes.

  torture/rpc/testjoin.c
  Change torture_join_domain() to use libnet_JoinDomain() rather than libnet_Join().
  Some more debugging statements.

  I'm not sure why, but GUID_all_zero(user_handle.uuid) is returning true in torture_leave_domain() when called it from torture_destroy_context() in torture/rpc/dssync.c.
  That's what i'm working out now.

 r9427@SERNOX:  brad | 2005-08-20 18:38:29 +0200
  r5504@buttercup:  j0j0 | 2005-08-20 10:44:52 -0600
  Some bugfixes.
  Removed a bunch of debugging code.
  torture_leave_domain() works again! not 100% perfect yet though...

 r9428@SERNOX:  brad | 2005-08-20 19:09:26 +0200
  r5506@buttercup:  j0j0 | 2005-08-20 11:15:54 -0600
  Restructure torture_join_domain() so that it joins itself, removes itself, and joins itself to the domain again to ensure that its account information is all current and as expected.

 r9452@SERNOX:  brad | 2005-08-21 19:33:51 +0200
  r5508@buttercup:  j0j0 | 2005-08-21 11:40:36 -0600
  Bugfixes, trying to get things straight between contexts.

 r9467@SERNOX:  brad | 2005-08-22 04:00:48 +0200
  r5510@buttercup:  j0j0 | 2005-08-21 20:06:55 -0600
  Another round of bugfixing.

 r9521@SERNOX:  brad | 2005-08-23 15:26:44 +0200
  r5596@buttercup:  j0j0 | 2005-08-23 07:33:06 -0600
  Merging changes

 r9524@SERNOX:  metze | 2005-08-23 16:09:42 +0200
 - fix the build caused by changes in the main samba4 tree,
 - add an option "dssync:german=yes" to allow me to run against my german w2k3 server
   this should be replaces by CLDAP calls to get the Default-First-Site-Name dynamicly
 - remove some temporary comments, as DsAddEntry works now

 metze
 r9528@SERNOX:  metze | 2005-08-23 18:22:22 +0200
 the RPC-DSSYNC test is now able to fetch the whole tree,
 including the unicodePwd, ntPwdHistory fields

 metze
 r9559@SERNOX:  brad | 2005-08-24 04:11:47 +0200
  r5612@buttercup:  j0j0 | 2005-08-23 20:19:12 -0600
  Some fixes around using talloc in a hierarchical fashion.
  Still not right, but better.

 r9564@SERNOX:  brad | 2005-08-24 05:43:11 +0200
  r5614@buttercup:  j0j0 | 2005-08-23 21:50:38 -0600
  Gave libnet_JoinADSDomain() its own tmp_ctx rather than passing it from libnet_JoinDomain() as a parameter (yuk).

  As a side effect, it proves that my bug lies in libnet_JoinDomain(), not libnet_JoinADSDomain().

 r9565@SERNOX:  brad | 2005-08-24 06:09:46 +0200
  r5616@buttercup:  j0j0 | 2005-08-23 22:17:12 -0600
  Small fix, if r->out.error_string and r2->samr_handle.out.error_string weren't set to NULL, torture_join_domain() would segfault on the second join.

 r9630@SERNOX:  brad | 2005-08-26 06:42:50 +0200
 Commented out the parts of the dssync test which perform the dc join and create/remove associated ldap entries.

 Commented out the test for the 'german' dssync option, because now we detect the Site-Name using CLDAP. If cldap_netlogon() does not return ok, the code defaults to 'Default-First-Site-Name'.
 r9670@SERNOX:  brad | 2005-08-27 02:30:11 +0200
 Added a patch from metze.

 To showcase what i've learned today, i've created two new parameters which can be set at runtime, drsuapi:last_usn and drsuapi:partition.

 drsuapi:last_usn takes an integer representing the USN of the last recieved replication update for a particular partition (uses the domain dn if drsuapi:parition isn't set).

 That value is passed in the DsGetNCChanges() call so that only info which has been updated since that point in time is returned. If this option is not set, 0 is used by default, and all updates for that partition are returned.

 drsuapi:partition takes a string dn and uses that as the name of the AD partition to replicate.

 Some debugging output was also added.

 r9723@SERNOX:  brad | 2005-08-29 01:07:51 +0200
 Added some copyright notices.

 Changed some things in net_join.c to try and figure out why 'net join <domain> bdc' segfaults.
 It occurs when the last talloc_free() happens, so i'm sure it's something to do with the memory fiddling i'm doing in libnet_join.

 Added some drsuapi attribute ids that I figured out today.
 I put some (many, dry) notes together while doing that, so i'll try to put them up on a blog at samba.org a little later tonight.

 r9740@SERNOX:  metze | 2005-08-29 16:58:03 +0200
 fix up the DsGetNCchanges loop,
 and remove misleading comments

 metze
 r9743@SERNOX:  metze | 2005-08-29 17:26:45 +0200
 make the logic a bit clearer

 metze
 r9815@SERNOX:  brad | 2005-08-31 02:36:21 +0200
 Added cldap_netlogon() AD Site-Name lookup into libnet/libnet_join.c.
 Bugfixing rampage in libnet_join.c to resolve misunderstanding of talloc_steal().
 libnet_join now creates the CN=<netbios name>,CN=Servers,CN=<site name>,CN=Sites,CN=Configuration,<domain dn> container on a dc join.

 r9858@SERNOX:  brad | 2005-09-01 03:17:17 +0200
 Removed extraneous NDR_ALL subsystem requirement from torture/config.mk.
 Added lots of error checking as per metze's advice.
 Removed commented out code.
 More bug chasing.

 r9863@SERNOX:  brad | 2005-09-01 05:53:19 +0200
 Cleaned up dssync.c, removed the unneeded DsCrackNames() call, removed DC join/leave related stuff.
 It no longer looks like my house does!

 r9887@SERNOX:  metze | 2005-09-01 11:34:03 +0200
 - fix dssync:highest_usn parameter handling
 - ask for LINKED_ATTRIBUTE replication

 metze
 r9891@SERNOX:  metze | 2005-09-01 14:13:18 +0200
 make the code more readable, and fix a few bugs

 metze
 r9911@SERNOX:  brad | 2005-09-01 20:36:27 +0200
 Bugfixes in libnet_join.c.
 Cleaned up comments.
 Added domain_dn_str and account_dn_str to struct libnet_JoinDomain.
 Removed struct dcerpc_pipe *samr_pipe and struct policy_handle user_handle from struct libnet_Join.

 r9920@SERNOX:  brad | 2005-09-01 23:34:13 +0200
 Added disclaimer (I can't seem to get libnet_JoinDomain() to keep the samr_pipe and u_handle open past the function call, grrrr....).

 r9921@SERNOX:  brad | 2005-09-01 23:37:54 +0200
 Added copyright statement.
 Cleaned up unneeded variables from torture_join_domain().

 r9932@SERNOX:  brad | 2005-09-02 01:49:42 +0200
 Really rushed project notes.

 r10841@SERNOX:  metze | 2005-10-08 20:01:45 +0200
 remove diff to main SAMBA_4_0 branch

 metze
 r10862@SERNOX:  metze | 2005-10-10 10:31:52 +0200
 remove the differences between SAMBA_4_0 and SOC/SAMBA_4_0

 metze
 r10863@SERNOX:  metze | 2005-10-10 10:34:26 +0200
 fix the build

 metze
 r10864@SERNOX:  metze | 2005-10-10 11:10:08 +0200
 remove README file to reduce, diffs to main SAMBA_4_0 branch:

 metze

 README:
 This project was centered around adding a torture test to Samba 4, which used drsuapi_DsGetNCChanges() to retrieve the contents of an Active Directory in the same manner as an Active Directory DC replication event.

 As the project unfolded, I also applied some changes to the functionality of the libnet library related to joining a machine account to a domain.

 One of the first things that I implemented in this project was a 'neighbour_writeable' option for the RPC-DRSUAPI torture test. The command line to execute this torture test is as follows:

 smbtorture --option=drsuapi:neighbour_writeable=True -W <domain name> -U <admin username>%<password> ncacn_ip_tcp:<domain controller dns name> RPC-DRSUAPI

 This option provides us with runtime control over the DRSUAPI_DS_REPLICA_NEIGHBOUR_WRITEABLE flag in the struct drsuapi_DsGetNCChanges.in.req.req<level>.replica_flags, allowing us to easily test for differences in the behaviour of AD replication with the switch on or off.

 In the course of the project, I also implemented two more flags for the RPC-DSSYNC test. dssync:last_usn takes an integer representing the USN (Universal Serial Number) of the last recieved replication update for a particular partition (uses the domain DN if drsuapi:parition isn't set).   That value is passed in the DsGetNCChanges() call so that only info which has been updated since that point in time is returned. If this option is not set, 0 is used by default, and all updates for that partition are returned.  dssync:partition takes a string DN and uses that as the name of the AD partition to replicate.

 Based initially on a patch provided to me by one of my mentors, Stephan (metze) Metzmacher, the RPC-DSSYNC test was implemented for this project. Initially functionality was included to perform a DC join prior to initiating replication, but the code was removed when it was realized that replication could indeed take place without being a member of the domain in any way. It has been recently suggested that we may need a DC join after all to get all of the information we may want from the AD replication. This is probably best added using a torture_join_domain() call once the libnet code is able to keep the user policy handle and SAMR RPC pipe open.

 The DC join code was taken out of the RPC-DSSYNC and implemented for the most part in the libnet libraries. To test this, the RPC-NETLOGON test was modified to perform a domain join, leave and rejoin. Currently, the test has a fault in that it is unable to leave the domain using the same SAMR RPC pipe and user_policy information as was used for the first join. This is because I was unable to get the code working properly in libnet to provide that functionality. Currently missing from the DC join in libnet is the code to create the CN=NTDS Settings,CN=<DC NETBIOS NAME>,CN=<Site-Name>,CN=Sites,CN=Configuration,<domain DN> container using the dcerpc_drsuapi_DsAddEntry() call. I did not want to implement this functionality in libnet while there were still problems with the code.

 I also provided the ability in libnet and the RPC-DSSYNC test to look up the proper site name using the cldap library.

 In my investigations, I was unable to find out any information regarding the UnicodePwd attribute, except that the same password is represented differently for two different users in the same directory.

 I was also able to resolve and confirm the meaning of some DRSUAPI_ATTRIBUTE ID's.
 	DRSUAPI_OBJECTCLASS_domain 	(0xA0042)
 	DRSUAPI_OBJECTCLASS_domainDNS 	(0xA0043)
 	wellKnownObjects 		(0x9026A)
 	fSMORoleOwner 			(0x90171)
 	name or dc			(0x90001)
 	whenCreated 			(0x20002)
 	instanceType 			(0x20001)
 	gPLink				(0x9037B)
 These were added to the IDL for drsuapi (source/librpc/idl/drsuapi.idl).

 I would like to thank everyone on the Samba team who worked with me and assisted me with this project, specifically all the work done by Stephan Metzmacher, Andrew Bartlett and Jerry Carter. Working on this project with the Samba team really has been a life changing experience, as corny as that sounds.

 I've realized that I was born to be a systems developer, and it has helped confirm in my mind that Open Source (specifically Samba) development is exactly what i've been missing!

 I would also like to take this opportunity to thank Chris Dibona and Google for the amazing opportunity. I don't know if I would have taken the leap in other circumstances.

 I know these notes sound a little rushed, but it is 23:55 after all! :)
(This used to be commit 55552b41cb)
2007-10-10 13:39:37 -05:00
Jelmer Vernooij
3b12c3bd34 r10594: Add initial framework for lib/registry torture tests
(This used to be commit 985c6a8fcc)
2007-10-10 13:39:09 -05:00
Jelmer Vernooij
87af8061c7 r10592: Add "adfgets()" function, which allocates and reads a line from a fd.
Also add torture tests for this function and file_{load,save}. I've hardcoded
a file name here.. should I handle that neater somehow?
(This used to be commit 8fa383f182)
2007-10-10 13:39:08 -05:00
Jelmer Vernooij
85abc86b21 r10514: Add str_list_make_shell() and str_list_join_shell()
(This used to be commit 8b86a5da73)
2007-10-10 13:38:59 -05:00
Andrew Bartlett
5a522b3100 r10486: This is a merge of Brad Henry's 'net join' rework, to better perform
an ADS join, particularly as a DC.  This represents the bulk of his
Google SOC work, and I'm very pleased to intergrate it into the tree.
(Metze will intergrate the DRSUAPI work later).

Both metze and myself have also put a lot of time into this patch, and
in mentoring Brad in general.  In return, Brad has been a very good
student, and has taken the comments well.

Since it's last appearance on samba-technical@, I have made
correctness and valgrind fixups, as well as adding a new 'BINDING'
mode to the libnet_rpc routines.  This allows the exact binding string
to be passed down from the torture code, including options and exact
target host.

Andrew Bartlett
(This used to be commit d6fa105fda)
2007-10-10 13:38:53 -05:00
Jelmer Vernooij
f3b412fbd6 r10438: Move portability functions to lib/replace/; replace now simply ensures
that a given set of (working) POSIX functions are available (without
prefixes to their names, etc). See lib/replace/README for a list.

Functions that behave different from their POSIX specification
(such as sys_select, sys_read, etc) have kept the sys_ prefix.
(This used to be commit 29919a7105)
2007-10-10 13:38:45 -05:00
Jelmer Vernooij
349294d358 r10315: Remove use of fstring and pstring in dynconfig.c
Remove unused includes of dynconfig.h
(This used to be commit 59083b7ba6)
2007-10-10 13:38:17 -05:00
Andrew Tridgell
6bfea63356 r10199: added a LOCAL-RESOLVE torture test, useful for measuring the overhead of
the async name resolution mechanisms
(This used to be commit b3a9d759bb)
2007-10-10 13:38:08 -05:00
Andrew Bartlett
1a316fd8c5 r9727: A simplier test I can aim at passing when I get the cracknames code done.
Andrew Bartlett
(This used to be commit b1b0e26e53)
2007-10-10 13:34:53 -05:00