diff options
Diffstat (limited to 'source3/lib')
-rw-r--r-- | source3/lib/substitute.c | 53 | ||||
-rw-r--r-- | source3/lib/util.c | 32 |
2 files changed, 42 insertions, 43 deletions
diff --git a/source3/lib/substitute.c b/source3/lib/substitute.c index c9dc1d2eb4..55acdd95e3 100644 --- a/source3/lib/substitute.c +++ b/source3/lib/substitute.c @@ -3,17 +3,17 @@ string substitution functions Copyright (C) Andrew Tridgell 1992-2000 Copyright (C) Gerald Carter 2006 - + 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 the Free Software Foundation; either version 3 of the License, or (at your option) any later version. - + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ @@ -276,12 +276,12 @@ static char * realloc_expand_env_var(char *str, char *p) r = p + 3; copylen = q - r; - + /* reserve space for use later add %$() chars */ if ( (envname = (char *)SMB_MALLOC(copylen + 1 + 4)) == NULL ) { return NULL; } - + strncpy(envname,r,copylen); envname[copylen] = '\0'; @@ -301,7 +301,7 @@ static char * realloc_expand_env_var(char *str, char *p) envname[copylen] = '\0'; r = realloc_string_sub(str, envname, envval); SAFE_FREE(envname); - + return r; } @@ -313,17 +313,17 @@ static char *longvar_domainsid( void ) DOM_SID sid; fstring tmp; char *sid_string; - + if ( !secrets_fetch_domain_sid( lp_workgroup(), &sid ) ) { return NULL; } - + sid_string = SMB_STRDUP( sid_to_fstring( tmp, &sid ) ); - + if ( !sid_string ) { DEBUG(0,("longvar_domainsid: failed to dup SID string!\n")); } - + return sid_string; } @@ -343,15 +343,15 @@ static struct api_longvar longvar_table[] = { static char *get_longvar_val( const char *varname ) { int i; - + DEBUG(7,("get_longvar_val: expanding variable [%s]\n", varname)); - + for ( i=0; longvar_table[i].name; i++ ) { if ( strequal( longvar_table[i].name, varname ) ) { return longvar_table[i].fn(); } } - + return NULL; } @@ -515,13 +515,12 @@ void standard_sub_basic(const char *smb_name, const char *domain_name, char *str, size_t len) { char *s; - + if ( (s = alloc_sub_basic( smb_name, domain_name, str )) != NULL ) { strncpy( str, s, len ); } - + SAFE_FREE( s ); - } /**************************************************************************** @@ -533,7 +532,7 @@ char *talloc_sub_basic(TALLOC_CTX *mem_ctx, const char *smb_name, const char *domain_name, const char *str) { char *a, *t; - + if ( (a = alloc_sub_basic(smb_name, domain_name, str)) == NULL ) { return NULL; } @@ -555,12 +554,12 @@ char *alloc_sub_basic(const char *smb_name, const char *domain_name, TALLOC_CTX *tmp_ctx = NULL; /* workaround to prevent a crash while looking at bug #687 */ - + if (!str) { DEBUG(0,("alloc_sub_basic: NULL source string! This should not happen\n")); return NULL; } - + a_string = SMB_STRDUP(str); if (a_string == NULL) { DEBUG(0, ("alloc_sub_basic: Out of memory!\n")); @@ -722,11 +721,11 @@ char *talloc_sub_specified(TALLOC_CTX *mem_ctx, DEBUG(0, ("talloc_sub_specified: Out of memory!\n")); goto done; } - + for (b = s = a_string; (p = strchr_m(s, '%')); s = a_string + (p - b)) { - + b = a_string; - + switch (*(p+1)) { case 'U' : a_string = talloc_string_sub( @@ -802,11 +801,11 @@ static char *alloc_sub_advanced(const char *servicename, const char *user, DEBUG(0, ("alloc_sub_advanced: Out of memory!\n")); return NULL; } - + for (b = s = a_string; (p = strchr_m(s, '%')); s = a_string + (p - b)) { - + b = a_string; - + switch (*(p+1)) { case 'N' : a_string = realloc_string_sub(a_string, "%N", automount_server(user)); @@ -830,7 +829,7 @@ static char *alloc_sub_advanced(const char *servicename, const char *user, case 'u': a_string = realloc_string_sub(a_string, "%u", user); break; - + /* Patch from jkf@soton.ac.uk Left the %N (NIS * server name) in standard_sub_basic as it is * a feature for logon servers, hence uses the @@ -842,7 +841,7 @@ static char *alloc_sub_advanced(const char *servicename, const char *user, a_string = realloc_string_sub(a_string, "%p", automount_path(servicename)); break; - + default: break; } diff --git a/source3/lib/util.c b/source3/lib/util.c index 6348ddc193..e0b09c4f1f 100644 --- a/source3/lib/util.c +++ b/source3/lib/util.c @@ -11,12 +11,12 @@ it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. - + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ @@ -532,7 +532,7 @@ bool file_exist_stat(const char *fname,SMB_STRUCT_STAT *sbuf) SMB_STRUCT_STAT st; if (!sbuf) sbuf = &st; - + if (sys_stat(fname,sbuf) != 0) return(False); @@ -626,7 +626,7 @@ void show_msg(char *buf) if (!DEBUGLVL(5)) return; - + DEBUG(5,("size=%d\nsmb_com=0x%x\nsmb_rcls=%d\nsmb_reh=%d\nsmb_err=%d\nsmb_flg=%d\nsmb_flg2=%d\n", smb_len(buf), (int)CVAL(buf,smb_com), @@ -645,7 +645,7 @@ void show_msg(char *buf) for (i=0;i<(int)CVAL(buf,smb_wct);i++) DEBUGADD(5,("smb_vwv[%2d]=%5d (0x%X)\n",i, SVAL(buf,smb_vwv+2*i),SVAL(buf,smb_vwv+2*i))); - + bcc = (int)SVAL(buf,smb_vwv+2*(CVAL(buf,smb_wct))); DEBUGADD(5,("smb_bcc=%d\n",bcc)); @@ -896,7 +896,7 @@ void smb_msleep(unsigned int t) GetTimeOfDay(&t1); t2 = t1; - + while (tdiff < t) { tval.tv_sec = (t-tdiff)/1000; tval.tv_usec = 1000*((t-tdiff)%1000); @@ -1217,9 +1217,9 @@ int interpret_protocol(const char *str,int def) return(PROTOCOL_COREPLUS); if (strequal(str,"CORE+")) return(PROTOCOL_COREPLUS); - + DEBUG(0,("Unrecognised protocol level %s\n",str)); - + return(def); } @@ -1577,7 +1577,7 @@ libunwind_failed: DEBUG(0, ("BACKTRACE: %lu stack frames:\n", (unsigned long)backtrace_size)); - + if (backtrace_strings) { int i; @@ -1641,7 +1641,7 @@ const char *readdirname(SMB_STRUCT_DIR *p) if (!p) return(NULL); - + ptr = (SMB_STRUCT_DIRENT *)sys_readdir(p); if (!ptr) return(NULL); @@ -1715,7 +1715,7 @@ bool is_in_path(const char *name, name_compare_entry *namelist, bool case_sensit remove a potentially expensive call to mask_match if possible. ********************************************************************/ - + void set_namearray(name_compare_entry **ppname_array, const char *namelist) { char *name_end; @@ -1791,7 +1791,7 @@ void set_namearray(name_compare_entry **ppname_array, const char *namelist) nameptr = name_end + 1; i++; } - + (*ppname_array)[i].name = NULL; return; @@ -1851,7 +1851,7 @@ bool fcntl_getlock(int fd, SMB_OFF_T *poffset, SMB_OFF_T *pcount, int *ptype, pi *poffset = lock.l_start; *pcount = lock.l_len; *ppid = lock.l_pid; - + DEBUG(3,("fcntl_getlock: fd %d is returned info %d pid %u\n", fd, (int)lock.l_type, (unsigned int)lock.l_pid)); return True; @@ -2310,7 +2310,7 @@ bool parent_dirname(TALLOC_CTX *mem_ctx, const char *dir, char **parent, { char *p; ptrdiff_t len; - + p = strrchr_m(dir, '/'); /* Find final '/', if any */ if (p == NULL) { @@ -2390,7 +2390,7 @@ bool mask_match(const char *string, const char *pattern, bool is_case_sensitive) string = "."; if (ISDOT(pattern)) return False; - + return ms_fnmatch(pattern, string, Protocol <= PROTOCOL_LANMAN2, is_case_sensitive) == 0; } @@ -2406,7 +2406,7 @@ bool mask_match_search(const char *string, const char *pattern, bool is_case_sen string = "."; if (ISDOT(pattern)) return False; - + return ms_fnmatch(pattern, string, True, is_case_sensitive) == 0; } |