mirror of
https://github.com/trapexit/mergerfs.git
synced 2025-03-15 02:35:12 +08:00
Merge pull request #940 from trapexit/ioctl-runtime-removal
Remove config ioctl calls
This commit is contained in:
commit
3b8d495c43
@ -40,15 +40,8 @@ using std::vector;
|
|||||||
|
|
||||||
typedef char IOCTL_BUF[4096];
|
typedef char IOCTL_BUF[4096];
|
||||||
#define IOCTL_APP_TYPE 0xDF
|
#define IOCTL_APP_TYPE 0xDF
|
||||||
//#define IOCTL_READ_KEYS 0xD000DF00
|
//#define IOCTL_FILE_INFO 0xD000DF00
|
||||||
//#define IOCTL_READ_VAL 0xD000DF01
|
#define IOCTL_FILE_INFO _IOWR(IOCTL_APP_TYPE,0,IOCTL_BUF)
|
||||||
//#define IOCTL_WRITE_VAL 0x5000DF02
|
|
||||||
//#define IOCTL_FILE_INFO 0xD000DF03
|
|
||||||
#define IOCTL_READ_KEYS _IOWR(IOCTL_APP_TYPE,0,IOCTL_BUF)
|
|
||||||
#define IOCTL_READ_VAL _IOWR(IOCTL_APP_TYPE,1,IOCTL_BUF)
|
|
||||||
#define IOCTL_WRITE_VAL _IOW(IOCTL_APP_TYPE,2,IOCTL_BUF)
|
|
||||||
#define IOCTL_FILE_INFO _IOWR(IOCTL_APP_TYPE,3,IOCTL_BUF)
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef FS_IOC_GETFLAGS
|
#ifndef FS_IOC_GETFLAGS
|
||||||
# define FS_IOC_GETFLAGS _IOR('f',1,long)
|
# define FS_IOC_GETFLAGS _IOR('f',1,long)
|
||||||
@ -199,58 +192,6 @@ namespace l
|
|||||||
return s_.size();
|
return s_.size();
|
||||||
}
|
}
|
||||||
|
|
||||||
static
|
|
||||||
int
|
|
||||||
read_keys(void *data_)
|
|
||||||
{
|
|
||||||
Config::Read cfg;
|
|
||||||
std::string keys;
|
|
||||||
|
|
||||||
cfg->keys(keys);
|
|
||||||
|
|
||||||
return l::strcpy(keys,data_);
|
|
||||||
}
|
|
||||||
|
|
||||||
static
|
|
||||||
int
|
|
||||||
read_val(void *data_)
|
|
||||||
{
|
|
||||||
Config::Read cfg;
|
|
||||||
int rv;
|
|
||||||
char *data;
|
|
||||||
std::string key;
|
|
||||||
std::string val;
|
|
||||||
|
|
||||||
data = (char*)data_;
|
|
||||||
data[sizeof(IOCTL_BUF) - 1] = '\0';
|
|
||||||
|
|
||||||
key = data;
|
|
||||||
rv = cfg->get(key,&val);
|
|
||||||
if(rv < 0)
|
|
||||||
return rv;
|
|
||||||
|
|
||||||
return l::strcpy(val,data_);
|
|
||||||
}
|
|
||||||
|
|
||||||
static
|
|
||||||
int
|
|
||||||
write_val(void *data_)
|
|
||||||
{
|
|
||||||
Config::Write cfg;
|
|
||||||
char *data;
|
|
||||||
std::string kv;
|
|
||||||
std::string key;
|
|
||||||
std::string val;
|
|
||||||
|
|
||||||
data = (char*)data_;
|
|
||||||
data[sizeof(IOCTL_BUF) - 1] = '\0';
|
|
||||||
|
|
||||||
kv = data;
|
|
||||||
str::splitkv(kv,'=',&key,&val);
|
|
||||||
|
|
||||||
return cfg->set(key,val);
|
|
||||||
}
|
|
||||||
|
|
||||||
static
|
static
|
||||||
int
|
int
|
||||||
file_basepath(const Policy::Search &searchFunc_,
|
file_basepath(const Policy::Search &searchFunc_,
|
||||||
@ -378,12 +319,6 @@ namespace FUSE
|
|||||||
{
|
{
|
||||||
switch(cmd_)
|
switch(cmd_)
|
||||||
{
|
{
|
||||||
case IOCTL_READ_KEYS:
|
|
||||||
return l::read_keys(data_);
|
|
||||||
case IOCTL_READ_VAL:
|
|
||||||
return l::read_val(data_);
|
|
||||||
case IOCTL_WRITE_VAL:
|
|
||||||
return l::write_val(data_);
|
|
||||||
case IOCTL_FILE_INFO:
|
case IOCTL_FILE_INFO:
|
||||||
return l::file_info(ffi_,data_);
|
return l::file_info(ffi_,data_);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user