summaryrefslogtreecommitdiff
path: root/fs/smb/server/misc.h
diff options
context:
space:
mode:
Diffstat (limited to 'fs/smb/server/misc.h')
-rw-r--r--fs/smb/server/misc.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/fs/smb/server/misc.h b/fs/smb/server/misc.h
index 1facfcd21200..13423696ae8c 100644
--- a/fs/smb/server/misc.h
+++ b/fs/smb/server/misc.h
@@ -6,6 +6,9 @@
#ifndef __KSMBD_MISC_H__
#define __KSMBD_MISC_H__
+#ifdef CONFIG_PROC_FS
+#include <linux/proc_fs.h>
+#endif
struct ksmbd_share_config;
struct nls_table;
struct kstat;
@@ -34,4 +37,31 @@ char *ksmbd_convert_dir_info_name(struct ksmbd_dir_info *d_info,
struct timespec64 ksmbd_NTtimeToUnix(__le64 ntutc);
u64 ksmbd_UnixTimeToNT(struct timespec64 t);
long long ksmbd_systime(void);
+
+#ifdef CONFIG_PROC_FS
+struct ksmbd_const_name {
+ unsigned int const_value;
+ const char *name;
+};
+
+void ksmbd_proc_init(void);
+void ksmbd_proc_cleanup(void);
+void ksmbd_proc_reset(void);
+struct proc_dir_entry *ksmbd_proc_create(const char *name,
+ int (*show)(struct seq_file *m, void *v),
+ void *v);
+void ksmbd_proc_show_flag_names(struct seq_file *m,
+ const struct ksmbd_const_name *table,
+ int count,
+ unsigned int flags);
+void ksmbd_proc_show_const_name(struct seq_file *m,
+ const char *format,
+ const struct ksmbd_const_name *table,
+ int count,
+ unsigned int const_value);
+#else
+static inline void ksmbd_proc_init(void) {}
+static inline void ksmbd_proc_cleanup(void) {}
+static inline void ksmbd_proc_reset(void) {}
+#endif
#endif /* __KSMBD_MISC_H__ */