t_strlcpy.c (1083B)
- // utils-std: Collection of commonly available Unix tools
- // SPDX-FileCopyrightText: 2017 Haelwenn (lanodan) Monnier <contact+utils@hacktivis.me>
- // SPDX-License-Identifier: MPL-2.0
- #include "../libutils/lib_string.h"
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #define MATCH(a, b) \
- if(a != b) \
- { \
- printf(#a "(%d) != " #b "(%d)\n", a, b); \
- abort(); \
- }
- int
- main(void)
- {
- const char *test = "this is a test string";
- static char buf[64];
- buf[10] = 'A';
- puts("1..1");
- size_t ret = lib_strlcpy(buf, test, 10);
- MATCH((int)ret, 9);
- MATCH(buf[10], 'A');
- MATCH(buf[9], '\0');
- MATCH(strncmp(buf, test, 9), 0);
- puts("1 ok - strlcpy");
- return 0;
- }