mirror of
https://github.com/falk-werner/webfuse
synced 2024-10-27 20:34:10 +00:00
48185776b6
* makes wsfs_server_config opaque * feature: try to create mount point, if not present * fixes server start failure due to existing mountpoint * added basic authentication infrastructure * makes wsfs_server_config opaque * feature: try to create mount point, if not present * fixes server start failure due to existing mountpoint * added basic authentication infrastructure * added unit tests for credentials * added unit tests for authenticators * propagates authenticators to server protocol * enabled username authentication in daemon example * adds example to compute password hash * adds infrastructure to execute commands * added userdb to encapsulate authentication stuff * adds session and session_manager * fixes warning about unused param * moves some logic from server_protocol to session * makes wsfs_server_config opaque * feature: try to create mount point, if not present * fixes server start failure due to existing mountpoint * added basic authentication infrastructure * makes wsfs_server_config opaque * added unit tests for credentials * added unit tests for authenticators * propagates authenticators to server protocol * enabled username authentication in daemon example * adds example to compute password hash * adds infrastructure to execute commands * added userdb to encapsulate authentication stuff * adds session and session_manager * fixes warning about unused param * moves some logic from server_protocol to session * updates libcrypto to version 1.1.0
52 lines
1.1 KiB
C
52 lines
1.1 KiB
C
#ifndef WSFS_ADAPTER_AUTHENTICATORS_H
|
|
#define WSFS_ADAPTER_AUTHENTICATORS_H
|
|
|
|
#ifndef __cplusplus
|
|
#include <stdbool.h>
|
|
#endif
|
|
|
|
#include "wsfs/adapter/authenticate.h"
|
|
|
|
struct wsfs_authenticator;
|
|
struct wsfs_credentials;
|
|
|
|
struct wsfs_authenticators
|
|
{
|
|
struct wsfs_authenticator * first;
|
|
};
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
{
|
|
#endif
|
|
|
|
extern void wsfs_authenticators_init(
|
|
struct wsfs_authenticators * authenticators);
|
|
|
|
extern void wsfs_authenticators_cleanup(
|
|
struct wsfs_authenticators * authenticators);
|
|
|
|
extern void wsfs_authenticators_clone(
|
|
struct wsfs_authenticators * authenticators,
|
|
struct wsfs_authenticators * other);
|
|
|
|
extern void wsfs_authenticators_move(
|
|
struct wsfs_authenticators * authenticators,
|
|
struct wsfs_authenticators * other);
|
|
|
|
extern void wsfs_authenticators_add(
|
|
struct wsfs_authenticators * authenticators,
|
|
char const * type,
|
|
wsfs_authenticate_fn * authenticate,
|
|
void * user_data);
|
|
|
|
extern bool wsfs_authenticators_authenticate(
|
|
struct wsfs_authenticators * authenticators,
|
|
struct wsfs_credentials * credentials);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|