2019-03-26 22:04:53 +00:00
|
|
|
#ifndef WF_ADAPTER_IMPL_FILESYSTEM_H
|
|
|
|
#define WF_ADAPTER_IMPL_FILESYSTEM_H
|
|
|
|
|
|
|
|
#ifndef __cplusplus
|
|
|
|
#include <stdbool.h>
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#include "webfuse/adapter/impl/fuse_wrapper.h"
|
2020-04-04 21:16:25 +00:00
|
|
|
#include "webfuse/adapter/impl/operation/context.h"
|
2019-04-17 20:51:16 +00:00
|
|
|
#include "webfuse/core/slist.h"
|
2019-03-26 22:04:53 +00:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C"
|
|
|
|
{
|
|
|
|
#endif
|
|
|
|
|
2020-02-16 20:03:17 +00:00
|
|
|
struct wf_mountpoint;
|
2020-06-12 20:53:42 +00:00
|
|
|
struct wf_jsonrpc_proxy;
|
2019-04-17 20:51:16 +00:00
|
|
|
struct lws;
|
2019-03-26 22:04:53 +00:00
|
|
|
|
|
|
|
struct wf_impl_filesystem
|
|
|
|
{
|
2019-04-17 20:51:16 +00:00
|
|
|
struct wf_slist_item item;
|
2019-03-26 22:04:53 +00:00
|
|
|
struct fuse_args args;
|
|
|
|
struct fuse_session * session;
|
|
|
|
struct fuse_buf buffer;
|
2020-04-04 21:27:34 +00:00
|
|
|
struct wf_impl_operation_context user_data;
|
2019-04-17 20:51:16 +00:00
|
|
|
struct lws * wsi;
|
2020-02-16 20:03:17 +00:00
|
|
|
struct wf_mountpoint * mountpoint;
|
2019-03-26 22:04:53 +00:00
|
|
|
};
|
|
|
|
|
2019-04-17 20:51:16 +00:00
|
|
|
extern struct wf_impl_filesystem * wf_impl_filesystem_create(
|
2020-06-12 20:53:42 +00:00
|
|
|
struct lws * session_wsi,
|
|
|
|
struct wf_jsonrpc_proxy * proxy,
|
2020-02-16 20:03:17 +00:00
|
|
|
char const * name,
|
|
|
|
struct wf_mountpoint * mountpoint);
|
2019-03-26 22:04:53 +00:00
|
|
|
|
2019-04-17 20:51:16 +00:00
|
|
|
extern void wf_impl_filesystem_dispose(
|
2019-03-26 22:04:53 +00:00
|
|
|
struct wf_impl_filesystem * filesystem);
|
|
|
|
|
|
|
|
extern void wf_impl_filesystem_process_request(
|
|
|
|
struct wf_impl_filesystem * filesystem);
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|