1
0
mirror of https://github.com/samba-team/samba.git synced 2025-10-21 03:33:16 +03:00
Commit Graph

410 Commits

Author SHA1 Message Date
Andrew Tridgell
c1a48a7542 r3799: - added the bit for FS_ATTR_NAMED_STREAMS support into qfsinfo filesystem attribute reply
- pvfs passes the RAW-STREAMS test
2007-10-10 13:05:55 -05:00
Andrew Tridgell
b6452c4a20 r3798: added support for alternate data streams in xattrs into pvfs.
The trickiest part about this was getting the sharing and locking
rules right, as alternate streams are separate locking spaces from the
main file for the purposes of byte range locking, and separate for
most share violation rules.

I suspect there are still problems with delete on close with alternate
data streams. I'll look at that next.
2007-10-10 13:05:54 -05:00
Andrew Tridgell
e7afd4403c r3747: - added some of the infrastructure needed for streams support in pvfs
(the IDL, and the load/save meta-data logic)

- changed pvfs_resolve_name() to default to non-wildcard, needing
  PVFS_RESOLVE_WILDCARD to enable wildcards. Most callers don't want
  wildcards, so defaulting this way makes more sense.

- fixed deletion of EAs
2007-10-10 13:05:50 -05:00
Andrew Tridgell
ad7815faba r3741: FILE_ATTRIBUTE_DIRECTORY is illegal in open of a file 2007-10-10 13:05:49 -05:00
Jelmer Vernooij
0d7bb2c40b r3737: - Get rid of the register_subsystem() and register_backend() functions.
- Re-disable tdbtool (it was building fine on my Debian box but other
					machines were having problems)
2007-10-10 13:05:48 -05:00
Jelmer Vernooij
64826da834 r3733: More build system fixes/features:
- Use .mk files directly (no need for a SMB_*_MK() macro when adding a new SUBSYSTEM, MODULE or BINARY). This allows addition of new modules and subsystems without running configure
 - Add support for generating .dot files with the Samba4 dependency tree (as used by the graphviz and springgraph utilities)
2007-10-10 13:05:47 -05:00
Andrew Tridgell
5af815ffc3 r3729: permission changes on directories always include the FILE_ATTRIBUTE_DIRECTORY bit 2007-10-10 13:05:47 -05:00
Andrew Tridgell
3d50982f54 r3718: added support for the ntrename level in pvfs_rename(). 2007-10-10 13:05:46 -05:00
Andrew Tridgell
e255d1c3a8 r3717: - expanded the RAW-RENAME test a little
- added support for wildcard rename in pvfs

- made more consistent use of pvfs_map_errno()
2007-10-10 13:05:46 -05:00
Andrew Tridgell
31ac31398b r3694: added support for the RENAME_INFORMATION level of setfileinfo and
setpathinfo. pvfs now passes the RAW-SFILEINFO test.
2007-10-10 13:05:45 -05:00
Andrew Tridgell
4b3afc6c39 r3658: use handle->fd == -1 as the primary indicator of a directory. This
fixes a directory creation problem from WinXP
2007-10-10 13:05:42 -05:00
Andrew Tridgell
bdabb3f836 r3635: fixed the crash from the BASE-DISCONNECT test 2007-10-10 13:05:41 -05:00
Andrew Tridgell
bfca9eb7cb r3631: a couple of tweaks to the talloc hierarchy for async requests in
pvfs. This prevents a possible crash due to free ordering on
unexpected disconnect.
2007-10-10 13:05:41 -05:00
Andrew Tridgell
aa09df22ee r3618: - this adds the special case for DENY_DOS semantics, as shown by the BASE-DENYDOS test.
- pvfs now passes BASE-DENY1 and BASE-DENYDOS.
2007-10-10 13:05:40 -05:00
Andrew Tridgell
6e4fdf01d1 r3615: split out struct pvfs_file_handle from struct pvfs_file. This is in
preparation for adding code to pass the BASE-DENY1 and BASE-DENYDOS
tests, which require a shared filesystem handle for some specific
combinations of two DENY_DOS opens on the same connection.
2007-10-10 13:05:40 -05:00
Andrew Tridgell
218e01441a r3597: implement a suggestion from abartlet. By taking a refernce to the
database in the opendb lck, we ensure that the database is not closed
before the lock is gone. That ensures the lock destructor doesn't work
on a closed database.
2007-10-10 13:05:37 -05:00
Andrew Tridgell
20fc3a25ef r3596: MODE_INFORMATION tests now pass. Only RENAME_INFORMATION level left to
support RAW-SFILEINFO
2007-10-10 13:05:37 -05:00
Andrew Tridgell
e53ec2f6b6 r3595: - fixed a talloc_free ordering problem on cleanup with pending requests
- added initial support for MODE_INFORMATION in setfileinfo (I have no
  idea what "mode information" on a file is - it takes a value of 0,
  2, 4 or 6. What could it be?)
