1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-28 17:47:29 +03:00

175 Commits

Author SHA1 Message Date
Andrew Tridgell
d3c5d8ccfd r3105: using __location__ instead of __LINE__ to give info on error locations is more useful
(This used to be commit 80dd22a1f1aea27312b3cd06addf50e7c288259e)
2007-10-10 13:02:21 -05:00
Andrew Tridgell
31a4070fcc r3085: make the RAW-WRITE tests more robust to errors in previous parts of the test
(This used to be commit 6ea815b6d426d37723a200226cb5f7236a13017f)
2007-10-10 13:01:57 -05:00
Andrew Tridgell
384f87bd38 r3034: - fixed a bug in message dispatch, when the dispatch function called messaging_deregister()
- added a pvfs_lock_close_pending() hook to remove pending locks on file close

 - fixed the private ptr argument to messaging_deregister() in pvfs_wait

 - fixed a bug in continuing lock requests after a lock that is blocking a pending lock is removed

 - removed bogus brl_unlock() call in lock continue

 - corrected error code for LOCKING_ANDX_CHANGE_LOCKTYPE

 - expanded the lock cancel test suite to test lock cancel by unlock and by close

 - added a testsuite for LOCKING_ANDX_CHANGE_LOCKTYPE
(This used to be commit 5ef80f034d4aa4dd6810532c63ad041bfc019cb8)
2007-10-10 13:00:00 -05:00
Andrew Tridgell
0ca4a77005 r3030: added testing of lock cancel, and some more special offsets (locks
with the top bit set are special)
(This used to be commit f732a983d4fde29d5ad893ad35fd182ee3d8a75b)
2007-10-10 13:00:00 -05:00
Andrew Tridgell
d0cc571e30 r3029: implemented byte range lock timeouts.
This adds a pvfs_wait_message() routine which uses the new messaging
system, event timers and talloc destructors to give a nice generic
async event handling system with a easy to use interface. The
extensions to pvfs_lock.c are based on calls to pvfs_wait_message()
routines.

We now pass all of our smbtorture locking tests, although while
writing this code I have thought of some additonal tests that should
be added, particularly for lock cancel operations. I'll work on that
soon.

This commit also extends the smbtorture lock tests to test the rather
weird 0xEEFFFFFF locking semantics that I have discovered in
win2003. Win2003 treats the 0xEEFFFFFF boundary as special, and will
give different error codes on either side of it. Locks on both sides
are allowed, the only difference is which error code is given when a
lock is denied. Anyone like to hazard a guess as to why? It has
me stumped.
(This used to be commit 4395c0557ab175d6a8dd99df03c266325949ffa5)
2007-10-10 13:00:00 -05:00
Andrew Tridgell
1edc2f95e3 r2983: report a failure if a server doesn't update the write time at all
after 2 minutes
(This used to be commit b2298a1c5f0330a262ac855479060fd677fe8059)
2007-10-10 12:59:54 -05:00
Andrew Tridgell
970ba3a736 r2982: added a test that shows the amount of time a server takes to update
the write time on a file after a write.
(This used to be commit efee3c90f90b1e9dd3351933d27fe8a085c3657f)
2007-10-10 12:59:54 -05:00
Andrew Tridgell
a1abaa6ba9 r2929: longhorn does not produce sorted directory listings! This is
excellent, as it means we don't lose any compatibility by also not
giving sorted listings. I was very much afraid that applications had
begun to rely on this (as its guaranteed by w2k NTFS).

no longer mark a non-sorting server as an error
(This used to be commit 1d21c9a9d1879f5b3de15d251b6bb379c326002d)
2007-10-10 12:59:49 -05:00
Volker Lendecke
b33be58874 r2912: Test for the sort-of weird file stamp semantics. The last_write seems to be
updated only by an arbitrary close() after the file was actually written to.

Volker
(This used to be commit ab52ebfdccc65ca510d74ce8e0205b45b58550ef)
2007-10-10 12:59:47 -05:00
Andrew Tridgell
fea0571034 r2909: fix some RAW-SEARCH torture mem leaks
(This used to be commit 75ca5ba5091c9046159531b917ff17a519013556)
2007-10-10 12:59:47 -05:00
Volker Lendecke
3b6a240284 r2895: Another nut to crack, not sure how hard: The statinfo on a file does obviously
not change during a write. The nasty thing: Excel 2003 obviosly does depend on
this.

