diff options
author | Jeremy Allison <jra@samba.org> | 2005-02-03 02:02:54 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 10:55:32 -0500 |
commit | 91ef89daa03551fa17ff78adb9f36420057948da (patch) | |
tree | c0ad7eecb05150e9c1e8052db354f15fe6e563a8 /source3/smbd/service.c | |
parent | 4523bd1446dc411a29b82bdd13e564979b0d5d18 (diff) | |
download | samba-91ef89daa03551fa17ff78adb9f36420057948da.tar.gz samba-91ef89daa03551fa17ff78adb9f36420057948da.tar.xz samba-91ef89daa03551fa17ff78adb9f36420057948da.zip |
r5183: Ensure we correctly set the per-connection "case_sensitive" setting.
Rename dptrs_open to the more correct dirhandles_open.
Remove old #if 1.
Jeremy.
(This used to be commit c43bae306a18f5716acbe8571f4f414873400cb1)
Diffstat (limited to 'source3/smbd/service.c')
-rw-r--r-- | source3/smbd/service.c | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/source3/smbd/service.c b/source3/smbd/service.c index 2e60adc6366..f199fe3ade6 100644 --- a/source3/smbd/service.c +++ b/source3/smbd/service.c @@ -60,17 +60,26 @@ BOOL set_current_service(connection_struct *conn, uint16 flags, BOOL do_chdir) last_flags = flags; /* Obey the client case sensitivity requests - only for clients that support it. */ - if (lp_casesensitive(snum) == Auto) { - /* We need this uglyness due to DOS/Win9x clients that lie about case insensitivity. */ - enum remote_arch_types ra_type = get_remote_arch(); - if ((ra_type != RA_SAMBA) && (ra_type != RA_CIFSFS)) { - /* Client can't support per-packet case sensitive pathnames. */ + switch (lp_casesensitive(snum)) { + case Auto: + { + /* We need this uglyness due to DOS/Win9x clients that lie about case insensitivity. */ + enum remote_arch_types ra_type = get_remote_arch(); + if ((ra_type != RA_SAMBA) && (ra_type != RA_CIFSFS)) { + /* Client can't support per-packet case sensitive pathnames. */ + conn->case_sensitive = False; + } else { + conn->case_sensitive = !(flags & FLAG_CASELESS_PATHNAMES); + } + } + break; + case True: + conn->case_sensitive = True; + break; + default: conn->case_sensitive = False; - } else { - conn->case_sensitive = !(flags & FLAG_CASELESS_PATHNAMES); - } + break; } - magic_char = lp_magicchar(snum); return(True); } |