1
0
mirror of https://github.com/falk-werner/webfuse-provider synced 2026-03-02 04:09:18 +00:00

use libwebsockets as loop for fuse fd; removed dependency to libuv, since it is not needed anymore; disabled jsonrpc temporary, until refactoring is finished (will not work properly)

This commit is contained in:
Falk Werner
2019-02-06 00:58:51 +01:00
parent 84aa5daf32
commit b74c459942
18 changed files with 433 additions and 364 deletions

8
inc/wsfs/api.h Normal file
View File

@@ -0,0 +1,8 @@
#ifndef _WSFS_API_H
#define _WSFS_API_H
#ifndef WSFS_API
#define WSFS_API
#endif
#endif

31
inc/wsfs/server.h Normal file
View File

@@ -0,0 +1,31 @@
#ifndef _WSFS_SERVER_H
#define _WSFS_SERVER_H
#include "wsfs/api.h"
struct wsfs_server;
struct wsfs_server_config;
#ifdef __cplusplus
extern "C"
{
#endif
extern WSFS_API struct wsfs_server * wsfs_server_create(
struct wsfs_server_config * config);
extern WSFS_API void wsfs_server_dispose(
struct wsfs_server * server);
extern WSFS_API void wsfs_server_run(
struct wsfs_server * server);
extern WSFS_API void wsfs_server_shutdown(
struct wsfs_server * server);
#ifdef __cplusplus
}
#endif
#endif

35
inc/wsfs/server_config.h Normal file
View File

@@ -0,0 +1,35 @@
#ifndef _WSFS_SERVER_CONFIG_H
#define _WSFS_SERVER_CONFIG_H
#include "wsfs/api.h"
struct wsfs_server_config
{
char * mount_point;
char * document_root;
char * key_path;
char * cert_path;
char * vhost_name;
int port;
};
#ifdef __cplusplus
extern "C"
{
#endif
extern WSFS_API void wsfs_server_config_init(
struct wsfs_server_config * config);
extern WSFS_API void wsfs_server_config_cleanup(
struct wsfs_server_config * config);
extern WSFS_API void wsfs_server_config_clone(
struct wsfs_server_config * config,
struct wsfs_server_config * clone);
#ifdef __cplusplus
}
#endif
#endif

View File

@@ -0,0 +1,28 @@
#ifndef _WSFS_SERVER_PROTOCOL_H
#define _WSFS_SERVER_PROTOCOL_H
#include "wsfs/api.h"
struct wsfs_server_protocol;
struct lws_protocols;
#ifdef __cplusplus
extern "C"
{
#endif
extern WSFS_API struct wsfs_server_protocol * wsfs_server_protocol_create(
char * mount_point);
extern WSFS_API void wsfs_server_protocol_dispose(
struct wsfs_server_protocol * protocol);
extern WSFS_API void wsfs_server_protocol_init_lws(
struct wsfs_server_protocol * protocol,
struct lws_protocols * lws_protocol);
#ifdef __cplusplus
}
#endif
#endif