1 /*
2  * Copyright (c) 2024 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include "file_operations_base.h"
17 
18 #include "assistant.h"
19 
20 using namespace OHOS::FileManagement::CloudDisk;
fuse_req_userdata(fuse_req_t req)21 void *fuse_req_userdata(fuse_req_t req)
22 {
23     return Assistant::ins->fuse_req_userdata(req);
24 }
25 
fuse_reply_err(fuse_req_t req,int err)26 int fuse_reply_err(fuse_req_t req, int err)
27 {
28     return Assistant::ins->fuse_reply_err(req, err);
29 }
30 
fuse_reply_open(fuse_req_t req,const struct fuse_file_info * fi)31 int fuse_reply_open(fuse_req_t req, const struct fuse_file_info *fi)
32 {
33     return Assistant::ins->fuse_reply_open(req, fi);
34 }
35 
fuse_reply_none(fuse_req_t req)36 void fuse_reply_none(fuse_req_t req)
37 {
38     return Assistant::ins->fuse_reply_none(req);
39 }
40 
fuse_reply_data(fuse_req_t req,struct fuse_bufvec * bufv,enum fuse_buf_copy_flags flags)41 int fuse_reply_data(fuse_req_t req, struct fuse_bufvec *bufv, enum fuse_buf_copy_flags flags)
42 {
43     return Assistant::ins->fuse_reply_data(req, bufv, flags);
44 }
45 
fuse_buf_size(const struct fuse_bufvec * bufv)46 size_t fuse_buf_size(const struct fuse_bufvec *bufv)
47 {
48     return Assistant::ins->fuse_buf_size(bufv);
49 }
50 
fuse_buf_copy(struct fuse_bufvec * dst,struct fuse_bufvec * src,enum fuse_buf_copy_flags flags)51 ssize_t fuse_buf_copy(struct fuse_bufvec *dst, struct fuse_bufvec *src, enum fuse_buf_copy_flags flags)
52 {
53     return Assistant::ins->fuse_buf_copy(dst, src, flags);
54 }
55 
fuse_reply_write(fuse_req_t req,size_t count)56 int fuse_reply_write(fuse_req_t req, size_t count)
57 {
58     return Assistant::ins->fuse_reply_write(req, count);
59 }
60 
fuse_reply_lseek(fuse_req_t req,off_t off)61 int fuse_reply_lseek(fuse_req_t req, off_t off)
62 {
63     return Assistant::ins->fuse_reply_lseek(req, off);
64 }
65 
fuse_reply_buf(fuse_req_t req,const char * buf,size_t size)66 int fuse_reply_buf(fuse_req_t req, const char *buf, size_t size)
67 {
68     return Assistant::ins->fuse_reply_buf(req, buf, size);
69 }
70 
fuse_reply_xattr(fuse_req_t req,size_t count)71 int fuse_reply_xattr(fuse_req_t req, size_t count)
72 {
73     return Assistant::ins->fuse_reply_xattr(req, count);
74 }
75 
fuse_reply_attr(fuse_req_t req,const struct stat * attr,double attr_timeout)76 int fuse_reply_attr(fuse_req_t req, const struct stat *attr, double attr_timeout)
77 {
78     return Assistant::ins->fuse_reply_attr(req, attr, attr_timeout);
79 }
80 
fuse_reply_entry(fuse_req_t req,const struct fuse_entry_param * e)81 int fuse_reply_entry(fuse_req_t req, const struct fuse_entry_param *e)
82 {
83     return Assistant::ins->fuse_reply_entry(req, e);
84 }