Commit | Line | Data |
---|---|---|
bf80e5d4 SC |
1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | /* | |
3 | * Witness Service client for CIFS | |
4 | * | |
5 | * Copyright (c) 2020 Samuel Cabrero <scabrero@suse.de> | |
6 | */ | |
7 | ||
8 | #ifndef _CIFS_SWN_H | |
9 | #define _CIFS_SWN_H | |
b7fd0fa0 | 10 | #include "cifsglob.h" |
bf80e5d4 SC |
11 | |
12 | struct cifs_tcon; | |
fed979a7 SC |
13 | struct sk_buff; |
14 | struct genl_info; | |
bf80e5d4 | 15 | |
b7fd0fa0 | 16 | #ifdef CONFIG_CIFS_SWN_UPCALL |
bf80e5d4 SC |
17 | extern int cifs_swn_register(struct cifs_tcon *tcon); |
18 | ||
19 | extern int cifs_swn_unregister(struct cifs_tcon *tcon); | |
20 | ||
fed979a7 SC |
21 | extern int cifs_swn_notify(struct sk_buff *skb, struct genl_info *info); |
22 | ||
20fab0da SC |
23 | extern void cifs_swn_dump(struct seq_file *m); |
24 | ||
21077c62 SC |
25 | extern void cifs_swn_check(void); |
26 | ||
b7fd0fa0 AA |
27 | static inline bool cifs_swn_set_server_dstaddr(struct TCP_Server_Info *server) |
28 | { | |
29 | if (server->use_swn_dstaddr) { | |
30 | server->dstaddr = server->swn_dstaddr; | |
31 | return true; | |
32 | } | |
33 | return false; | |
34 | } | |
35 | ||
36 | static inline void cifs_swn_reset_server_dstaddr(struct TCP_Server_Info *server) | |
37 | { | |
38 | server->use_swn_dstaddr = false; | |
39 | } | |
40 | ||
41 | #else | |
42 | ||
43 | static inline int cifs_swn_register(struct cifs_tcon *tcon) { return 0; } | |
44 | static inline int cifs_swn_unregister(struct cifs_tcon *tcon) { return 0; } | |
45 | static inline int cifs_swn_notify(struct sk_buff *s, struct genl_info *i) { return 0; } | |
46 | static inline void cifs_swn_dump(struct seq_file *m) {} | |
47 | static inline void cifs_swn_check(void) {} | |
48 | static inline bool cifs_swn_set_server_dstaddr(struct TCP_Server_Info *server) { return false; } | |
49 | static inline void cifs_swn_reset_server_dstaddr(struct TCP_Server_Info *server) {} | |
50 | ||
51 | #endif /* CONFIG_CIFS_SWN_UPCALL */ | |
bf80e5d4 | 52 | #endif /* _CIFS_SWN_H */ |