2020-06-16 21:39:45 +00:00
|
|
|
#include "webfuse_provider/impl/credentials.h"
|
2020-07-10 21:12:35 +00:00
|
|
|
#include "webfuse_provider/impl/json/writer.h"
|
2020-02-25 21:05:48 +00:00
|
|
|
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include <string.h>
|
|
|
|
|
|
|
|
void wfp_impl_credentials_init(
|
|
|
|
struct wfp_credentials * credentials)
|
|
|
|
{
|
|
|
|
credentials->type = NULL;
|
|
|
|
credentials->contents = json_object();
|
|
|
|
}
|
|
|
|
|
|
|
|
void wfp_impl_credentials_cleanup(
|
|
|
|
struct wfp_credentials * credentials)
|
|
|
|
{
|
|
|
|
free(credentials->type);
|
|
|
|
json_decref(credentials->contents);
|
|
|
|
}
|
|
|
|
|
|
|
|
void wfp_impl_credentials_set_type(
|
|
|
|
struct wfp_credentials * credentials,
|
|
|
|
char const * type)
|
|
|
|
{
|
|
|
|
free(credentials->type);
|
|
|
|
credentials->type = strdup(type);
|
|
|
|
}
|
|
|
|
|
|
|
|
void wfp_impl_credentials_add(
|
|
|
|
struct wfp_credentials * credentials,
|
|
|
|
char const * key,
|
|
|
|
char const * value)
|
|
|
|
{
|
|
|
|
json_object_set_new(credentials->contents, key, json_string(value));
|
|
|
|
}
|
2020-03-01 12:42:46 +00:00
|
|
|
|
2020-07-10 21:12:35 +00:00
|
|
|
void
|
|
|
|
wfp_impl_credentials_write(
|
|
|
|
struct wfp_json_writer * writer,
|
|
|
|
void * data)
|
2020-03-01 12:42:46 +00:00
|
|
|
{
|
2020-07-10 21:12:35 +00:00
|
|
|
struct wfp_credentials * credentials = (struct wfp_credentials *) data;
|
|
|
|
|
|
|
|
wfp_impl_json_writer_object_begin(writer);
|
|
|
|
char const * key;
|
|
|
|
json_t * value;
|
|
|
|
json_t * contents = credentials->contents;
|
|
|
|
json_object_foreach(contents, key, value)
|
|
|
|
{
|
|
|
|
wfp_impl_json_writer_object_key(writer, key);
|
|
|
|
wfp_impl_json_writer_write_string(writer, json_string_value(value));
|
|
|
|
}
|
|
|
|
|
|
|
|
wfp_impl_json_writer_object_end(writer);
|
2020-03-01 12:42:46 +00:00
|
|
|
}
|
|
|
|
|
2020-07-10 21:12:35 +00:00
|
|
|
char const * wfp_impl_credentials_get_type(
|
2020-03-01 12:42:46 +00:00
|
|
|
struct wfp_credentials * credentials)
|
|
|
|
{
|
2020-07-10 21:12:35 +00:00
|
|
|
return credentials->type;
|
2020-03-01 12:42:46 +00:00
|
|
|
}
|
2020-07-10 21:12:35 +00:00
|
|
|
|