1/* SPDX-License-Identifier: GPL-2.0 */ 2/* 3 * fs/hmdfs/hmdfs_server.h 4 * 5 * Copyright (c) 2020-2021 Huawei Device Co., Ltd. 6 */ 7 8#ifndef HMDFS_SERVER_H 9#define HMDFS_SERVER_H 10 11#include "hmdfs.h" 12#include "comm/transport.h" 13#include "comm/socket_adapter.h" 14 15#define DATA_SEC_LEVEL0 0 16#define DATA_SEC_LEVEL1 1 17#define DATA_SEC_LEVEL2 2 18#define DATA_SEC_LEVEL3 3 19#define DATA_SEC_LEVEL4 4 20#define DATA_SEC_LEVEL_LABEL "user.security" 21#define DATA_SEC_LEVEL_LENGTH 10 22 23static inline void hmdfs_send_err_response(struct hmdfs_peer *con, 24 struct hmdfs_head_cmd *cmd, int err) 25{ 26 if (hmdfs_sendmessage_response(con, cmd, 0, NULL, (__u32)err)) 27 hmdfs_warning("send err failed"); 28} 29 30void hmdfs_server_open(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 31 void *data); 32void hmdfs_server_atomic_open(struct hmdfs_peer *con, 33 struct hmdfs_head_cmd *cmd, void *data); 34void hmdfs_server_fsync(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 35 void *data); 36void hmdfs_server_release(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 37 void *data); 38void hmdfs_server_readpage(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 39 void *data); 40void hmdfs_server_writepage(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 41 void *data); 42 43void hmdfs_server_readdir(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 44 void *data); 45 46void hmdfs_server_mkdir(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 47 void *data); 48 49void hmdfs_server_create(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 50 void *data); 51 52void hmdfs_server_rmdir(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 53 void *data); 54 55void hmdfs_server_unlink(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 56 void *data); 57 58void hmdfs_server_rename(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 59 void *data); 60 61void hmdfs_server_setattr(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 62 void *data); 63void hmdfs_server_getattr(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 64 void *data); 65void hmdfs_server_statfs(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 66 void *data); 67void hmdfs_server_syncfs(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 68 void *data); 69void hmdfs_server_getxattr(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 70 void *data); 71void hmdfs_server_setxattr(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 72 void *data); 73void hmdfs_server_listxattr(struct hmdfs_peer *con, struct hmdfs_head_cmd *cmd, 74 void *data); 75void hmdfs_server_get_drop_push(struct hmdfs_peer *con, 76 struct hmdfs_head_cmd *cmd, void *data); 77 78void __init hmdfs_server_add_node_evt_cb(void); 79#endif 80