mirror of
https://github.com/samba-team/samba.git
synced 2025-02-23 09:57:40 +03:00
minor fixes
(This used to be commit 04f492980b73800b60dde764fdeb43f2eab79624)
This commit is contained in:
parent
ca12d82eaf
commit
114eaabdcb
@ -6,6 +6,7 @@
|
||||
Copyright (C) John H Terpstra 1996-2000
|
||||
Copyright (C) Luke Kenneth Casson Leighton 1996-2000
|
||||
Copyright (C) Paul Ashton 1998-2000
|
||||
Copyright (C) Simo Sorce 2001-2002
|
||||
Copyright (C) Martin Pool 2002
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
@ -386,10 +387,8 @@ typedef struct write_cache
|
||||
|
||||
typedef struct
|
||||
{
|
||||
smb_ucs2_t *path;
|
||||
smb_ucs2_t *name;
|
||||
smb_ucs2_t *unixname;
|
||||
smb_ucs2_t *dosname;
|
||||
smb_ucs2_t *origname;
|
||||
smb_ucs2_t *filename;
|
||||
SMB_STRUCT_STAT *statinfo;
|
||||
} smb_filename;
|
||||
|
||||
|
@ -449,13 +449,14 @@ smb_ucs2_t *unix_clean_path(const smb_ucs2_t *s)
|
||||
|
||||
/* reduce any /../ */
|
||||
t = ns;
|
||||
while ((r = strstr_wa(t, "/.."))) {
|
||||
while (*t && (r = strstr_wa(t, "/.."))) {
|
||||
t = &(r[3]);
|
||||
if (*t == UCS2_CHAR('/') || *t == 0) {
|
||||
*r = 0;
|
||||
p = strrchr_w(ns, UCS2_CHAR('/'));
|
||||
if (!p) p = ns;
|
||||
memmove(p, t, (strlen_w(t) + 1) * sizeof(smb_ucs2_t));
|
||||
if (*t == 0) *p = 0;
|
||||
else memmove(p, t, (strlen_w(t) + 1) * sizeof(smb_ucs2_t));
|
||||
t = p;
|
||||
}
|
||||
}
|
||||
|
@ -3,6 +3,7 @@
|
||||
Version 3.0
|
||||
Samba utility functions
|
||||
Copyright (C) Andrew Tridgell 1992-2001
|
||||
Copyright (C) Simo Sorce 2001-2002
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@ -749,8 +750,8 @@ len is the number of bytes, not chars
|
||||
if len==0 then no length check is performed
|
||||
****************************************************************************/
|
||||
|
||||
smb_ucs2_t *all_string_sub_w(smb_ucs2_t *s, const smb_ucs2_t *pattern,
|
||||
const smb_ucs2_t *insert)
|
||||
smb_ucs2_t *all_string_sub_w(const smb_ucs2_t *s, const smb_ucs2_t *pattern,
|
||||
const smb_ucs2_t *insert)
|
||||
{
|
||||
smb_ucs2_t *r, *rp, *sp;
|
||||
size_t lr, lp, li, lt;
|
||||
@ -951,7 +952,7 @@ int pstr_sprintf(pstring s, const char *fmt, ...)
|
||||
}
|
||||
|
||||
|
||||
/* Just a typesafety wrapper for snprintf into a pstring */
|
||||
/* Just a typesafety wrapper for snprintf into a fstring */
|
||||
int fstr_sprintf(fstring s, const char *fmt, ...)
|
||||
{
|
||||
va_list ap;
|
||||
|
@ -538,16 +538,18 @@ done:
|
||||
|
||||
BOOL is_8_3(const char *fname, BOOL check_case)
|
||||
{
|
||||
char *f;
|
||||
smb_ucs2_t *ucs2name;
|
||||
NTSTATUS ret = NT_STATUS_UNSUCCESSFUL;
|
||||
|
||||
if (!fname || !*fname) return False;
|
||||
if ((f = strrchr(fname, '/')) == NULL) f = fname;
|
||||
|
||||
DEBUG(10,("is_8_3: testing [%s]\n", fname));
|
||||
DEBUG(10,("is_8_3: testing [%s]\n", f));
|
||||
|
||||
if (strlen(fname) > 12) return False;
|
||||
if (strlen(f) > 12) return False;
|
||||
|
||||
ucs2name = acnv_uxu2(fname);
|
||||
ucs2name = acnv_uxu2(f);
|
||||
if (!ucs2name)
|
||||
{
|
||||
DEBUG(0,("is_8_3: out of memory!\n"));
|
||||
|
Loading…
x
Reference in New Issue
Block a user