summaryrefslogtreecommitdiff
path: root/support/dktools/dk3mem.c
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2020-10-12 03:04:00 +0000
committerNorbert Preining <norbert@preining.info>2020-10-12 03:04:00 +0000
commit0ce40abb18ec02ec6fd6bcc5f21612c88daa7578 (patch)
tree416289fe1448873fd8ca33051f50ad85bffa8aaa /support/dktools/dk3mem.c
parentfdb18507cd80dc17f5a5256153d34668b4f4e61c (diff)
CTAN sync 202010120303
Diffstat (limited to 'support/dktools/dk3mem.c')
-rw-r--r--support/dktools/dk3mem.c328
1 files changed, 0 insertions, 328 deletions
diff --git a/support/dktools/dk3mem.c b/support/dktools/dk3mem.c
deleted file mode 100644
index ee033ae176..0000000000
--- a/support/dktools/dk3mem.c
+++ /dev/null
@@ -1,328 +0,0 @@
-/*
-Copyright (C) 2011-2020, Dirk Krause
-SPDX-License-Identifier: BSD-3-Clause
-*/
-
-/*
- WARNING: This file was generated by the dkct program (see
- http://dktools.sourceforge.net/ for details).
- Changes you make here will be lost if dkct is run again!
- You should modify the original source and run dkct on it.
- Original source: dk3mem.ctr
-*/
-
-/** @file dk3mem.c The dk3mem module.
-*/
-
-
-#line 166 "dk3mem.ctr"
-
-#include "dk3all.h"
-
-
-
-
-
-
-#line 172 "dk3mem.ctr"
-
-
-
-void
-dk3mem_res(void *mp, size_t sz)
-/* {{{ */
-{
- if((NULL != mp) && (0 != sz)) {
-#if DK3_HAVE_MEMSET
- memset(mp, (int)'\0', sz);
-#else
-#if DK3_HAVE_BZERO
- bzero(mp, sz);
-#else
- register char *ptr;
- register size_t i;
- ptr = (char *)mp; i = sz;
- while(i--) { *(ptr++) = '\0'; }
-#endif
-#endif
- }
-}
-/* }}} */
-
-
-
-void
-dk3mem_cpy(void *dp, void const *sp, size_t sz)
-/* {{{ */
-{
- if((NULL != dp) && (NULL != sp) && (0 != sz)) {
-#if DK3_HAVE_MEMCPY
- memcpy(dp, sp, sz);
-#else
-#if DK3_HAVE_BCOPY
- bcopy(sp, dp, sz);
-#else
- register char *mydp;
- register char const *mysp;
- register size_t i;
- mydp = (char *)dp;
- mysp = (char const *)sp;
- i = sz;
- while(i--) { *(mydp++) = *(mysp++); }
-#endif
-#endif
- }
-}
-/* }}} */
-
-
-
-int
-dk3mem_cmp(void const *s1, void const *s2, size_t sz)
-/* {{{ */
-{
- int back = 0;
- if(NULL != s1) {
- if(NULL != s2) {
-#if DK3_HAVE_MEMCMP
- back = memcmp(s1, s2, sz);
-#else
-#if DK3_HAVE_BCMP
- back = bcmp(s1, s2, sz);
-#else
- register unsigned char const *mys1;
- register unsigned char const *mys2;
- register size_t i;
- register int myback = 0;
- mys1 = (unsigned char const *)s1;
- mys2 = (unsigned char const *)s2;
- for(i = 0; ((i < sz) && (0 == myback)); i++) {
- if(*mys1 > *mys2) {
- myback = 1;
- } else {
- if(*mys1 < *mys2) {
- myback = -1;
- } else {
- mys1++; mys2++;
- }
- }
- }
- back = myback;
-#endif
-#endif
- } else { back = 1; }
- } else {
- if(s2) { back = -1; }
- }
- return back;
-}
-/* }}} */
-
-
-
-void *
-dk3mem_malloc_app(size_t sz, dk3_app_t *app)
-/* {{{ */
-{
- void *back = NULL;
- char c8buffer[64]; /* Buffer to show number of bytes. */
- dkChar dkbuffer[64]; /* Buffer to show number of bytes. */
-
-
-#line 275 "dk3mem.ctr"
- if(0 != sz) {
-#if DK3_ON_WINDOWS && (defined(_MSC_VER)) && (_MSC_VER > 1100)
-
-
-#line 278 "dk3mem.ctr"
- back = (void *)LocalAlloc((LMEM_FIXED | LMEM_ZEROINIT), sz);
-#else
-#if DK3_HAVE_MALLOC && DK3_HAVE_FREE
-
-
-#line 282 "dk3mem.ctr"
- back = malloc(sz);
-
-
-#line 284 "dk3mem.ctr"
-#else
-#error "The malloc and free functions are not available here!"
-#endif
-#endif
- if(NULL != back) {
-
-#line 289 "dk3mem.ctr"
- dk3mem_res(back, sz);
- } else {
-
-#line 291 "dk3mem.ctr"
- if(NULL != app) {
-
-#line 292 "dk3mem.ctr"
- /* ERROR: Failed to allocate n bytes! */
- if(0 != dk3ma_um_to_c8_string(c8buffer,sizeof(c8buffer),(dk3_um_t)sz)) {
- (void)dk3str_cnv_c8_to_str_app(
- dkbuffer, DK3_SIZEOF(dkbuffer,dkChar), c8buffer, NULL
- );
- dk3app_log_i3(app, DK3_LL_ERROR, 12, 13, dkbuffer);
- } else {
- dk3app_log_i1(app, DK3_LL_ERROR, 14);
- }
- }
- }
- }
-
-#line 304 "dk3mem.ctr"
- return back;
-}
-/* }}} */
-
-
-void *
-dk3mem_malloc(size_t sz)
-/* {{{ */
-{
- void *back;
- back = dk3mem_malloc_app(sz, NULL);
- return back;
-}
-/* }}} */
-
-
-
-size_t
-dk3mem_mul_size_t(size_t sz, size_t ne, int *ec)
-/* {{{ */
-{
- size_t back = 0;
- if (0 < sz) {
- if ((DK3_SIZE_T_MAX / sz) < ne) {
- if (NULL != ec) { *ec = DK3_ERROR_MATH_OVERFLOW; }
- } else {
- back = (sz * ne);
- }
- } else {
- if (NULL != ec) { *ec = DK3_ERROR_MATH_OUT_OF_RANGE; }
- }
- return back;
-}
-/* }}} */
-
-
-
-size_t
-dk3mem_add_size_t(size_t a, size_t b, int *ec)
-{
- size_t back = 0;
- if((DK3_SIZE_T_MAX - a) >= b) { back = a + b; }
- else { if(NULL != ec) { *ec = DK3_ERROR_MATH_OVERFLOW; } }
- return back;
-}
-
-
-void *
-dk3mem_alloc_app(size_t sz, size_t ne, dk3_app_t *app)
-/* {{{ */
-{
- void *back = NULL;
- size_t as = 0; /* Allocation size. */
- char c8b1[64]; /* Buffer for element size. */
- char c8b2[64]; /* Buffer for number of elements. */
- dkChar dkb1[64]; /* Buffer for element size. */
- dkChar dkb2[64]; /* Buffer for number of elements. */
- int ok = 0; /* Flag: Success. */
-
-
-#line 363 "dk3mem.ctr"
- if((0 != sz) && (0 != ne)) {
- as = dk3mem_mul_size_t(sz, ne, NULL);
- if(0 != as) {
- back = dk3mem_malloc_app(as, app);
- } else {
- if(NULL != app) {
- /* ERROR: Numeric overflow! */
- ok = 0;
- dkb1[0] = dkb2[0] = dkT('\0');
- if(0 != dk3ma_um_to_c8_string(c8b1, sizeof(c8b1),(dk3_um_t)sz)) {
- if(0 != dk3ma_um_to_c8_string(c8b2, sizeof(c8b2),(dk3_um_t)ne)) {
- (void)dk3str_cnv_c8_to_str_app(
- dkb1, DK3_SIZEOF(dkb1,dkChar), c8b1, NULL
- );
- (void)dk3str_cnv_c8_to_str_app(
- dkb2, DK3_SIZEOF(dkb2,dkChar), c8b2, NULL
- );
- ok = 1;
- }
- }
- if(0 != ok) {
- dk3app_log_i5(app, DK3_LL_ERROR, 16, 17, 18, dkb1, dkb2);
- } else {
- dk3app_log_i1(app, DK3_LL_ERROR, 15);
- }
- }
- }
- }
-
-#line 391 "dk3mem.ctr"
- return back;
-}
-/* }}} */
-
-
-
-void *
-dk3mem_alloc(size_t sz, size_t ne)
-/* {{{ */
-{
- void *back;
- back = dk3mem_alloc_app(sz, ne, NULL);
- return back;
-}
-/* }}} */
-
-
-
-void
-dk3mem_free (void *po)
-/* {{{ */
-{
- if(NULL != po) {
-#if DK3_ON_WINDOWS && (defined(_MSC_VER)) && (_MSC_VER > 1100)
- LocalFree((HLOCAL)po);
-#else
-#if DK3_HAVE_MALLOC && DK3_HAVE_FREE
- free(po);
-#endif
-#endif
- }
-}
-/* }}} */
-
-int
-dk3mem_reset_secure(void *mp, size_t sz)
-{
-#if !DK3_ON_WINDOWS
- char *ptr;
-#endif
- int back = 0;
- if ((NULL != mp) && (0 < sz)) {
-#if DK3_ON_WINDOWS
- SecureZeroMemory(mp, sz);
- back = 1;
-#else
- dk3mem_res(mp, sz);
- back = 1;
- ptr = (char *)mp;
- while (sz--) {
- if ('\0' != *(ptr++)) {
- back = 0;
- }
- }
-#endif
- }
- return back;
-}
-
-
-/* vim: set ai sw=2 filetype=c foldmethod=marker foldopen=all : */
-