summaryrefslogtreecommitdiff
path: root/src/common/szstr.h
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2023-07-07 06:32:43 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2023-07-07 06:32:43 (GMT)
commit4c10dfa2a95cea6fc704d68066d0c284cfd79342 (patch)
tree5827bbc411459800747e21929daecdf99fde7dfd /src/common/szstr.h
parent3f996be1e5858b54740bf92515795982a16b169a (diff)
Rewrite core parts of the ROST API.
Diffstat (limited to 'src/common/szstr.h')
-rw-r--r--src/common/szstr.h23
1 files changed, 11 insertions, 12 deletions
diff --git a/src/common/szstr.h b/src/common/szstr.h
index aadbb28..54beb9a 100644
--- a/src/common/szstr.h
+++ b/src/common/szstr.h
@@ -47,6 +47,15 @@ typedef struct _sized_string_t
} \
while (0)
+#define szstrdup(dst, src) \
+ do \
+ { \
+ (dst)->data = malloc((src)->len); \
+ memcpy((dst)->data, (src)->data, (src)->len); \
+ (dst)->len = (src)->len; \
+ } \
+ while (0)
+
#define exit_szstr(s) \
do \
{ \
@@ -59,18 +68,8 @@ typedef struct _sized_string_t
while (0)
#define szstrcmp(ss, rs) \
- strncmp((ss)->data, rs, (ss)->len)
-
-#define szmemcmp(s1, s2) \
- ({ \
- int __result; \
- size_t __n; \
- __n = (s1)->len < (s2)->len ? (s1)->len : (s2)->len; \
- __result = memcmp((s1)->data, (s2)->data, __n); \
- if (__result == 0 && (s1)->len != (s2)->len) \
- __result = (s1)->len < (s2)->len ? -1 : 1; \
- __result; \
- })
+ strncmp((ss)->data, (rs)/*->data*/, (ss)->len)
+
#endif /* _COMMON_SZSTR_H */