From 81bab00246906b389f6e7d162196eb4a36b848c9 Mon Sep 17 00:00:00 2001 From: Omar Polo Date: Sat, 22 Jul 2023 13:49:07 +0000 Subject: [PATCH] split out iri.h from gmid.h --- gmid.h | 18 ++---------------- iri.h | 30 ++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 16 deletions(-) create mode 100644 iri.h diff --git a/gmid.h b/gmid.h index fbea6f6..9f7f5d8 100644 --- a/gmid.h +++ b/gmid.h @@ -50,6 +50,8 @@ # include #endif +#include "iri.h" + #define VERSION_STR(n) n " " VERSION #define GE_STRING VERSION_STR("ge") #define GG_STRING VERSION_STR("gg") @@ -88,16 +90,6 @@ struct privsep; struct privsep_proc; -struct iri { - char *schema; - char *host; - char *port; - uint16_t port_no; - char *path; - char *query; - char *fragment; -}; - struct parser { char *iri; struct iri *parsed; @@ -438,12 +430,6 @@ void sandbox_logger_process(void); int valid_multibyte_utf8(struct parser*); char *utf8_nth(char*, size_t); -/* iri.c */ -int parse_iri(char*, struct iri*, const char**); -int serialize_iri(struct iri*, char*, size_t); -int encode_path(char *, size_t, const char *); -char *pct_decode_str(char *); - /* logger.c */ void logger(struct privsep *, struct privsep_proc *); diff --git a/iri.h b/iri.h new file mode 100644 index 0000000..5b34fd3 --- /dev/null +++ b/iri.h @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2023 Omar Polo + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +struct iri { + char *schema; + char *host; + char *port; + uint16_t port_no; + char *path; + char *query; + char *fragment; +}; + +int parse_iri(char*, struct iri*, const char**); +int serialize_iri(struct iri*, char*, size_t); +int encode_path(char *, size_t, const char *); +char *pct_decode_str(char *);