2007-10-10 13:05:37 -05:00
Jelmer Vernooij
7a8244761b r3586: Fix some of the issues with the module init functions.
Both subsystems and modules can now have init functions, which can be
specified in .mk files (INIT_FUNCTION = ...)

The build system will define :
 - SUBSYSTEM_init_static_modules that calls the init functions of all statically compiled modules. Failing to load will generate an error which is not fatal
 - BINARY_init_subsystems that calls the init functions (if defined) for the subsystems the binary depends on

This removes the hack with the "static bool Initialised = " and the
"lazy_init" functions
2007-10-10 13:05:36 -05:00
Andrew Tridgell
cb76bd218e r3580: - on file overwrite in ntcreatex we need to replace the file permissions.
- pvfs now passes BASE-OPENATTR

- pvfs also passes the BASE-DEFER_OPEN test, but it is not a well
  formed test for regular running so I am removing it from the list of
  tests to run in test_posix.sh (the test is covered better by RAW-MUX
  anyway)
2007-10-10 13:05:35 -05:00
Andrew Tridgell
66bdc6e78c r3575: fixed attribute normalisation in xattr code. RAW-SEARCH now passes again. 2007-10-10 13:05:33 -05:00
Andrew Tridgell
09b4652b40 r3574: the RAW-OPEN test changes broke a couple of the other tests. This
fixes most of them, although RAW-SEARCH still fails (due to an
interaction with the new xattr code)
2007-10-10 13:05:33 -05:00
Andrew Tridgell
ed844192d7 r3573: added trans2open support to smbd and pvfs, and fine-tuned the open->generic ntvfs mapping code. 2007-10-10 13:05:33 -05:00
Andrew Tridgell
b07feaafd1 r3550: fixed initial attribute on file create (inlusion of FILE_ATTRIBUTE_ARCHIVE) 2007-10-10 13:05:31 -05:00
Andrew Tridgell
bad6a88371 r3549: added support for DOS extended attribute lists (name/value pairs)
stored in posix xattrs
2007-10-10 13:05:31 -05:00
Andrew Tridgell
c54253ed1b r3545: initial support for using extended attributes to hold extended dos attributes of files.
I decided to use IDL/NDR to encode the attribute, as it gives us a
simple way to describe and extend the saved attributes.

The xattr code needs to hook into quite a few more places in the pvfs
code, but this at least gets the basics done. I will start encoding
alternate data streams streams, DOS EAs etc soon using the same basic
mechanism.

I'll probably stick to "version 1" for the xattr.idl for quite a while
even though it will be changing, as I don't expect anyone to be
deploying this in production just yet. Once we have production users
we will need to keep compatibility by supporting all the old version
numbers in xattr.idl.
2007-10-10 13:05:30 -05:00
Andrew Tridgell
a1a0118bd3 r3544: fixed some #include lines to make them more consistent 2007-10-10 13:05:30 -05:00
Andrew Tridgell
f23d6a2800 r3540: added testing of SMBntcancel in the open/open/close mux
testing. Interestingly, w2k3 does not allow the cancel of an
outstanding async open request, whereas it does allow the cancel of an
outstanding async lock request. To support this I have changed the
pvfs_wait interface to provide a enum on why the event is happening,
so the callback can decide what to do.
2007-10-10 13:05:30 -05:00
Andrew Tridgell
eded2ad9c9 r3539: much nicer async open delay code.
The previous code didn't handle the case where the file got renamed or
deleted while waiting for the sharing violation delay. To handle this
we need to make the 2nd open a full open call, including the name
resolve call etc. Luckily this simplifies the logic.