Volker
(This used to be commit 8e26775134671114425ce1ecf7a22bad4e763d1f)
2007-10-10 12:59:45 -05:00
Andrew Tridgell
16ed45d627 r2738: free up the session information as soon as it is invalidated in the
RAW-CONTEXT test case
(This used to be commit f4a7a3282af6c6ff771547d2efdbba0fe0451b3e)
2007-10-10 12:59:28 -05:00
Andrew Tridgell
b2f1a29e43 r2710: continue with the new style of providing a parent context whenever
possible to a structure creation routine. This makes for much easier
global cleanup.
(This used to be commit e14ee428ec357fab76a960387a9820a673786e27)
2007-10-10 12:59:25 -05:00
Andrew Tridgell
aa12305945 r2680: switched the libcli/raw/ code over to use talloc_reference(), which simplifies things quite a bit
(This used to be commit c82a9cf750829c4f6982ca3133295c8599023c4e)
2007-10-10 12:59:21 -05:00
Andrew Tridgell
5b44130afa r2671: we're getting too many errors caused by the talloc_realloc() API not
taking a context (so when you pass a NULL pointer you end up with
memory in a top level context). Fixed it by changing the API to take a
context. The context is only used if the pointer you are reallocing is
NULL.
(This used to be commit 8dc23821c9f54b2f13049b5e608a0cafb81aa540)
2007-10-10 12:59:20 -05:00
Andrew Tridgell
e3880fa759 r2660: - converted the libcli/raw/ library to use talloc_increase_ref_count()
rather than manual reference counts

- properly support SMBexit in the cifs and posix backends

- added a logoff method to all backends

With these changes the RAW-CONTEXT test now passes against the posix backend
(This used to be commit c315d6ac1cc40546fde1474702a6d66d07ee13c8)
2007-10-10 12:59:18 -05:00
Andrew Tridgell
ec0128ef01 r2649: - used some cpp tricks to make users of talloc() and talloc_realloc()
to get auto-naming of pointers very cheaply.

- fixed a couple of memory leaks found with the new tricks

A typical exit report for smbd is now:

talloc report on 'null_context' (total 811 bytes in 54 blocks)
        auth/auth_sam.c:334            contains     20 bytes in   1 blocks
        struct auth_serversupplied_info contains    498 bytes in  33 blocks
        UNNAMED                        contains      8 bytes in   1 blocks
        lib/data_blob.c:40             contains     16 bytes in   1 blocks
        iconv(CP850,UTF8)              contains     61 bytes in   4 blocks
        iconv(UTF8,CP850)              contains     61 bytes in   4 blocks
        iconv(UTF8,UTF-16LE)           contains     67 bytes in   4 blocks
        iconv(UTF-16LE,UTF8)           contains     67 bytes in   4 blocks
        UNNAMED                        contains     13 bytes in   1 blocks

which is much better than before
(This used to be commit 6e721393d03afd3c2f8ced8422533547a9e33342)
2007-10-10 12:59:16 -05:00
Andrew Tridgell
82b61938ac r2593: don't crash if the server doesn't know that 0 count searches mean 1
(This used to be commit 640ced453092a5c5f3ffe7ee0fe4be804a4ced14)
2007-10-10 12:59:11 -05:00
Andrew Tridgell
ca60193f24 r2520: - finished implementing the server side of the old style search requests
(This used to be commit 4e4859c06b9de5fe60ebd17cfb09eed480b79ec1)
2007-10-10 12:59:01 -05:00
Andrew Tridgell
23ba434b01 r2469: complete overhaul of the old-style RAW_SEARCH_ calls (the OS/2 and
original core level calls). The old code was completely wrong in many respects.

also fixed the EA_SIZE level in the server

extended the RAW-SEARCH test suite to test the new code properly
(This used to be commit 71480271ad84b57fcdde264a54bb2408cf783255)
2007-10-10 12:58:56 -05:00
Andrew Tridgell
6108ead954 r2462: added a test for the error code for no matching filename
(This used to be commit 7bfbbc38ed9aac93d288aba183f7a925f170f81e)
2007-10-10 12:58:55 -05:00
Andrew Tridgell
d78a1ac756 r2457: expanded the RAW-SEARCH test to test for what happens when a directory
is modified while being searched, and whether the server always
returns sorted directory listings.
(This used to be commit e23514c78f1f15a61dadaa5c4de5de7cd0593ea0)
2007-10-10 12:58:55 -05:00
Jeremy Allison
f0ae80e18c r2217: Ad-hoc tests to allow me to work out the correct error code
for the bad path algorithm.
Jeremy.
(This used to be commit d2d32d8f2b7a4a3e62f505adae787b42f80309bb)
2007-10-10 12:58:32 -05:00
Jeremy Allison
ebe1733768 r2151: Added some more ad-hoc tests. Found bugs in Samba3 with these :-).
Jeremy.
(This used to be commit fe6506e190ed5e1987894d43caa51b33d80d5193)
2007-10-10 12:58:27 -05:00
Stefan Metzmacher
8aa051c7b2 r2071: - change smbtorture to use the popt_common stuff
this means -U DOM\\user is know allowed

