parent
509fd8a240
commit
d6819d07cd
@ -1,8 +1,10 @@
|
||||
#include "model.h"
|
||||
#include "model/status.h"
|
||||
#include "model/peer.h"
|
||||
|
||||
void model_init()
|
||||
{
|
||||
status_model_init();
|
||||
peer_model_init();
|
||||
}
|
||||
|
||||
|
@ -1 +1,54 @@
|
||||
#include "peer.h"
|
||||
|
||||
#include "json/json.h"
|
||||
#include "json/layout.h"
|
||||
#include "ffdb/trie.h"
|
||||
#include "ffdb/fs_list.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
#define OBJ_TYPE struct peer
|
||||
static struct json_object_field peer_layout[] = {
|
||||
JSON_FIELD_STRING( domain, true ),
|
||||
JSON_FIELD_STRING( tor_hidden_service, false ),
|
||||
|
||||
JSON_FIELD_DATETIME( last_successful_delivery, false ),
|
||||
JSON_FIELD_DATETIME( last_failed_delivery, false ),
|
||||
|
||||
JSON_FIELD_BOOL( admin_disable, false ),
|
||||
|
||||
JSON_FIELD_END,
|
||||
};
|
||||
#undef OBJ_TYPE
|
||||
|
||||
void peer_model_init()
|
||||
{
|
||||
mkdir( "data", 0755 );
|
||||
mkdir( "data/peers", 0755 );
|
||||
}
|
||||
|
||||
struct peer* peer_new()
|
||||
{
|
||||
struct peer* p;
|
||||
p = malloc(sizeof(*p));
|
||||
memset(p,0,sizeof(*p));
|
||||
return p;
|
||||
}
|
||||
struct peer* peer_from_id( int id )
|
||||
{
|
||||
if( id == 0 ) { return NULL; }
|
||||
|
||||
struct peer* p = peer_new();
|
||||
char filename[512];
|
||||
snprintf( filename,sizeof(filename), "data/peer/%d.json", id );
|
||||
|
||||
if( !json_read_object_layout_from_file( filename, peer_layout, p ) ) {
|
||||
peer_free(p);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return p;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in new issue