I also expanded the RAW-MUX test to include the case where we do
open/open/open/close/close, with the 3rd open async, and that open
gets retried after both the first close and the 2nd close, with the
first retry failing and the 2nd retry working. The tests the "async
reply after a async reply" logic in pvfs_open().
2007-10-10 13:05:29 -05:00
Andrew Tridgell
c475877649 r3532: make sharing violation delay in pvfs configurable with "posix:sharedelay = usecs" 2007-10-10 13:05:29 -05:00
Andrew Tridgell
1d2f0a55c1 r3531: add support for RAW_OPEN_MKNEW, RAW_OPEN_CREATE and RAW_OPEN_CTEMP in pvfs 2007-10-10 13:05:29 -05:00
Andrew Tridgell
730ae0600e r3530: make sure we match ntvfs_async_state_pop() with ntvfs_async_state_push() 2007-10-10 13:05:29 -05:00
Andrew Tridgell
3423e2f414 r3528: added support for the SMBntcancel() operation, which cancels any
outstanding async operation (triggering an immediate timeout).

pvfs now passes the RAW-MUX test
2007-10-10 13:05:28 -05:00
Andrew Tridgell
9e80eb18ae r3522: added async support to most of the ntvfs_map_*() functions, allowing functions like
SMBopenx, SMBread and SMBwrite to be performed async
2007-10-10 13:05:28 -05:00
Andrew Tridgell
0d51511d40 r3507: - added deferred replies on sharing violation in pvfs open. The
deferred reply is short-circuited immediately when the file is
  closed by another user, allowing it to be opened by the waiting user.

- added a sane set of timeval manipulation routines

- converted all the events code and code that uses it to use struct
  timeval instead of time_t, which allows for microsecond resolution
  instead of 1 second resolution. This was needed for doing the pvfs
  deferred open code, and is why the patch is so big.
2007-10-10 13:05:23 -05:00
Andrew Tridgell
c6f4865744 r3481: split out client.h and events.h 2007-10-10 13:05:20 -05:00
Andrew Tridgell
7c4e6ebf05 r3466: split out request.h, signing.h, and smb_server.h 2007-10-10 13:05:17 -05:00
Andrew Tridgell
70d2090f6b r3464: split out registry.h, rap.h and ldap_server.h 2007-10-10 13:05:17 -05:00
Andrew Tridgell
b97e395c81 r3463: separated out some more headers (asn_1.h, messages.h, dlinklist.h and ioctl.h) 2007-10-10 13:05:17 -05:00
Andrew Tridgell
1087ea830e r3461: another place where "open" was used as a structure element 2007-10-10 13:05:16 -05:00
Andrew Tridgell
4e92e15c4e r3458: more solaris portability fixes, the main one being that we can't use a
structure element called "open" as its a macro on solaris.
2007-10-10 13:05:16 -05:00
Andrew Tridgell
4f33247f1c r3455: some more portability fixes. We nearly compile on solaris again now. 2007-10-10 13:05:15 -05:00
Andrew Tridgell
7b7477ac42 r3453: - split out the auth and popt includes
- tidied up some of the system includes

- moved a few more structures back from misc.idl to netlogon.idl and samr.idl now that pidl
  knows about inter-IDL dependencies
2007-10-10 13:05:13 -05:00
Andrew Tridgell
6b1f86aea8 r3449: more include file reduction
the ldb part isn't ideal, I will have to think of a better solution
2007-10-10 13:05:13 -05:00
Andrew Tridgell
264ce91810 r3447: more include/system/XXX.h include files 2007-10-10 13:05:12 -05:00
Andrew Tridgell
73ea8ee6c2 r3441: some include file cleanups and general housekeeping 2007-10-10 13:05:11 -05:00
Andrew Tridgell
8d71ed9271 r3427: split the openx logic out from the other open mapping code 2007-10-10 13:05:08 -05:00
Andrew Tridgell
386ac565c4 r3419: moved the libcli/raw structures into libcli/raw/libcliraw.h
and made them private
2007-10-10 13:05:07 -05:00
Andrew Tridgell
c36851d230 r3387: fixed pvfs to pass the NTDENY tests. The tricky bit was
SA_RIGHT_FILE_EXECUTE, which depends on a flags2 bit
2007-10-10 13:05:04 -05:00
Andrew Tridgell
22abdfca96 r3373: added better error reporting in pvfs_open 2007-10-10 13:05:02 -05:00