aboutsummaryrefslogtreecommitdiff
path: root/src/util_rt.h
diff options
context:
space:
mode:
authorDavid Timber <mieabby@gmail.com>2021-07-12 16:16:22 +1000
committerDavid Timber <mieabby@gmail.com>2021-07-12 16:16:22 +1000
commit15bde4c46b707f7a95c7ea6650a3f02d67e50530 (patch)
tree1aa069521941a41171302dba837d57d35a2d9e41 /src/util_rt.h
parent3fbf08ab6522c91e8209b21d66430a2db4ea71cb (diff)
Impl proone-htbtclient, bugfix, --enable-mttools
* Remove --enable-hostinfod and add --enable-mttools, which enables hostinfod and htbtclient * Change PRNE_HTBT_PROTO_PORT so that the macro can be used in another macro expression(for help message) * Add prne_mbedtls_perror() * proone-htbtclient: implement hostinfo command * proone-htbthost * Add --hostcred option * Response with status frame on ENOMEM * htbt: add prne_htbt_serrc_tostr() and prne_htbt_gen_msgid() * Add prne_ctoupper(), prne_ctolower(), prne_cisspace(), prne_cisprint() * The added functions are the locale-independent equivalent of their POSIX counterparts * Remove Use of the POSIX functions * Add test unit
Diffstat (limited to 'src/util_rt.h')
-rw-r--r--src/util_rt.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/util_rt.h b/src/util_rt.h
index 0b0cf59..744ce82 100644
--- a/src/util_rt.h
+++ b/src/util_rt.h
@@ -38,12 +38,23 @@ bool prne_own_realloc (
size_t *old,
const size_t req);
+/* Locale "C" character category functions
+*/
+char prne_ctoupper (const char c);
+char prne_ctolower (const char c);
+bool prne_cisspace (const char c);
+bool prne_cisprint (const char c);
+
bool prne_nstreq (const char *a, const char *b);
size_t prne_nstrlen (const char *s);
char *prne_strnchr (const char *p, const char c, const size_t n);
size_t prne_str_shift_spaces (char *str, const size_t len);
+bool prne_chkcstr (const char *str, bool(*chk_f)(const char));
+bool prne_chkcmem (const void *m, size_t len, bool(*chk_f)(const char));
void prne_transstr (char *str, int(*trans_f)(int));
+void prne_transcstr (char *str, char(*trans_f)(char));
void prne_transmem (void *m, size_t len, int(*trans_f)(int));
+void prne_transcmem (void *m, size_t len, char(*trans_f)(char));
void *prne_memrchr (
const void *haystack,
const int c,
@@ -64,7 +75,15 @@ char *prne_rebuild_str (void *prev, const char **const arr, const size_t cnt);
bool prne_hex_fromstr (const char *str, uint_fast8_t *out);
void prne_hex_tochar (const uint_fast8_t in, char *out, const bool upper);
+/*
+* \param str: at least 36 bytes
+* \param out: at least 16 bytes
+*/
bool prne_uuid_fromstr (const char *str, uint8_t *out);
+/*
+* \param in: at least 16 bytes
+* \param out: at least 37 bytes (null-terminated)
+*/
void prne_uuid_tostr (const uint8_t *in, char *out);
struct timespec prne_add_timespec (