- torture:userdomain is a new smb.conf parameter
  because lp_workgroup is not the domain of the user

- we use torture:userdomain now in the tests instad of lp_workgroup

- for backward compat the userdomain is lp_workgroup() by default and
  not lp_netbios_name(), which my change later to match 'net' and 'smbclient'..

- we now have dublicate options e.g. -N -s ...
  tridge: can we change this?

metze
(This used to be commit 4733dcbf5f17422a8a4c9f99664270b3aa66c586)
2007-10-10 12:58:23 -05:00
Stefan Metzmacher
b0856b8ad0 r1996: fix compiler warnings
metze
(This used to be commit dd8d68f3ecb78a2acdec74aa14e1922ad29cabf7)
2007-10-10 12:58:16 -05:00
Andrew Tridgell
b83ba93eae r1983: a completely new implementation of talloc
This version does the following:

  1) talloc_free(), talloc_realloc() and talloc_steal() lose their
     (redundent) first arguments

  2) you can use _any_ talloc pointer as a talloc context to allocate
     more memory. This allows you to create complex data structures
     where the top level structure is the logical parent of the next
     level down, and those are the parents of the level below
     that. Then destroy either the lot with a single talloc_free() or
     destroy any sub-part with a talloc_free() of that part

  3) you can name any pointer. Use talloc_named() which is just like
     talloc() but takes the printf style name argument as well as the
     parent context and the size.

The whole thing ends up being a very simple piece of code, although
some of the pointer walking gets hairy.

So far, I'm just using the new talloc() like the old one. The next
step is to actually take advantage of the new interface
properly. Expect some new commits soon that simplify some common
coding styles in samba4 by using the new talloc().
(This used to be commit e35bb094c52e550b3105dd1638d8d90de71d854f)
2007-10-10 12:58:14 -05:00
Andrew Tridgell
ada86316e5 r1820: added a strcmp_safe() that handles NULL pointers. Needed for the
search torture test, as some servers return really bad entries.
(This used to be commit c900ebb3ac18d77ab334d3bf5259b3bba547b09c)
2007-10-10 12:57:59 -05:00
Andrew Bartlett
14924a9fe7 r1795: Fix the multiple session setup torture tests.
Andrew Bartlett
(This used to be commit c4036f218967459c17056f9d27eb95eed3f72dd8)
2007-10-10 12:57:57 -05:00
Andrew Bartlett
63c5ca7d58 r1769: Add a new torture test to check vuid properties, and SPNEGO/non-SPNEGO games.
Andrew Bartlett
(This used to be commit 90d70a63ee6d44172cec99a9115817f666b5d06d)
2007-10-10 12:57:55 -05:00
Andrew Tridgell
ae274c84d7 r1740: fixed the torture suite for ASCII-only servers
(This used to be commit c3bce90be745db3e7cbf8273c1c8496920332f5e)
2007-10-10 12:57:52 -05:00
Stefan Metzmacher
c5fbb6f23c r1654: rename cli_ -> smbcli_
rename CLI_ -> SMBCLI_

metze
(This used to be commit 8441750fd9427dd6fe477f27e603821b4026f038)
2007-10-10 12:57:47 -05:00
Andrew Tridgell
44194cc663 r1632: in case of error don't send uninitialised fnums on the wire
(This used to be commit 13cd58efce8fc077c7c3ced99a82344766e20c5c)
2007-10-10 12:57:45 -05:00
Stefan Metzmacher
d093b7e777 r1547: rename 'enum <bla>_level' -> 'enum smb_<bla>_level'
e.g. we now have 'union smb_mkdir' and 'enum smb_mkdir_level' in sync

we may should also rename 'RAW_MKDIR_*' -> 'SMB_MKDIR_*'

