diff options
author | Derrell Lipman <derrell.lipman@unwireduniverse.com> | 2009-01-16 16:41:36 -0500 |
---|---|---|
committer | Derrell Lipman <derrell.lipman@unwireduniverse.com> | 2009-01-16 16:41:36 -0500 |
commit | 1c77c7f3d5b6cb29fac4606299c237c0e299f836 (patch) | |
tree | f50abf80313313ef68781f9550d7ae434092874c /source3/include | |
parent | 3fe974c4feed33187294a0cb922c20f7dbfeaf43 (diff) | |
download | samba-1c77c7f3d5b6cb29fac4606299c237c0e299f836.tar.gz samba-1c77c7f3d5b6cb29fac4606299c237c0e299f836.tar.bz2 samba-1c77c7f3d5b6cb29fac4606299c237c0e299f836.zip |
Treat file names in POSIX-like case-sensitive fashion by default
*** THIS COMMIT CAUSES A CHANGE OF DEFAULT BEHAVIOR IN libsmbclient!!! ***
- libsmbclient now calls cli_set_case_sensitive() for a new CLI. By default,
it requests case-sensitive, but the old behavior of case-insensitive can be
requested with smbc_setOptionCaseSensitive(context, False);
The change of behavior is considered a bug fix, as it was previously
possible to accidentally overwrite a file that had the same case-insensitive
name but a different case-sensitive name as a previously-existing file,
while creating a new file.
Derrell
Diffstat (limited to 'source3/include')
-rw-r--r-- | source3/include/libsmb_internal.h | 5 | ||||
-rw-r--r-- | source3/include/libsmbclient.h | 9 |
2 files changed, 14 insertions, 0 deletions
diff --git a/source3/include/libsmb_internal.h b/source3/include/libsmb_internal.h index b488116939..8b410b4f7f 100644 --- a/source3/include/libsmb_internal.h +++ b/source3/include/libsmb_internal.h @@ -176,6 +176,11 @@ struct SMBC_internal_data { */ smbc_smb_encrypt_level smb_encryption_level; + /* + * Should we request case sensitivity of file names? + */ + bool case_sensitive; + struct smbc_server_cache * server_cache; /* POSIX emulation functions */ diff --git a/source3/include/libsmbclient.h b/source3/include/libsmbclient.h index a8b27b709e..4a8accbf4e 100644 --- a/source3/include/libsmbclient.h +++ b/source3/include/libsmbclient.h @@ -550,6 +550,15 @@ smbc_getOptionSmbEncryptionLevel(SMBCCTX *c); void smbc_setOptionSmbEncryptionLevel(SMBCCTX *c, smbc_smb_encrypt_level level); +/** Get whether to treat file names as case-sensitive. */ +smbc_bool +smbc_getOptionCaseSensitive(SMBCCTX *c); + +/** Set whether to treat file names as case-sensitive. */ +void +smbc_setOptionCaseSensitive(SMBCCTX *c, smbc_bool b); + + /** * Get from how many local master browsers should the list of workgroups be * retrieved. It can take up to 12 minutes or longer after a server becomes a |