diff options
-rw-r--r-- | source4/lib/util/util.h | 5 | ||||
-rw-r--r-- | source4/lib/util/util_str.c | 7 | ||||
-rw-r--r-- | source4/lib/util/util_strlist.c | 21 | ||||
-rw-r--r-- | source4/utils/ntlm_auth.c | 20 |
4 files changed, 22 insertions, 31 deletions
diff --git a/source4/lib/util/util.h b/source4/lib/util/util.h index 8259e08512..8d71ad1a64 100644 --- a/source4/lib/util/util.h +++ b/source4/lib/util/util.h @@ -562,11 +562,6 @@ _PUBLIC_ bool str_list_check(const char **list, const char *s); */ _PUBLIC_ bool str_list_check_ci(const char **list, const char *s); -/** - Check if a string is part of a list. -**/ -_PUBLIC_ bool in_list(const char *s, const char *list, bool casesensitive); - /* The following definitions come from lib/util/util_file.c */ diff --git a/source4/lib/util/util_str.c b/source4/lib/util/util_str.c index 67e59474fd..eb8155cc7c 100644 --- a/source4/lib/util/util_str.c +++ b/source4/lib/util/util_str.c @@ -23,7 +23,6 @@ #include "includes.h" #include "libcli/raw/smb.h" -#include "pstring.h" #include "system/locale.h" /** @@ -237,7 +236,7 @@ _PUBLIC_ void hex_encode(const unsigned char *buff_in, size_t len, char **out_he int i; char *hex_buffer; - *out_hex_buffer = smb_xmalloc((len*2)+1); + *out_hex_buffer = malloc_array_p(char, (len*2)+1); hex_buffer = *out_hex_buffer; for (i = 0; i < len; i++) @@ -457,7 +456,7 @@ _PUBLIC_ const char *str_format_nbt_domain(TALLOC_CTX *mem_ctx, const char *s) if (!s || !*s) { return talloc_strdup(mem_ctx, ""); } - ret = talloc_size(mem_ctx, strlen(s)+2); + ret = talloc_array(mem_ctx, char, strlen(s)+2); if (!ret) { return ret; } @@ -566,7 +565,7 @@ _PUBLIC_ char *attrib_string(TALLOC_CTX *mem_ctx, uint32_t attrib) }; char *ret; - ret = talloc_size(mem_ctx, ARRAY_SIZE(attr_strs)+1); + ret = talloc_array(mem_ctx, char, ARRAY_SIZE(attr_strs)+1); if (!ret) { return NULL; } diff --git a/source4/lib/util/util_strlist.c b/source4/lib/util/util_strlist.c index ab73fb2d15..a8b106a567 100644 --- a/source4/lib/util/util_strlist.c +++ b/source4/lib/util/util_strlist.c @@ -300,25 +300,4 @@ _PUBLIC_ bool str_list_check_ci(const char **list, const char *s) return false; } -/** - Check if a string is part of a list. -**/ -_PUBLIC_ bool in_list(const char *s, const char *list, bool casesensitive) -{ - pstring tok; - const char *p=list; - if (!list) - return false; - - while (next_token(&p,tok,LIST_SEP,sizeof(tok))) { - if (casesensitive) { - if (strcmp(tok,s) == 0) - return true; - } else { - if (strcasecmp_m(tok,s) == 0) - return true; - } - } - return false; -} diff --git a/source4/utils/ntlm_auth.c b/source4/utils/ntlm_auth.c index 4ce8fc6d3f..9659541319 100644 --- a/source4/utils/ntlm_auth.c +++ b/source4/utils/ntlm_auth.c @@ -120,7 +120,7 @@ static void mux_printf(unsigned int mux_id, const char *format, ...) /* Copy of parse_domain_user from winbindd_util.c. Parse a string of the form DOMAIN/user into a domain and a user */ -static BOOL parse_ntlm_auth_domain_user(const char *domuser, fstring domain, +static bool parse_ntlm_auth_domain_user(const char *domuser, fstring domain, fstring user) { @@ -324,6 +324,24 @@ static const char *get_password(struct cli_credentials *credentials) return password; } +/** + Check if a string is part of a list. +**/ +static bool in_list(const char *s, const char *list, bool casesensitive) +{ + pstring tok; + const char *p=list; + + if (!list) + return false; + + while (next_token(&p, tok, LIST_SEP, sizeof(tok))) { + if ((casesensitive?strcmp:strcasecmp_m)(tok,s) == 0) + return true; + } + return false; +} + static void gensec_want_feature_list(struct gensec_security *state, char* feature_list) { if (in_list("NTLMSSP_FEATURE_SESSION_KEY", feature_list, True)) { |