1 | /* SPDX-License-Identifier: LGPL-2.1+ WITH Linux-syscall-note */ |
2 | /* |
3 | * Netlink routines for CIFS |
4 | * |
5 | * Copyright (c) 2020 Samuel Cabrero <scabrero@suse.de> |
6 | */ |
7 | |
8 | |
9 | #ifndef _UAPILINUX_CIFS_NETLINK_H |
10 | #define _UAPILINUX_CIFS_NETLINK_H |
11 | |
12 | #define CIFS_GENL_NAME "cifs" |
13 | #define CIFS_GENL_VERSION 0x1 |
14 | |
15 | #define CIFS_GENL_MCGRP_SWN_NAME "cifs_mcgrp_swn" |
16 | |
17 | enum cifs_genl_multicast_groups { |
18 | CIFS_GENL_MCGRP_SWN, |
19 | }; |
20 | |
21 | enum cifs_genl_attributes { |
22 | CIFS_GENL_ATTR_UNSPEC, |
23 | CIFS_GENL_ATTR_SWN_REGISTRATION_ID, |
24 | CIFS_GENL_ATTR_SWN_NET_NAME, |
25 | CIFS_GENL_ATTR_SWN_SHARE_NAME, |
26 | CIFS_GENL_ATTR_SWN_IP, |
27 | CIFS_GENL_ATTR_SWN_NET_NAME_NOTIFY, |
28 | CIFS_GENL_ATTR_SWN_SHARE_NAME_NOTIFY, |
29 | CIFS_GENL_ATTR_SWN_IP_NOTIFY, |
30 | CIFS_GENL_ATTR_SWN_KRB_AUTH, |
31 | CIFS_GENL_ATTR_SWN_USER_NAME, |
32 | CIFS_GENL_ATTR_SWN_PASSWORD, |
33 | CIFS_GENL_ATTR_SWN_DOMAIN_NAME, |
34 | CIFS_GENL_ATTR_SWN_NOTIFICATION_TYPE, |
35 | CIFS_GENL_ATTR_SWN_RESOURCE_STATE, |
36 | CIFS_GENL_ATTR_SWN_RESOURCE_NAME, |
37 | __CIFS_GENL_ATTR_MAX, |
38 | }; |
39 | #define CIFS_GENL_ATTR_MAX (__CIFS_GENL_ATTR_MAX - 1) |
40 | |
41 | enum cifs_genl_commands { |
42 | CIFS_GENL_CMD_UNSPEC, |
43 | CIFS_GENL_CMD_SWN_REGISTER, |
44 | CIFS_GENL_CMD_SWN_UNREGISTER, |
45 | CIFS_GENL_CMD_SWN_NOTIFY, |
46 | __CIFS_GENL_CMD_MAX |
47 | }; |
48 | #define CIFS_GENL_CMD_MAX (__CIFS_GENL_CMD_MAX - 1) |
49 | |
50 | enum cifs_swn_notification_type { |
51 | CIFS_SWN_NOTIFICATION_RESOURCE_CHANGE = 0x01, |
52 | CIFS_SWN_NOTIFICATION_CLIENT_MOVE = 0x02, |
53 | CIFS_SWN_NOTIFICATION_SHARE_MOVE = 0x03, |
54 | CIFS_SWN_NOTIFICATION_IP_CHANGE = 0x04, |
55 | }; |
56 | |
57 | enum cifs_swn_resource_state { |
58 | CIFS_SWN_RESOURCE_STATE_UNKNOWN = 0x00, |
59 | CIFS_SWN_RESOURCE_STATE_AVAILABLE = 0x01, |
60 | CIFS_SWN_RESOURCE_STATE_UNAVAILABLE = 0xFF |
61 | }; |
62 | |
63 | #endif /* _UAPILINUX_CIFS_NETLINK_H */ |
64 | |