From f2544d094ba88e1cfbb7993ad67444852cfd5efd Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Tue, 24 Mar 2026 00:28:15 +0000 Subject: util/mkhtemp: new utility (hardened mktemp) part of the same code library as nvmutil. as part of this, i renamed util/nvmutil to util/libreboot-utils/ because it is now a multi-utility codebase. this is more efficient, since i also wish to use mkhtemp (function) in nvmutil. Signed-off-by: Leah Rowe --- util/nvmutil/lib/string.c | 114 ---------------------------------------------- 1 file changed, 114 deletions(-) delete mode 100644 util/nvmutil/lib/string.c (limited to 'util/nvmutil/lib/string.c') diff --git a/util/nvmutil/lib/string.c b/util/nvmutil/lib/string.c deleted file mode 100644 index ca58fb1c..00000000 --- a/util/nvmutil/lib/string.c +++ /dev/null @@ -1,114 +0,0 @@ -/* SPDX-License-Identifier: MIT - * Copyright (c) 2026 Leah Rowe - * - * String functions - */ - -#include -#include - -#include -#include -#include -#include - -#include "../include/common.h" - -/* scmp() - strict string comparison - * - * strict string comparison - * similar to strncmp, but null and - * unterminated inputs do not produce - * a return value; on error, errno is - * set and -1 is returned. - * - * the real return value is stored in - * the 4th argument by pointer. - * - * the value at rval pointer is set, - * only upon success. callers should - * check the return value accordingly. - */ - -int -scmp(const char *a, - const char *b, - size_t maxlen, - int *rval) -{ - size_t ch; - unsigned char ac; - unsigned char bc; - - if (a == NULL || - b == NULL || - rval == NULL) { - - errno = EFAULT; - return -1; - } - - for (ch = 0; ch < maxlen; ch++) { - - ac = (unsigned char)a[ch]; - bc = (unsigned char)b[ch]; - - if (ac != bc) { - *rval = ac - bc; - return 0; - } - - if (ac == '\0') { - *rval = 0; - return 0; - } - } - - /* block unterminated strings */ - errno = EFAULT; - return -1; -} - -/* slen() - strict strict length - * - * strict string length calculation - * similar to strnlen, but null and - * unterminated inputs do not produce - * a return value; on error, errno is - * set and -1 is returned. - * - * the real return value is stored in - * the 3rd argument by pointer. - * - * the value at rval pointer is set, - * only upon success. callers should - * check the return value accordingly. - */ - -int -slen(const char *s, - size_t maxlen, - size_t *rval) -{ - size_t ch; - - if (s == NULL || - rval == NULL) { - - errno = EFAULT; - return -1; - } - - for (ch = 0; - ch < maxlen && s[ch] != '\0'; - ch++); - - if (ch == maxlen) { - /* unterminated */ - errno = EFAULT; - return -1; - } - - *rval = ch; - return 0; -} -- cgit v1.2.1