]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
minor example update
authorMaria Matejka <mq@ucw.cz>
Thu, 4 Jan 2024 10:22:09 +0000 (11:22 +0100)
committerMaria Matejka <mq@ucw.cz>
Thu, 4 Jan 2024 10:22:09 +0000 (11:22 +0100)
nest/cbor.c
nest/cbor.h

index 5bd136e37b8e13b5faa14835fc59f76dd6db9d89..2f47bc031830113e669949c3b4a80ead9c705982 100644 (file)
@@ -100,20 +100,15 @@ void cbor_add_ipv4_prefix(struct cbor_writer *writer, uint32_t addr, uint32_t pr
 }
 
 
-void cbor_add_ipv6_prefix(struct cbor_writer *writer, uint32_t addr[4], uint32_t prefix)
+void cbor_add_ipv6_prefix(struct cbor_writer *writer, net_addr_ip6 *n)
 {
   write_item(writer, 6, 54); // 6 is TAG, 54 is tag number for ipv6
   cbor_open_block_with_length(writer, 2);
-  cbor_add_int(writer, prefix);
-  write_item(writer, 2, 8); // bytestring of length 4
-  for (int j = 0; j < 4; j++)
-  {
-    for (int i = 3; i>=0; i--)
-    {
-      writer->cbor[writer->pt] = (addr[j]>>(i*8)) & 0xff;
-      writer->pt++;
-    }
-  }
+  cbor_add_int(writer, n->pxlen);
+
+  write_item(writer, 2, 16);
+  put_ip6(&writer->cbor[writer->pt], n->prefix);
+  writer->pt += 16;
 }
 
 
index 227ad977c58a6444855066372340b56066f44926..b092a7f9d640f0fda8cb2e106e5516444489b0b1 100644 (file)
@@ -1,6 +1,7 @@
 #ifndef CBOR_H
 #define CBOR_H
-#include <stdint.h>
+
+#include "nest/bird.h"
 
 
 struct cbor_writer {