s3-epmap: add ncalrpc listener code
[nivanova/samba-autobuild/.git] / source3 / smbd / mangle.c
index 4c00f6d14ab9f9bd436077ba3e2dfa072084b960..ca1b1314cba88219b68ae3a2a5e2afb0cea60ee7 100644 (file)
 */
 
 #include "includes.h"
-
-static struct mangle_fns *mangle_fns;
+#include "smbd/globals.h"
+#include "mangle.h"
 
 /* this allows us to add more mangling backends */
 static const struct {
        const char *name;
-       struct mangle_fns *(*init_fn)(void);
+       const struct mangle_fns *(*init_fn)(void);
 } mangle_backends[] = {
        { "hash", mangle_hash_init },
        { "hash2", mangle_hash2_init },
@@ -80,7 +80,7 @@ void mangle_change_to_posix(void)
 /*
   see if a filename has come out of our mangling code
 */
-BOOL mangle_is_mangled(const char *s, const struct share_params *p)
+bool mangle_is_mangled(const char *s, const struct share_params *p)
 {
        return mangle_fns->is_mangled(s, p);
 }
@@ -88,19 +88,19 @@ BOOL mangle_is_mangled(const char *s, const struct share_params *p)
 /*
   see if a filename matches the rules of a 8.3 filename
 */
-BOOL mangle_is_8_3(const char *fname, BOOL check_case,
+bool mangle_is_8_3(const char *fname, bool check_case,
                   const struct share_params *p)
 {
        return mangle_fns->is_8_3(fname, check_case, False, p);
 }
 
-BOOL mangle_is_8_3_wildcards(const char *fname, BOOL check_case,
+bool mangle_is_8_3_wildcards(const char *fname, bool check_case,
                             const struct share_params *p)
 {
        return mangle_fns->is_8_3(fname, check_case, True, p);
 }
 
-BOOL mangle_must_mangle(const char *fname,
+bool mangle_must_mangle(const char *fname,
                   const struct share_params *p)
 {
        if (!lp_manglednames(p)) {
@@ -115,7 +115,7 @@ BOOL mangle_must_mangle(const char *fname,
   looking for a matching name if it doesn't. It should succeed most of the time
   or there will be a huge performance penalty
 */
-BOOL mangle_lookup_name_from_8_3(TALLOC_CTX *ctx,
+bool mangle_lookup_name_from_8_3(TALLOC_CTX *ctx,
                        const char *in,
                        char **out, /* talloced on the given context. */
                        const struct share_params *p)
@@ -130,9 +130,9 @@ BOOL mangle_lookup_name_from_8_3(TALLOC_CTX *ctx,
    JRA.
  */
 
-BOOL name_to_8_3(const char *in,
+bool name_to_8_3(const char *in,
                char out[13],
-               BOOL cache83,
+               bool cache83,
                const struct share_params *p)
 {
        memset(out,'\0',13);
@@ -140,7 +140,7 @@ BOOL name_to_8_3(const char *in,
        /* name mangling can be disabled for speed, in which case
           we just truncate the string */
        if (!lp_manglednames(p)) {
-               safe_strcpy(out,in,12);
+               strlcpy(out, in, 13);
                return True;
        }