]> git.ipfire.org Git - people/ms/libloc.git/blobdiff - src/test-network.c
lua: database: Implementing fetching AS objects
[people/ms/libloc.git] / src / test-network.c
index 7001071fbb2ade794367c5cad6c2f191c7a765ba..717ad3abd92a332bc744f1cb378fcbf904961e07 100644 (file)
@@ -23,6 +23,7 @@
 #include <syslog.h>
 
 #include <libloc/libloc.h>
+#include <libloc/address.h>
 #include <libloc/database.h>
 #include <libloc/network.h>
 #include <libloc/private.h>
@@ -79,7 +80,7 @@ int main(int argc, char** argv) {
 #endif
 
        // Check if the first and last addresses are correct
-       char* string = loc_network_format_first_address(network1);
+       const char* string = loc_network_format_first_address(network1);
        if (!string) {
                fprintf(stderr, "Did get NULL instead of a string for the first address\n");
                exit(EXIT_FAILURE);
@@ -175,13 +176,11 @@ int main(int argc, char** argv) {
                exit(EXIT_FAILURE);
        }
 
-       char* s = loc_network_str(subnet1);
+       const char* s = loc_network_str(subnet1);
        printf("Received subnet1 = %s\n", s);
-       free(s);
 
        s = loc_network_str(subnet2);
        printf("Received subnet2 = %s\n", s);
-       free(s);
 
        if (!loc_network_is_subnet(network1, subnet1)) {
                fprintf(stderr, "Subnet1 is not a subnet\n");
@@ -247,7 +246,7 @@ int main(int argc, char** argv) {
        // Try adding an invalid network
        struct loc_network* network;
        err = loc_writer_add_network(writer, &network, "xxxx:xxxx::/32");
-       if (err != -EINVAL) {
+       if (!err) {
                fprintf(stderr, "It was possible to add an invalid network (err = %d)\n", err);
                exit(EXIT_FAILURE);
        }
@@ -261,13 +260,13 @@ int main(int argc, char** argv) {
 
        FILE* f = tmpfile();
        if (!f) {
-               fprintf(stderr, "Could not open file for writing: %s\n", strerror(errno));
+               fprintf(stderr, "Could not open file for writing: %m\n");
                exit(EXIT_FAILURE);
        }
 
        err = loc_writer_write(writer, f, LOC_DATABASE_VERSION_UNSET);
        if (err) {
-               fprintf(stderr, "Could not write database: %s\n", strerror(-err));
+               fprintf(stderr, "Could not write database: %m\n");
                exit(EXIT_FAILURE);
        }
        loc_writer_unref(writer);
@@ -285,7 +284,7 @@ int main(int argc, char** argv) {
        struct loc_database* db;
        err = loc_database_new(ctx, &db, f);
        if (err) {
-               fprintf(stderr, "Could not open database: %s\n", strerror(-err));
+               fprintf(stderr, "Could not open database: %m\n");
                exit(EXIT_FAILURE);
        }
 
@@ -303,7 +302,6 @@ int main(int argc, char** argv) {
                fprintf(stderr, "Could look up 2001:db8:fffe:1::, but I shouldn't\n");
                exit(EXIT_FAILURE);
        }
-       loc_network_unref(network1);
 
        const struct bit_length_test {
                const char* network;
@@ -312,6 +310,7 @@ int main(int argc, char** argv) {
                { "::/0", 0 },
                { "2001::/128", 126 },
                { "1.0.0.0/32", 25 },
+               { "0.0.0.1/32", 1 },
                { "255.255.255.255/32", 32 },
                { NULL, 0, },
        };