Age | Commit message (Collapse) | Author | Files | Lines |
|
1. using smbc_getxattr() et al, one may now request all access control
entities in the ACL without getting all other NT attributes.
2. added the ability to exclude specified attributes from the result set
provided by smbc_getxattr() et al, when requesting all attributes,
all NT attributes, or all DOS attributes.
3. eliminated all compiler warnings, including when --enable-developer
compiler flags are in use. removed -Wcast-qual flag from list, as that
is specifically to force warnings in the case of casting away qualifiers.
Note: In the process of eliminating compiler warnings, a few nasties were
discovered. In the file libads/sasl.c, PRIVATE kerberos interfaces
are being used; and in libsmb/clikrb5.c, both PRIAVE and DEPRECATED
kerberos interfaces are being used. Someone who knows kerberos
should look at these and determine if there is an alternate method
of accomplishing the task.
(This used to be commit 994694f7f26da5099f071e1381271a70407f33bb)
|
|
allocation
functions so we can funnel through some well known functions. Should help greatly with
malloc checking.
HEAD patch to follow.
Jeremy.
(This used to be commit 620f2e608f70ba92f032720c031283d295c5c06a)
|
|
type, which does not exist on all platforms.
(This used to be commit acc793ead7e61f1eb87864b676d26f5791367228)
|
|
iconv to recognise UCS-2LE and UTF-16LE as synonyms, which means this
change should be more robust when applied in trees that treat UCS-2LE
or UTF-16LE as correct.
(This used to be commit 92c9fcaec4299ddc16f9d6568a695b1fe161be33)
|
|
in sync :-).
try to cope with a wider range of UTF-16 characters when we are using
an external libiconv library.
Jeremy.
(This used to be commit 5d04cd6804f6fc3b556e7c3b53fa0d7af39797c1)
|
|
the conversion state
(This used to be commit 4a5a122b3a85c653bbf458342400f3b8a69dc615)
|
|
in lib/smbpasswd.c that were exact duplicates of functions in passdb/passdb.c
(These should perhaps be pulled back out to smbpasswd.c, but that can occour
later).
Andrew Bartlett
(This used to be commit fcdc5efb1e245c8fa95cd031f67ec56093b9056e)
|
|
try a crap conversion instead. Next this needs to be done to the convert_alloc
function.
Actually fixes some valgrind warnings as well - cool !
Jeremy.
(This used to be commit 6a7919f2544a689840fe46f3c58ed66f69aca65a)
|
|
(This used to be commit ba95fe56d2db8243191d5dd6b75c6b65e0f5fbe9)
|
|
in iconv.c and nsswitch/). Using them means you're not thinking about multibyte at
all and I really want to discourage that.
Jeremy.
(This used to be commit d7e35dfb9283d560d0ed2ab231f36ed92767dace)
|
|
Jeremy.
(This used to be commit 238bb74c16417140d85a304890b97e04df389ae9)
|
|
problems where ASCII was not detected and 646.so were requested through dynamic loading
(This used to be commit c248cd4784ac0f8f16813de36d293ab6bf1d259b)
|
|
changes so
we end up freeing a pointer we didn't mallocate.
Also, calling strdup() in a frequently called function just to clear up a
const compiler warning seems inelegant and inefficient.
(This used to be commit a0da5ae1198082d0cf18707ed2cf05f728b00d0b)
|
|
(This used to be commit 3a71b4873034b3fe9dc7b23a95e56c865e857507)
|
|
function. Patch by metze with some minor modifications.
(This used to be commit bc4b51bcb2daa7271c884cb83bf8bdba6d3a9b6d)
|
|
to find duplicates
(This used to be commit 871cad7e9ac38e6f8e4391fcb2894d91300cbe94)
|
|
(This used to be commit 64a357017a897d1920c06fc19453470ee517470d)
|
|
-------------------------------------------------------------------------
I think there are basically two problem:
1. Windows clients do not always send ACEs for SMB_ACL_USER_OBJ, SMB_ACL_GROUP_OBJ,
and SMB_ACL_OTHER.
The function ensure_canon_entry_valid() is prepared for that, but tries
to "guess" values from group or other permissions, respectively, otherwise
falling back to minimum r-- for the owner. Even if the owner had full
permissions before setting ACL. This is the problem with W2k clients.
2. Function set_nt_acl() always chowns *before* attempting to set POSIX ACLs.
This is ok in a take-ownership situation, but must fail if the file is
to be given away. This is the problem with XP clients, trying to transfer
ownership of the original file to the temp file.
The problem with NT4 clients (no ACEs are transferred to the temp file, thus
are lost after moving the temp file to the original name) is a client problem.
It simply doesn't attempt to.
I have played around with that using posic_acls.c from 3.0 merged into 2.2.
As a result I can now present two patches, one for each branch. They
basically modify:
1. Interpret missing SMB_ACL_USER_OBJ, SMB_ACL_GROUP_OBJ, or SMB_ACL_OTHER
as "preserve current value" instead of attempting to build one ourself.
The original code is still in, but only as fallback in case current values
can't be retrieved.
2. Rearrange set_nt_acl() such that chown is only done before setting
ACLs if there is either no change of owning user, or change of owning
user is towards the current user. Otherwise chown is done after setting
ACLs.
It now seems to produce reasonable results. (Well, as far as it can. If
NT4 doesn't even try to transfer ACEs, only deliberate use of named default
ACEs and/or "force group" or the crystal ball can help :)
-------------------------------------------------------------------------
Jeremy.
(This used to be commit 1d3b8c528bebfa1971d1affe454a03453335786e)
|
|
(This used to be commit 38fa2898967f607a17fd7fbd324f2940a05fb551)
|
|
Changed "SMB/Netbios" to "SMB/CIFS" in file header.
(This used to be commit 6a58c9bd06d0d7502a24bf5ce5a2faf0a146edfa)
|
|
the need for valid.dat
(This used to be commit 0cfd0a5e543181b1384f7afee93fbaf3ccb2b999)
|
|
(This used to be commit 51cb4411df61d1caec9d84809b1a53a6a632f808)
|
|
warnings)
(This used to be commit b648cc669d16eb40b477c8dc51efeab485a15de5)
|
|
char like libiconv does
(This used to be commit e13e8b190c70136cb2c3588bdcf7328a7f61d152)
|
|
(This used to be commit 60e907b7e8e1c008463a88ed2b076344278986ef)
|
|
which should now be used instead of DEBUG(0) or printf() for
interactive messages
I have only converted client.c to use d_printf(), and the code hasn't
had much testing yet. Eventually we want all interactive code to use
d_printf(), plus SWAT
(This used to be commit 266d8e67669adb329f25676c4bc4d4c50f223428)
|
|
fixes some problems wih some character sets and allows for using
internal charsets in conjunction with ionv charsets
this makes us slower but more correct. speed will come later.
(This used to be commit 594f84b4e39182dcf344c02dc0185376a2726395)
|
|
(This used to be commit e236a3e29e4af24b20ec6af357ce67abf82b4528)
|
|
(This used to be commit 95a9a1814f1a1ac07c316cc920c7493a86d5a09b)
|
|
(This used to be commit 25c4b3f19315bdef57041da79c12271b72015701)
|
|
(This used to be commit 0c61e54f152eca6b7607fcce9ea512bc60a19060)
|
|
(This used to be commit 42648a7aada48220fdfaf6acfe95b9614122f1da)
|
|
(This used to be commit 76d83e7f704cf016308dccaad9bc42d57db97686)
|
|
(This used to be commit bf818268516cfbebcdeacbb0528395e9bbb8e442)
|
|
(This used to be commit 7a5c24c219d8b19f2c3cd11fdde3ebcede0646a2)
|
|
(This used to be commit 815ca752744c2ae93390445f4bb6532d396bbc59)
|
|
This commit gets rid of all our old codepage handling and replaces it with
iconv. All internal strings in Samba are now in "unix" charset, which may
be multi-byte. See internals.doc and my posting to samba-technical for
a more complete explanation.
(This used to be commit debb471267960e56005a741817ebd227ecfc512a)
|