Age | Commit message (Collapse) | Author | Files | Lines |
|
particular the NT_STATUS_INVALID_PARAMETER thing was badly wrong. Remove the
changes based on it. Using gentest is much more effective in this respect, but
it will take a while to figure out the wildcard error handling of W2k3.
Volker
(This used to be commit 58b8a242a7f08c1292d24fc73df170dbcd68c10d)
|
|
Guenther
(This used to be commit 3bb94a081888eca69796b14057b551b078ee9a77)
|
|
that we've
taken care of above.
Volker
(This used to be commit 5e1da363bb3f2675beb9fd9240301bb432e5239b)
|
|
doing early
returns.
Volker
(This used to be commit 614651c6a72742173de5fa8723403880acc37c09)
|
|
(This used to be commit 9d0a789e32e6a6501421edb25bc8197c9e06846d)
|
|
anymore
(This used to be commit 1798987128be579a1a4574294a7c3094040ebaf2)
|
|
reply_unlink
under Linux we returned NT_STATUS_NOT_A_DIRECTORY. This is because in the
bad_path==True condition lstat(2) returns ENOTDIR and not ENOENT.
Not sure if we want to necessarily replicate the INVALID_PARAMETER here, but
this is what W2k3 does.
Jeremy, I tried to call you, but you were not around. So I'll leave it up to
you to merge this.
Volker
(This used to be commit b1edc3d053104204b966eed67d070ad5da40f17b)
|
|
(This used to be commit c86fbdf8cc8f6f17b23e647bd1f4714c6095b860)
|
|
(This used to be commit 7e444e1612fa49f7db4de3256e6c67025db28806)
|
|
set_bad_path_error
is equivalent to UNIX_ERROR. Expand the last reference. Lets see if I can kill
that as well :-)
Volker
(This used to be commit 794d5d38f19601bb5b30b965b41b844aacf1caeb)
|
|
bad_path==True argument
being handled further up.
Volker
(This used to be commit 358673c36697a16aa87f9cebbace34abf16ed28e)
|
|
(This used to be commit 60d7b349dbc12288a3da0486b571a1d83401d0b7)
|
|
unix error mapping table
(This used to be commit 816c19aaeb812a94fd5669174c9beec60ce1a73f)
|
|
(This used to be commit cea9a01434490fb8a17c3f12db7a092efda21186)
|
|
I'm checking in micro-steps to make them independently checkable. This code
just very severely needs cleanup, but I don't want to break anything. So, be
patient with me, please :-)
Volker
(This used to be commit c16775486baa89901f0d5126cb926c9e5a807743)
|
|
(This used to be commit f19db8f33ed3749f6b72ae3a4cee83574c606e88)
|
|
(This used to be commit 44f9d25a9026df29fcaae8723ef52b1d3101628b)
|
|
(This used to be commit e4dea0e64747912da899e846b944c24804772259)
|
|
Volker
(This used to be commit 33b5950bec407e295b2c6139e21d062e376df330)
|
|
(This used to be commit e4a2e63272dc5b20413597179d06b0185c4a6817)
|
|
(This used to be commit 244f96388c843fd629478d0069f68550a2006d06)
|
|
than lots of indented code. Change recursive_rmdir()
to return the smbd standards of True on success, False
on fail (it was doing the reverse, which was very confusing).
Jeremy.
(This used to be commit 27dc5bebda7ffbdcb2371638f6132063a953fba2)
|
|
(This used to be commit 8f67efd582655e03fea746eee499f3cab6cbdb4d)
|
|
close_file() to NTSTATUS as well.
I'm not sure I got all the error codes right, but as I've never come across a
smb_copy() call in all my Samba work, I'm leaving it at that. If I'm
absolutely bored, I will write a thorough torture test.
As far as I can see, Samba4 even does not have a libcli implementation for
it... :-)
Volker
(This used to be commit 5ebdf02ba166df69e210e6f70c01a44e6205ecc1)
|
|
yet...
(This used to be commit c8995771531caa4ec9bcaef2c29b11ee7d8e49e6)
|
|
reply_close() at its heart is going to be an async call :-)
Volker
(This used to be commit 36f60407ae9b430dc5d7f67dd3e7ed8b1dbc93a8)
|
|
non-existing krb5 credential cache should not generate an error.
Guenther
(This used to be commit 11c6f573af5c1d3387e60f3fc44b00e28cd87813)
|
|
write access into the source tree (like when your
directory is nfs mounted for example....).
Jeremy.
(This used to be commit 7dcb61d1b2d08270a8c718328a26ef4866a1c500)
|
|
"smbcli_setattr("") always returns ACCESS_DENIED, test extension to follow.
Merge to 3.0.24?"
Yep (with slight optimization).
Jeremy.
(This used to be commit dcc7bca1adbc69f348d46291ec2cbfaf5d8486bc)
|
|
Jeremy.
(This used to be commit 68c4fbcf3397d6c43a3e5809b20a23116b1f8a31)
|
|
Don't actually
unlink/rmdir if another process still has it open.
Jeremy, this is a potential merger to 3.0.24.
Volker
(This used to be commit 8e1e896b02da99b5a48883c5f37fe146ad0fb5ce)
|
|
Volker
(This used to be commit ade90dbf0c2cbd2cc49a6357f3dd220ea82fd215)
|
|
Guenther
(This used to be commit 36bd5cb21bdaf35c7dae47f8b8e93822b3f6188c)
|
|
follow.
Merge to 3.0.24?
Volker
(This used to be commit f2563ac98f8ec7af8083d2b62186753acba7a9dd)
|
|
(This used to be commit 7bcde1069e38d70808d78c408f16821a0bfadcdd)
|
|
(This used to be commit 56c8d2cfed273655b2c79b3a2c613a7253e05221)
|
|
(This used to be commit d10dd47fb8908a4372aa6932e40b23189784522c)
|
|
(This used to be commit 9a790ee1fcfdaab1c9ee0884694832bd81f512bb)
|
|
(This used to be commit a0d5de61a10321ee2edd832dcda611230d796dd6)
|
|
(This used to be commit 382827ebac61646ec31fe1d56ccde2ea337e8f9e)
|
|
3_0 and
3_0_24 because I was explicitly asked to, although this needs close
review. Jeremy, I'm sure you will check this thoroughly :-)
In reply_open_and_X the separate "size" variable kills the calculation of the
SPARSE flag returned to the client in the attrib field. In getpathinfo we do
it correctly, and RAW-OPEN (correctly) complains about the difference.
Add the "set the write time" to mknew and create.
For trans2open we were missing the "ofun == 0" ->
NT_STATUS_OBJECT_NAME_COLLISION case, and we dropped the status returned in
favor of ACCESS_DENIED once too many.
Last change is a fix to trans2open: We were returning the attributes given by
the client, not the attributes of the new file.
Volker
(This used to be commit 84e6889632c7f98a7cb37036b0acdf538d50d16c)
|
|
(This used to be commit 25c4ebb55f425816e033491138f1216125de6edb)
|
|
the child domain cannot always resolve SIDs in sibling domains.
Windows tries to contact a DC in its own domain and then the root
domain in the forest. This async changes makes winbindd's name2sid()
call do the same.
(This used to be commit 7b2bf0e5a6b8d4119657c7a34aa53c9a0c1d5723)
|
|
(This used to be commit 86e6ae6a9fe2a6fdaeeb503653a312662c7f50e9)
|
|
so apps will know which one to look for,
(This used to be commit d4a5dc3ad5f56a5f741424ecc4fffa0ef39bdc67)
|
|
(This used to be commit cb6c6a49e257d60318101c897e8d2b86de08a846)
|
|
(This used to be commit 471c6e6a2142afbca36163bcdbb5b6fb4e7ac774)
|
|
check_is_at_open==False,
remove that parameter.
Volker
(This used to be commit e51b7648703f3a85b840501dd4199600a5a7e44f)
|
|
(This used to be commit 4f0f917b344743e16e8bacf4e72529a2890590fe)
|
|
The only error path of can_delete() that we're interested in ntcreate&x is the
one of can_delete_file_in_directory(), so call that directly.
The only other one where we might get a NT_STATUS_ACCESS_DENIED is from the
lstat in can_delete, but this is covered later in the open_directory and
open_file_ntcreate calls. open_directory does a stat() in the open case which
also covers the (potential) symlink, and open_file_ntcreate does the open(2)
itself, so this should also work.
This makes can_delete() static to reply.c.
Volker
(This used to be commit d289037fdbc8bd3e0723784888946d5b39ffadef)
|