1 /*
2 * Copyright (c) 2021-2023 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 "softbus_adapter_file.h"
17
18 #include "cmsis_os2.h"
19 #include "comm_log.h"
20 #include "softbus_adapter_errcode.h"
21 #include "softbus_errcode.h"
22 #include "utils_file.h"
23
SoftBusReadFile(int32_t fd,void * readBuf,uint32_t maxLen)24 int32_t SoftBusReadFile(int32_t fd, void *readBuf, uint32_t maxLen)
25 {
26 (void)fd;
27 (void)readBuf;
28 (void)maxLen;
29 return -1;
30 }
31
SoftBusReadFullFile(const char * fileName,char * readBuf,uint32_t maxLen)32 int32_t SoftBusReadFullFile(const char *fileName, char *readBuf, uint32_t maxLen)
33 {
34 if (fileName == NULL || readBuf == NULL || maxLen == 0) {
35 return SOFTBUS_INVALID_PARAM;
36 }
37 uint32_t fileLen = 0;
38 int32_t fd = UtilsFileOpen(fileName, O_RDONLY_FS, 0);
39 if (fd < 0) {
40 COMM_LOGE(COMM_ADAPTER, "Read UtilsFileOpen fail");
41 return SOFTBUS_FILE_ERR;
42 }
43 int32_t ret = UtilsFileStat(fileName, &fileLen);
44 if (ret < 0) {
45 COMM_LOGE(COMM_ADAPTER, "Read UtilsFileStat fail");
46 UtilsFileClose(fd);
47 return SOFTBUS_FILE_ERR;
48 }
49 ret = UtilsFileSeek(fd, 0, SEEK_SET_FS);
50 if (ret < 0) {
51 COMM_LOGE(COMM_ADAPTER, "Read UtilsFileSeek fail");
52 UtilsFileClose(fd);
53 return SOFTBUS_FILE_ERR;
54 }
55 if (fileLen > maxLen) {
56 COMM_LOGE(COMM_ADAPTER, "Read file len not legal, clear buf");
57 UtilsFileClose(fd);
58 return SOFTBUS_FILE_ERR;
59 }
60 ret = UtilsFileRead(fd, readBuf, maxLen);
61 if (ret < 0) {
62 COMM_LOGE(COMM_ADAPTER, "Read UtilsFileRead, ret=%{public}d", ret);
63 UtilsFileClose(fd);
64 return SOFTBUS_FILE_ERR;
65 }
66 UtilsFileClose(fd);
67 return SOFTBUS_OK;
68 }
69
SoftBusWriteFile(const char * fileName,const char * writeBuf,uint32_t len)70 int32_t SoftBusWriteFile(const char *fileName, const char *writeBuf, uint32_t len)
71 {
72 if (fileName == NULL || writeBuf == NULL) {
73 COMM_LOGE(COMM_ADAPTER, "param is invalid");
74 return SOFTBUS_INVALID_PARAM;
75 }
76 int32_t ret;
77 int32_t fd;
78 fd = UtilsFileOpen(fileName, O_RDWR_FS | O_CREAT_FS | O_TRUNC_FS, 0);
79 if (fd < 0) {
80 COMM_LOGE(COMM_ADAPTER, "UtilsFileOpen fail");
81 return SOFTBUS_FILE_ERR;
82 }
83 ret = UtilsFileWrite(fd, writeBuf, len);
84 if (ret != (int32_t)len) {
85 COMM_LOGE(COMM_ADAPTER, "UtilsFileWrite fail");
86 UtilsFileClose(fd);
87 return SOFTBUS_FILE_ERR;
88 }
89 UtilsFileClose(fd);
90 return SOFTBUS_OK;
91 }
92
SoftBusWriteFileFd(int32_t fd,const char * writeBuf,uint32_t len)93 int32_t SoftBusWriteFileFd(int32_t fd, const char *writeBuf, uint32_t len)
94 {
95 (void)fd;
96 (void)writeBuf;
97 (void)len;
98 return SOFTBUS_INVALID_FD;
99 }
100
SoftBusOpenFile(const char * fileName,int32_t flags)101 int32_t SoftBusOpenFile(const char *fileName, int32_t flags)
102 {
103 (void)fileName;
104 (void)flags;
105 return SOFTBUS_INVALID_FD;
106 }
107
SoftBusOpenFileWithPerms(const char * fileName,int32_t flags,int32_t perms)108 int32_t SoftBusOpenFileWithPerms(const char *fileName, int32_t flags, int32_t perms)
109 {
110 (void)fileName;
111 (void)flags;
112 (void)perms;
113 return SOFTBUS_INVALID_FD;
114 }
115
SoftBusRemoveFile(const char * fileName)116 void SoftBusRemoveFile(const char *fileName)
117 {
118 (void)fileName;
119 }
120
SoftBusCloseFile(int32_t fd)121 void SoftBusCloseFile(int32_t fd)
122 {
123 (void)fd;
124 }
125
SoftBusPreadFile(int32_t fd,void * buf,uint64_t readBytes,uint64_t offset)126 int64_t SoftBusPreadFile(int32_t fd, void *buf, uint64_t readBytes, uint64_t offset)
127 {
128 (void)fd;
129 (void)buf;
130 (void)readBytes;
131 (void)offset;
132 return -1;
133 }
134
SoftBusPwriteFile(int32_t fd,const void * buf,uint64_t writeBytes,uint64_t offset)135 int64_t SoftBusPwriteFile(int32_t fd, const void *buf, uint64_t writeBytes, uint64_t offset)
136 {
137 (void)fd;
138 (void)buf;
139 (void)writeBytes;
140 (void)offset;
141 return -1;
142 }
143
SoftBusAccessFile(const char * pathName,int32_t mode)144 int32_t SoftBusAccessFile(const char *pathName, int32_t mode)
145 {
146 (void)pathName;
147 (void)mode;
148 return SOFTBUS_ERR;
149 }
150
SoftBusMakeDir(const char * pathName,int32_t mode)151 int32_t SoftBusMakeDir(const char *pathName, int32_t mode)
152 {
153 (void)pathName;
154 (void)mode;
155 return SOFTBUS_ADAPTER_ERR;
156 }
SoftBusGetFileSize(const char * fileName,uint64_t * fileSize)157 int32_t SoftBusGetFileSize(const char *fileName, uint64_t *fileSize)
158 {
159 (void)fileName;
160 (void)fileSize;
161 return SOFTBUS_ERR;
162 }
163
SoftBusRealPath(const char * path,char * absPath)164 char *SoftBusRealPath(const char *path, char *absPath)
165 {
166 (void)path;
167 (void)absPath;
168 return NULL;
169 }
170