162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (C) 2016 Namjae Jeon <linkinjeon@kernel.org> 462306a36Sopenharmony_ci * Copyright (C) 2018 Samsung Electronics Co., Ltd. 562306a36Sopenharmony_ci */ 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci#ifndef __KSMBD_GLOB_H 862306a36Sopenharmony_ci#define __KSMBD_GLOB_H 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#include <linux/ctype.h> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci#include "unicode.h" 1362306a36Sopenharmony_ci#include "vfs_cache.h" 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci#define KSMBD_VERSION "3.4.2" 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ciextern int ksmbd_debug_types; 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci#define KSMBD_DEBUG_SMB BIT(0) 2062306a36Sopenharmony_ci#define KSMBD_DEBUG_AUTH BIT(1) 2162306a36Sopenharmony_ci#define KSMBD_DEBUG_VFS BIT(2) 2262306a36Sopenharmony_ci#define KSMBD_DEBUG_OPLOCK BIT(3) 2362306a36Sopenharmony_ci#define KSMBD_DEBUG_IPC BIT(4) 2462306a36Sopenharmony_ci#define KSMBD_DEBUG_CONN BIT(5) 2562306a36Sopenharmony_ci#define KSMBD_DEBUG_RDMA BIT(6) 2662306a36Sopenharmony_ci#define KSMBD_DEBUG_ALL (KSMBD_DEBUG_SMB | KSMBD_DEBUG_AUTH | \ 2762306a36Sopenharmony_ci KSMBD_DEBUG_VFS | KSMBD_DEBUG_OPLOCK | \ 2862306a36Sopenharmony_ci KSMBD_DEBUG_IPC | KSMBD_DEBUG_CONN | \ 2962306a36Sopenharmony_ci KSMBD_DEBUG_RDMA) 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci#ifdef pr_fmt 3262306a36Sopenharmony_ci#undef pr_fmt 3362306a36Sopenharmony_ci#endif 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_ci#ifdef SUBMOD_NAME 3662306a36Sopenharmony_ci#define pr_fmt(fmt) "ksmbd: " SUBMOD_NAME ": " fmt 3762306a36Sopenharmony_ci#else 3862306a36Sopenharmony_ci#define pr_fmt(fmt) "ksmbd: " fmt 3962306a36Sopenharmony_ci#endif 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ci#define ksmbd_debug(type, fmt, ...) \ 4262306a36Sopenharmony_ci do { \ 4362306a36Sopenharmony_ci if (ksmbd_debug_types & KSMBD_DEBUG_##type) \ 4462306a36Sopenharmony_ci pr_info(fmt, ##__VA_ARGS__); \ 4562306a36Sopenharmony_ci } while (0) 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_ci#define UNICODE_LEN(x) ((x) * 2) 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ci#endif /* __KSMBD_GLOB_H */ 50