metze
(This used to be commit 0bb50dcf1ccb9797000fcbea4d8a73f2d2a3db77)
2007-10-10 12:57:41 -05:00
Jeremy Allison
a8069f5778 r1113: Test for wildcards in chkpath.
Jeremy.
(This used to be commit 14cf961b7f8d273604e53ba9a889bb18cd8054d8)
2007-10-10 12:56:38 -05:00
Jeremy Allison
02079ccc2e r1098: Extended raw chkpath to catch regressions.
Jeremy.
(This used to be commit 37d1fa1684b4cca125ae2cf6039f8b12e7ae1b89)
2007-10-10 12:56:38 -05:00
Stefan Metzmacher
770e3307ce r962: convert 'unsigned' and 'unsigned int' to uint_t
metze
(This used to be commit 57151e80eb1090281401930c8fe25b20a8cf3a38)
2007-10-10 12:56:23 -05:00
Jeremy Allison
496220916a r946: Updated attribute only oplock tester to cover more cases.
Jeremy.
(This used to be commit 6c9d32173b26353e8ae00f7f6b666290651883e6)
2007-10-10 12:56:21 -05:00
Stefan Metzmacher
45e93c19ef r943: change samba4 to use 'uint8_t' instead of 'unsigned char'
metze
(This used to be commit b5378803fdcb3b3afe7c2932a38828e83470f61a)
2007-10-10 12:56:21 -05:00
Stefan Metzmacher
fcd718c7d8 r890: convert samba4 to use [u]int8_t instead of [u]int8
metze
(This used to be commit 2986c5f08c8f0c26a2ea7b6ce20aae025183109f)
2007-10-10 12:56:16 -05:00
Stefan Metzmacher
f88bf54c7f r889: convert samba4 to use [u]int16_t instead of [u]int16
metze
(This used to be commit af6f1f8a01bebbecd99bc8c066519e89966e65e3)
2007-10-10 12:56:16 -05:00
Stefan Metzmacher
f9d8f8843d r884: convert samba4 to use [u]int32_t instead of [u]int32
metze
(This used to be commit 0e5517d937a2eb7cf707991d1c7498c1ab456095)
2007-10-10 12:56:15 -05:00
Andrew Tridgell
579c13da43 r873: converted samba4 to use real 64 bit integers instead of
structures. This was suggested by metze recently.

I checked on the build farm and all the machines we have support 64
bit ints, and support the LL suffix for 64 bit constants. I suspect
some won't support strtoll() and related functions, so we will
probably need replacements for those.
(This used to be commit 9a9244a1c66654c12abe4379661cba83a73c4c21)
2007-10-10 12:56:14 -05:00
Jeremy Allison
daa890e2c8 r865: Regression test for attribute-only opens not causing an oplock break.
Samba3 server used to get this wrong.
Jeremy.
(This used to be commit 4120b3bdf6668909efa0af97b2c63adea22c35da)
2007-10-10 12:56:13 -05:00
Jeremy Allison
31b9470996 r741: Test from Volker in RAW-OPEN for truncating a file containing locks.
Also added the same ad-hoc test is LOCK7.
Jeremy.
(This used to be commit 6cb21ccda3cb420171e2d5afb3842a6be4bd4d18)
2007-10-10 12:53:46 -05:00
Andrew Tridgell
b394a4c2ff r336: added a -X command line option to smbtorture to enable dangerous or
possibly destructive tests. Use with care!

Added IDL and test code for samr_Shutdown() and samr_SetDsrmPassword()
(This used to be commit 84de0b7e58c69e0817b9d475de0895a54cc95927)
2007-10-10 12:51:33 -05:00
Jeremy Allison
763c4bc9ac r204: Turns out that the string in the SEARCH unix_info level is that
rare thing, a non-length string (ie. not a WIRE_STRING) but a null
terminated char string. There wasn't a good interface to pull that
out of a blob (all the string interfaces assumed WIRE_STRINGS). Added
a new one, only used for this call. Sucks, I know - but the alternatives
suck more. Added tests for some of the unix info returned.
Jeremy.
(This used to be commit 4d0ed04c54b105789ffd32334c3b0e544f02418c)
2007-10-10 12:51:16 -05:00
Jeremy Allison
6f47ce8b6c r203: Added size and alloc size tests to UNIX info level.
Jeremy.
(This used to be commit 16455c5b34fd09ab16a1ea841f710ce65bc492c8)
2007-10-10 12:51:16 -05:00
Jeremy Allison
b560bf5361 r184: Fix UNIX Search info level. This still needs to be added to the raw
client library before this test can work.
Jeremy.
(This used to be commit 7b2a2665438a1dbc05053a13f5f84bb56dacd073)
2007-10-10 12:51:15 -05:00
Andrew Tridgell
ac193579e7 r152: a quick airport commit ....
added ldbedit, a _really_ useful command

added ldbadd, ldbdel, ldbsearch and ldbmodify to build

solved lots of timezone issues, we now pass the torture tests with
client and server in different zones

fixed several build issues

I know this breaks the no-LDAP build. Wait till I arrive in San Jose for that
fix.
(This used to be commit af34710d4da1841653624fe304b1c8d812c0fdd9)
2007-10-10 12:51:11 -05:00