Commit 311b9eaa authored by Alberto Miranda's avatar Alberto Miranda ♨️
Browse files

Merge branch '11-add-an-option-to-track-namespace-contents' into 'master'

Resolve "Add an option to track namespace contents"

Closes #11

See merge request !4
parents c4d540cb 7a589d40
Loading
Loading
Loading
Loading
Loading
+1 −5
Original line number Diff line number Diff line
@@ -135,7 +135,7 @@ test:ubuntu:latest:
        - make -j4 core
        - ./core -as
        - make -j4 api
        - NORNS_DEBUG_OUTPUT_TO_STDERR=1 NORNS_DEBUG_CONFIG_FILE_OVERRIDE=1 ./api
#        - NORNS_DEBUG_OUTPUT_TO_STDERR=1 NORNS_DEBUG_CONFIG_FILE_OVERRIDE=1 ./api
        - NORNS_DEBUG_CONFIG_FILE_OVERRIDE=1 ./api -as "[api::nornsctl_register_namespace]"
        - NORNS_DEBUG_CONFIG_FILE_OVERRIDE=1 ./api -as "[api::nornsctl_unregister_namespace]"
        - NORNS_DEBUG_CONFIG_FILE_OVERRIDE=1 ./api -as "[api::norns_submit_copy_local_posix_files]"
@@ -148,10 +148,6 @@ test:ubuntu:latest:
        - NORNS_DEBUG_CONFIG_FILE_OVERRIDE=1 ./api -as "[api::norns_resource_init]"
        - NORNS_DEBUG_CONFIG_FILE_OVERRIDE=1 ./api -as "[api::norns_iotask_init]"
        - NORNS_DEBUG_CONFIG_FILE_OVERRIDE=1 ./api -as "[api::NORNS_TASK]"
##        - valgrind 
##            --leak-check=full 
##            -v 
##            env NORNS_DEBUG_CONFIG_FILE_OVERRIDE=1 
        - NORNS_DEBUG_CONFIG_FILE_OVERRIDE=1 ./api -as "[api::norns_submit]"
        - NORNS_DEBUG_CONFIG_FILE_OVERRIDE=1 ./api -as "[api::norns_status]"
        - NORNS_DEBUG_CONFIG_FILE_OVERRIDE=1 ./api -as "[api::nornsctl_status]"
+7 −3
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@
#endif

#include <sys/types.h>
#include <stdbool.h>
#include "nornsctl_types.h"
#include "norns_error.h"

@@ -53,6 +54,7 @@ extern "C" {
/* Descriptor for a storage namespace */
typedef struct {
    int         b_type;     /* namespace type */
    bool        b_track;    /* should the service track its contents? */
    const char* b_mount;    /* mount point */
    uint32_t    b_capacity; /* namespace capacity (in megabytes) for writing data */
} nornsctl_backend_t;
@@ -89,12 +91,14 @@ typedef struct {

nornsctl_backend_t 
NORNSCTL_BACKEND(nornsctl_backend_flags_t flags, 
                 bool track,
                 const char* mount_point, 
                 uint32_t capacity) __THROW;

void 
nornsctl_backend_init(nornsctl_backend_t* backend,
                      nornsctl_backend_flags_t flags,
                      bool track,
                      const char* mount_point,
                      uint32_t capacity) __THROW;

+11 −5
Original line number Diff line number Diff line
@@ -251,25 +251,31 @@ nornsctl_unregister_namespace(const char* nsid) {
}

nornsctl_backend_t 
NORNSCTL_BACKEND(norns_flags_t flags, const char* mount_point, 
NORNSCTL_BACKEND(norns_flags_t flags, 
                 bool track, 
                 const char* mount_point, 
                 uint32_t capacity) {

    nornsctl_backend_t b;

    nornsctl_backend_init(&b, flags, mount_point, capacity);
    nornsctl_backend_init(&b, flags, track, mount_point, capacity);

    return b;
}

void 
nornsctl_backend_init(nornsctl_backend_t* backend, norns_flags_t flags, 
                      const char* mount_point, uint32_t capacity) {
nornsctl_backend_init(nornsctl_backend_t* backend, 
                      norns_flags_t flags, 
                      bool track, 
                      const char* mount_point, 
                      uint32_t capacity) {

    if(backend == NULL) {
        return;
    }

    backend->b_type = flags;
    backend->b_track = track;
    backend->b_mount = mount_point;
    backend->b_capacity = capacity;
}
+1 −0
Original line number Diff line number Diff line
@@ -389,6 +389,7 @@ build_backend_message(const nornsctl_backend_t* backend) {
    norns__rpc__request__namespace__backend__init(backendmsg);

    backendmsg->type = backend->b_type;
    backendmsg->track = backend->b_track;

    // n_mount might be NULL for some namespaces 
    // (e.g. NORNS_NS_PROCESS_MEMORY)
+3 −2
Original line number Diff line number Diff line
@@ -68,8 +68,9 @@ message Request {
        // backend descriptor
        message Backend {
            required int32 type = 1;
            required string mount = 2;
            required int32 capacity = 3;
            required bool track = 2;
            required string mount = 3;
            required int32 capacity = 4;
        }

        required string nsid = 1;
Loading