summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMikael Magnusson <mikma@users.sourceforge.net>2023-11-23 03:09:57 +0100
committerMikael Magnusson <mikma@users.sourceforge.net>2023-11-23 03:11:01 +0100
commitc225afacccc90674cfe9bed028c8567a56ed604f (patch)
tree6e7687294e4916bc3077c6131b65e4e012b162b7
parent5d23a1aae20a8c58e483dac620f609109cf17369 (diff)
WIP: bytestring -> adata
-rw-r--r--conf/cf-lex.l2
-rw-r--r--filter/config.Y4
-rw-r--r--lib/base64.c12
-rw-r--r--lib/base64.h9
-rw-r--r--proto/wireguard/config.Y2
5 files changed, 15 insertions, 14 deletions
diff --git a/conf/cf-lex.l b/conf/cf-lex.l
index 5eb709bc..8c20b2d0 100644
--- a/conf/cf-lex.l
+++ b/conf/cf-lex.l
@@ -354,7 +354,7 @@ else: {
<BQUOTED><<EOF>> cf_error("Unterminated byte string");
<BQUOTED>["] {
BEGIN(INITIAL);
- struct bytestring *bytes;
+ struct adata *bytes;
bytes = cfg_allocz(sizeof(*bytes) + quoted_buffer.used);
memcpy(bytes->data, quoted_buffer.data, quoted_buffer.used);
diff --git a/filter/config.Y b/filter/config.Y
index 7a2b6e38..ee8ec096 100644
--- a/filter/config.Y
+++ b/filter/config.Y
@@ -242,7 +242,7 @@ f_new_sub_tlv_tunnel_ep(u32 type, ip_addr ip)
}
static struct f_tree *
-f_new_sub_tlv_encap(u32 st_type, u32 type, const struct bytestring *bytes)
+f_new_sub_tlv_encap(u32 st_type, u32 type, const struct adata *bytes)
{
struct f_tree *t;
@@ -263,7 +263,7 @@ f_new_sub_tlv_encap(u32 st_type, u32 type, const struct bytestring *bytes)
}
static struct f_tree *
-f_new_sub_tlv_unknown(u32 type, const struct bytestring *bytes)
+f_new_sub_tlv_unknown(u32 type, const struct adata *bytes)
{
struct f_tree *t;
diff --git a/lib/base64.c b/lib/base64.c
index d5f3ae9b..1f7fb4f0 100644
--- a/lib/base64.c
+++ b/lib/base64.c
@@ -26,12 +26,12 @@ static const unsigned char base64_table[65] =
* nul terminated to make it easier to use as a C string. The nul terminator is
* not included in out_len.
*/
-struct bytestring * base64_encode(linpool *pool,
+struct adata * base64_encode(linpool *pool,
const unsigned char *src, size_t len,
size_t *out_len)
{
unsigned char *pos;
- struct bytestring *out;
+ struct adata *out;
const unsigned char *end, *in;
size_t olen;
int line_len;
@@ -41,7 +41,7 @@ struct bytestring * base64_encode(linpool *pool,
olen++; /* nul termination */
if (olen < len)
return NULL; /* integer overflow */
- out = lp_alloc(pool, sizeof(struct bytestring) + olen);
+ out = lp_alloc(pool, sizeof(struct adata) + olen);
if (out == NULL)
return NULL;
@@ -97,14 +97,14 @@ struct bytestring * base64_encode(linpool *pool,
*
* Caller is responsible for freeing the returned buffer.
*/
-struct bytestring * base64_decode_bs(linpool *pool,
+struct adata * base64_decode_bs(linpool *pool,
const unsigned char *src, size_t len,
size_t *out_len)
{
unsigned char dtable[256], *pos, block[4], tmp;
size_t i, count, olen;
int pad = 0;
- struct bytestring *out;
+ struct adata *out;
memset(dtable, 0x80, 256);
for (i = 0; i < sizeof(base64_table) - 1; i++)
@@ -121,7 +121,7 @@ struct bytestring * base64_decode_bs(linpool *pool,
return NULL;
olen = count / 4 * 3;
- out = lp_alloc(pool, sizeof(struct bytestring) + olen);
+ out = lp_alloc(pool, sizeof(struct adata) + olen);
if (out == NULL)
return NULL;
pos = out->data;
diff --git a/lib/base64.h b/lib/base64.h
index 8ca4dd9b..4c46b0d4 100644
--- a/lib/base64.h
+++ b/lib/base64.h
@@ -2,10 +2,11 @@
#define _BIRD_BASE64_H_
#include "lib/resource.h"
+#include "nest/route.h"
-struct bytestring * base64_encode_bs(linpool *pool, const unsigned char *src, size_t len,
- size_t *out_len);
-struct bytestring * base64_decode_bs(linpool *pool, const unsigned char *src, size_t len,
- size_t *out_len);
+struct adata * base64_encode_bs(linpool *pool, const unsigned char *src, size_t len,
+ size_t *out_len);
+struct adata * base64_decode_bs(linpool *pool, const unsigned char *src, size_t len,
+ size_t *out_len);
#endif /* _BIRD_BASE64_H_ */
diff --git a/proto/wireguard/config.Y b/proto/wireguard/config.Y
index 6a435da3..0fae832a 100644
--- a/proto/wireguard/config.Y
+++ b/proto/wireguard/config.Y
@@ -23,7 +23,7 @@ typedef char wg_key_b64_string[45];
int wg_key_from_base64(u8 key[32], const wg_key_b64_string base64);
static struct f_tree *
-f_new_sub_tlv_wg(u32 type, const struct bytestring *bs)
+f_new_sub_tlv_wg(u32 type, const struct adata *bs)
{
struct f_tree *t = f_new_tree();
t->right = t;