|
|
|
|
@ -2193,14 +2193,18 @@ static int isFileReadable(const char *path, u32 *sz)
|
|
|
|
|
{
|
|
|
|
|
struct file *fp;
|
|
|
|
|
int ret = 0;
|
|
|
|
|
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
|
|
|
|
mm_segment_t oldfs;
|
|
|
|
|
#endif
|
|
|
|
|
char buf;
|
|
|
|
|
|
|
|
|
|
fp = filp_open(path, O_RDONLY, 0);
|
|
|
|
|
if (IS_ERR(fp))
|
|
|
|
|
ret = PTR_ERR(fp);
|
|
|
|
|
else {
|
|
|
|
|
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
|
|
|
|
oldfs = get_fs();
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
if (1 != readFile(fp, &buf, 1))
|
|
|
|
|
ret = PTR_ERR(fp);
|
|
|
|
|
@ -2213,7 +2217,9 @@ static int isFileReadable(const char *path, u32 *sz)
|
|
|
|
|
#endif
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
|
|
|
|
set_fs(oldfs);
|
|
|
|
|
#endif
|
|
|
|
|
filp_close(fp, NULL);
|
|
|
|
|
}
|
|
|
|
|
return ret;
|
|
|
|
|
@ -2229,7 +2235,9 @@ static int isFileReadable(const char *path, u32 *sz)
|
|
|
|
|
static int retriveFromFile(const char *path, u8 *buf, u32 sz)
|
|
|
|
|
{
|
|
|
|
|
int ret = -1;
|
|
|
|
|
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
|
|
|
|
mm_segment_t oldfs;
|
|
|
|
|
#endif
|
|
|
|
|
struct file *fp;
|
|
|
|
|
|
|
|
|
|
if (path && buf) {
|
|
|
|
|
@ -2237,9 +2245,13 @@ static int retriveFromFile(const char *path, u8 *buf, u32 sz)
|
|
|
|
|
if (0 == ret) {
|
|
|
|
|
RTW_INFO("%s openFile path:%s fp=%p\n", __FUNCTION__, path , fp);
|
|
|
|
|
|
|
|
|
|
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
|
|
|
|
oldfs = get_fs();
|
|
|
|
|
#endif
|
|
|
|
|
ret = readFile(fp, buf, sz);
|
|
|
|
|
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
|
|
|
|
set_fs(oldfs);
|
|
|
|
|
#endif
|
|
|
|
|
closeFile(fp);
|
|
|
|
|
|
|
|
|
|
RTW_INFO("%s readFile, ret:%d\n", __FUNCTION__, ret);
|
|
|
|
|
@ -2263,7 +2275,9 @@ static int retriveFromFile(const char *path, u8 *buf, u32 sz)
|
|
|
|
|
static int storeToFile(const char *path, u8 *buf, u32 sz)
|
|
|
|
|
{
|
|
|
|
|
int ret = 0;
|
|
|
|
|
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
|
|
|
|
mm_segment_t oldfs;
|
|
|
|
|
#endif
|
|
|
|
|
struct file *fp;
|
|
|
|
|
|
|
|
|
|
if (path && buf) {
|
|
|
|
|
@ -2271,9 +2285,13 @@ static int storeToFile(const char *path, u8 *buf, u32 sz)
|
|
|
|
|
if (0 == ret) {
|
|
|
|
|
RTW_INFO("%s openFile path:%s fp=%p\n", __FUNCTION__, path , fp);
|
|
|
|
|
|
|
|
|
|
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
|
|
|
|
oldfs = get_fs();
|
|
|
|
|
#endif
|
|
|
|
|
ret = writeFile(fp, buf, sz);
|
|
|
|
|
set_fs(oldfs);
|
|
|
|
|
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 10, 0))
|
|
|
|
|
set_fs(oldfs);
|
|
|
|
|
#endif
|
|
|
|
|
closeFile(fp);
|
|
|
|
|
|
|
|
|
|
RTW_INFO("%s writeFile, ret:%d\n", __FUNCTION__, ret);
|
|
|
|
|
|