mirror of
https://github.com/haiwen/seafile-server.git
synced 2025-06-27 07:26:50 +00:00
43 lines
1.3 KiB
C
43 lines
1.3 KiB
C
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
|
|
#ifndef WEB_ACCESSTOKEN_MGR_H
|
|
#define WEB_ACCESSTOKEN_MGR_H
|
|
|
|
struct _SeafileSession;
|
|
|
|
struct WebATPriv;
|
|
|
|
struct _SeafWebAccessTokenManager {
|
|
struct _SeafileSession *seaf;
|
|
struct WebATPriv *priv;
|
|
};
|
|
typedef struct _SeafWebAccessTokenManager SeafWebAccessTokenManager;
|
|
|
|
SeafWebAccessTokenManager* seaf_web_at_manager_new (struct _SeafileSession *seaf);
|
|
|
|
int
|
|
seaf_web_at_manager_start (SeafWebAccessTokenManager *mgr);
|
|
|
|
/*
|
|
* Returns an access token for the given access info.
|
|
* If a token doesn't exist or has expired, generate and return a new one.
|
|
*/
|
|
char *
|
|
seaf_web_at_manager_get_access_token (SeafWebAccessTokenManager *mgr,
|
|
const char *repo_id,
|
|
const char *obj_id,
|
|
const char *op,
|
|
const char *username,
|
|
int use_onetime,
|
|
GError **error);
|
|
|
|
/*
|
|
* Returns access info for the given token.
|
|
*/
|
|
SeafileWebAccess *
|
|
seaf_web_at_manager_query_access_token (SeafWebAccessTokenManager *mgr,
|
|
const char *token);
|
|
|
|
#endif /* WEB_ACCESSTOKEN_MGR_H */
|
|
|