alloc/realloc.h \
alloc/reallocf.c \
alloc/reallocf.h \
- alloc/x/xcalloc.c \
- alloc/x/xcalloc.h \
- alloc/x/xmalloc.c \
- alloc/x/xmalloc.h \
- alloc/x/xrealloc.c \
- alloc/x/xrealloc.h \
atoi/a2i/a2i.c \
atoi/a2i/a2i.h \
atoi/a2i/a2s.c \
string/sprintf/snprintf.h \
string/sprintf/stpeprintf.c \
string/sprintf/stpeprintf.h \
- string/sprintf/xaprintf.c \
- string/sprintf/xaprintf.h \
string/strchr/strchrcnt.c \
string/strchr/strchrcnt.h \
string/strchr/strchrscnt.c \
string/strcpy/strncpy.h \
string/strcpy/strtcpy.c \
string/strcpy/strtcpy.h \
+ string/strdup/strdup.c \
+ string/strdup/strdup.h \
string/strdup/strndupa.c \
string/strdup/strndupa.h \
- string/strdup/xstrdup.c \
- string/strdup/xstrdup.h \
- string/strdup/xstrndup.c \
- string/strdup/xstrndup.h \
+ string/strdup/strndup.c \
+ string/strdup/strndup.h \
string/strftime.c \
string/strftime.h \
string/strspn/stpspn.c \
string/strtok/strsep2arr.h \
string/strtok/strsep2ls.c \
string/strtok/strsep2ls.h \
- string/strtok/xastrsep2ls.c \
- string/strtok/xastrsep2ls.h \
strtoday.c \
sub.c \
subordinateio.h \
-// SPDX-FileCopyrightText: 2023-2024, Alejandro Colomar <alx@kernel.org>
+// SPDX-FileCopyrightText: 2023-2025, Alejandro Colomar <alx@kernel.org>
// SPDX-License-Identifier: BSD-3-Clause
#include <stdlib.h>
+#include "exit_if_null.h"
+
#define CALLOC(n, type) \
( \
)
+#define XCALLOC(n, type) exit_if_null(CALLOC(n, type))
+
+
#endif // include guard
-// SPDX-FileCopyrightText: 2023-2024, Alejandro Colomar <alx@kernel.org>
+// SPDX-FileCopyrightText: 2023-2025, Alejandro Colomar <alx@kernel.org>
// SPDX-License-Identifier: BSD-3-Clause
#include <stdlib.h>
#include "attr.h"
+#include "exit_if_null.h"
#define MALLOC(n, type) \
)
+#define XMALLOC(n, type) exit_if_null(MALLOC(n, type))
+
+
ATTR_ALLOC_SIZE(1, 2)
ATTR_MALLOC(free)
inline void *mallocarray(size_t nmemb, size_t size);
-// SPDX-FileCopyrightText: 2023-2024, Alejandro Colomar <alx@kernel.org>
+// SPDX-FileCopyrightText: 2023-2025, Alejandro Colomar <alx@kernel.org>
// SPDX-License-Identifier: BSD-3-Clause
#include <stdlib.h>
+#include "exit_if_null.h"
+
#define REALLOC(p, n, type) \
( \
)
+#define XREALLOC(p, n, type) exit_if_null(REALLOC(p, n, type))
+
+
#endif // include guard
+++ /dev/null
-// SPDX-FileCopyrightText: 2023-2025, Alejandro Colomar <alx@kernel.org>
-// SPDX-License-Identifier: BSD-3-Clause
-
-
-#ifndef SHADOW_INCLUDE_LIB_ALLOC_X_XCALLOC_H_
-#define SHADOW_INCLUDE_LIB_ALLOC_X_XCALLOC_H_
-
-
-#include "config.h"
-
-#include "alloc/calloc.h"
-#include "exit_if_null.h"
-
-
-#define XCALLOC(n, type) exit_if_null(CALLOC(n, type))
-
-
-#endif // include guard
+++ /dev/null
-// SPDX-FileCopyrightText: 2023-2024, Alejandro Colomar <alx@kernel.org>
-// SPDX-License-Identifier: BSD-3-Clause
-
-
-#include "config.h"
-
-#include "alloc/x/xmalloc.h"
+++ /dev/null
-// SPDX-FileCopyrightText: 2023-2025, Alejandro Colomar <alx@kernel.org>
-// SPDX-License-Identifier: BSD-3-Clause
-
-
-#ifndef SHADOW_INCLUDE_LIB_ALLOC_X_XMALLOC_H_
-#define SHADOW_INCLUDE_LIB_ALLOC_X_XMALLOC_H_
-
-
-#include "config.h"
-
-#include "alloc/malloc.h"
-#include "exit_if_null.h"
-
-
-#define XMALLOC(n, type) exit_if_null(MALLOC(n, type))
-
-
-#endif // include guard
+++ /dev/null
-// SPDX-FileCopyrightText: 2023-2024, Alejandro Colomar <alx@kernel.org>
-// SPDX-License-Identifier: BSD-3-Clause
-
-
-#include "config.h"
-
-#include "alloc/x/xrealloc.h"
+++ /dev/null
-// SPDX-FileCopyrightText: 2023-2025, Alejandro Colomar <alx@kernel.org>
-// SPDX-License-Identifier: BSD-3-Clause
-
-
-#ifndef SHADOW_INCLUDE_LIB_ALLOC_X_XREALLOC_H_
-#define SHADOW_INCLUDE_LIB_ALLOC_X_XREALLOC_H_
-
-
-#include "config.h"
-
-#include "alloc/realloc.h"
-#include "exit_if_null.h"
-
-
-#define XREALLOC(p, n, type) exit_if_null(REALLOC(p, n, type))
-
-
-#endif // include guard
#include <stdio.h>
#include <string.h>
-#include "alloc/x/xmalloc.h"
+#include "alloc/malloc.h"
#include "attr.h"
#include "fs/readlink/areadlink.h"
#include "prototypes.h"
#endif /* WITH_ATTR */
#include "shadowlog.h"
#include "string/sprintf/aprintf.h"
-#include "string/sprintf/xaprintf.h"
#include "string/strcmp/streq.h"
#include "string/strcmp/strprefix.h"
#include <stdlib.h>
#include <string.h>
-#include "alloc/x/xmalloc.h"
-#include "alloc/x/xrealloc.h"
+#include "alloc/malloc.h"
+#include "alloc/realloc.h"
#include "prototypes.h"
#include "defines.h"
#include "shadowlog.h"
+#include "string/sprintf/aprintf.h"
#include "string/sprintf/snprintf.h"
-#include "string/sprintf/xaprintf.h"
+#include "string/sprintf/aprintf.h"
#include "string/strcmp/strprefix.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
/*
#include "prototypes.h"
#include "shadowlog_internal.h"
#include "sizeof.h"
-#include "string/sprintf/xaprintf.h"
+#include "string/sprintf/aprintf.h"
#include "string/strcmp/strcaseeq.h"
#include "string/strcmp/streq.h"
#include "string/strcmp/strprefix.h"
#endif
#include "alloc/calloc.h"
-#include "alloc/x/xmalloc.h"
+#include "alloc/malloc.h"
#include "atoi/a2i/a2u.h"
#include "idmapping.h"
#include "prototypes.h"
#include <assert.h>
-#include "alloc/x/xmalloc.h"
+#include "alloc/malloc.h"
#include "prototypes.h"
#include "defines.h"
#include "string/strchr/strchrcnt.h"
#include "string/strcmp/streq.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
#include "string/strtok/strsep2ls.h"
#include <string.h>
#include "getdef.h"
-#include "string/sprintf/xaprintf.h"
+#include "string/sprintf/aprintf.h"
#ident "$Id$"
#include "getdef.h"
#include "string/ctype/strtoascii/strtolower.h"
#include "string/memset/memzero.h"
-#include "string/sprintf/xaprintf.h"
+#include "string/sprintf/aprintf.h"
#include "string/strcmp/streq.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
#if WITH_LIBBSD == 0
#include "getdef.h"
#include "shadow/gshadow/gshadow.h"
#include "shadowlog.h"
-#include "string/sprintf/xaprintf.h"
+#include "string/sprintf/aprintf.h"
#include "string/strcmp/streq.h"
#include "string/strcmp/strprefix.h"
#include <pwd.h>
#include "getdef.h"
#include "shadowlog.h"
-#include "string/sprintf/xaprintf.h"
+#include "string/sprintf/aprintf.h"
#include "string/strcmp/streq.h"
#include "string/strcmp/strprefix.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
#include "string/strspn/stpspn.h"
#include "string/strtok/stpsep.h"
#include "shadow/gshadow/sgrp.h"
#include "string/strcmp/streq.h"
+#include "string/strtok/astrsep2ls.h"
#include "string/strtok/stpsep.h"
#include "string/strtok/strsep2arr.h"
-#include "string/strtok/xastrsep2ls.h"
#if defined(SHADOWGRP) && !__has_include(<gshadow.h>)
#include <stdlib.h>
#include "attr.h"
+#include "exit_if_null.h"
+
+
+// exit-on-error allocate print formatted
+#define xaprintf(...) exit_if_null(aprintf(__VA_ARGS__))
ATTR_MALLOC(free)
+++ /dev/null
-// SPDX-FileCopyrightText: 2023-2025, Alejandro Colomar <alx@kernel.org>
-// SPDX-License-Identifier: BSD-3-Clause
-
-
-#include "config.h"
-
-#include "string/sprintf/xaprintf.h"
+++ /dev/null
-// SPDX-FileCopyrightText: 2023-2025, Alejandro Colomar <alx@kernel.org>
-// SPDX-License-Identifier: BSD-3-Clause
-
-
-#ifndef SHADOW_INCLUDE_LIB_STRING_SPRINTF_XASPRINTF_H_
-#define SHADOW_INCLUDE_LIB_STRING_SPRINTF_XASPRINTF_H_
-
-
-#include "config.h"
-
-#include "string/sprintf/aprintf.h"
-#include "exit_if_null.h"
-
-
-// exit-on-error allocate print formatted
-#define xaprintf(...) exit_if_null(aprintf(__VA_ARGS__))
-
-
-#endif // include guard
#include "config.h"
-#include "alloc/x/xcalloc.h"
+#include "string/strdup/strdup.h"
// SPDX-License-Identifier: BSD-3-Clause
-#ifndef SHADOW_INCLUDE_LIB_STRING_STRDUP_XSTRDUP_H_
-#define SHADOW_INCLUDE_LIB_STRING_STRDUP_XSTRDUP_H_
+#ifndef SHADOW_INCLUDE_LIB_STRING_STRDUP_STRDUP_H_
+#define SHADOW_INCLUDE_LIB_STRING_STRDUP_STRDUP_H_
#include "config.h"
#include "config.h"
-#include "string/strdup/xstrndup.h"
+#include "string/strdup/strndup.h"
// SPDX-License-Identifier: BSD-3-Clause
-#ifndef SHADOW_INCLUDE_LIB_STRING_STRDUP_XSTRNDUP_H_
-#define SHADOW_INCLUDE_LIB_STRING_STRDUP_XSTRNDUP_H_
+#ifndef SHADOW_INCLUDE_LIB_STRING_STRDUP_STRNDUP_H_
+#define SHADOW_INCLUDE_LIB_STRING_STRDUP_STRNDUP_H_
#include "config.h"
+++ /dev/null
-// SPDX-FileCopyrightText: 2023-2024, Alejandro Colomar <alx@kernel.org>
-// SPDX-License-Identifier: BSD-3-Clause
-
-
-#include "config.h"
-
-#include "string/strdup/xstrdup.h"
-// SPDX-FileCopyrightText: 2024, Alejandro Colomar <alx@kernel.org>
+// SPDX-FileCopyrightText: 2024-2025, Alejandro Colomar <alx@kernel.org>
// SPDX-License-Identifier: BSD-3-Clause
#include "alloc/malloc.h"
#include "attr.h"
+#include "exit_if_null.h"
#include "string/strchr/strchrscnt.h"
#include "string/strtok/strsep2ls.h"
+// xastrsep2ls - exit-on-error allocate string separate to list-of-strings
+#define xastrsep2ls(s, delim, np) exit_if_null(astrsep2ls(s, delim, np))
+
+
ATTR_ACCESS(read_write, 1) ATTR_ACCESS(write_only, 3)
ATTR_STRING(1) ATTR_STRING(2)
inline char **astrsep2ls(char *restrict s, const char *restrict delim,
size_t *restrict np);
-// allocate string separate to list-of-strings
-// Like strsep2ls(), but allocate the list array.
+// astrsep2ls - allocate string separate to list-of-strings
inline char **
astrsep2ls(char *s, const char *restrict delim, size_t *restrict np)
{
+++ /dev/null
-// SPDX-FileCopyrightText: 2024-2025, Alejandro Colomar <alx@kernel.org>
-// SPDX-License-Identifier: BSD-3-Clause
-
-
-#include "config.h"
-
-#include "string/strtok/xastrsep2ls.h"
+++ /dev/null
-// SPDX-FileCopyrightText: 2024-2025, Alejandro Colomar <alx@kernel.org>
-// SPDX-License-Identifier: BSD-3-Clause
-
-
-#ifndef SHADOW_INCLUDE_LIB_STRING_STRTOK_XASTRSEP2LS_H_
-#define SHADOW_INCLUDE_LIB_STRING_STRTOK_XASTRSEP2LS_H_
-
-
-#include "config.h"
-
-#include "exit_if_null.h"
-#include "string/strtok/astrsep2ls.h"
-
-
-#define xastrsep2ls(s, delim, np) exit_if_null(astrsep2ls(s, delim, np))
-
-
-#endif // include guard
#include <string.h>
#include <fcntl.h>
-#include "alloc/x/xcalloc.h"
-#include "alloc/x/xmalloc.h"
+#include "alloc/calloc.h"
+#include "alloc/malloc.h"
#include "attr.h"
#include "sizeof.h"
#include "string/strchr/strnul.h"
#include "string/strcmp/strprefix.h"
#include "string/strcpy/strncpy.h"
#include "string/strcpy/strtcpy.h"
-#include "string/strdup/xstrdup.h"
-#include "string/strdup/xstrndup.h"
+#include "string/strdup/strdup.h"
+#include "string/strdup/strndup.h"
#ident "$Id$"
#include <errno.h>
#include "alloc/malloc.h"
-#include "alloc/x/xrealloc.h"
+#include "alloc/realloc.h"
#include "prototypes.h"
#include "shadowlog.h"
#include "string/sprintf/snprintf.h"
#include "string/strcmp/streq.h"
#include "string/strcpy/strtcpy.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
#include "string/strftime.h"
#include "time/day_to_str.h"
/*@-exitarg@*/
#include "string/sprintf/stpeprintf.h"
#include "string/strcmp/streq.h"
#include "string/strcpy/strtcpy.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
struct option_flags {
bool chroot;
#include "sssd.h"
#include "string/strcmp/streq.h"
#include "string/strcpy/strtcpy.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
#ifndef SHELLS_FILE
#include <sys/types.h>
#include "agetpass.h"
-#include "alloc/x/xmalloc.h"
+#include "alloc/malloc.h"
#include "attr.h"
#include "defines.h"
/*@-exitarg@*/
#include "string/sprintf/snprintf.h"
#include "string/strcmp/streq.h"
#include "string/strcpy/strtcpy.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
struct option_flags {
bool chroot;
#endif /* USE_PAM */
#include <pwd.h>
-#include "alloc/x/xmalloc.h"
+#include "alloc/malloc.h"
#include "defines.h"
#include "groupio.h"
#include "prototypes.h"
#include "shadow/gshadow/sgrp.h"
#include "shadowlog.h"
#include "string/strcmp/streq.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
/* Exit Status Values */
#endif /* USE_PAM */
#endif /* ACCT_TOOLS_SETUID */
-#include "alloc/x/xmalloc.h"
+#include "alloc/malloc.h"
#include "atoi/getnum.h"
#include "chkname.h"
#include "defines.h"
#include "string/sprintf/stpeprintf.h"
#include "string/strcmp/streq.h"
#include "string/strcpy/stpecpy.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
/*
#include <sys/ioctl.h>
#include <assert.h>
-#include "alloc/x/xmalloc.h"
+#include "alloc/malloc.h"
#include "attr.h"
#include "chkname.h"
#include "defines.h"
#include "string/strcmp/strneq.h"
#include "string/strcmp/strprefix.h"
#include "string/strcpy/strtcpy.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
#include "string/strftime.h"
#include <sys/types.h>
#include "agetpass.h"
-#include "alloc/x/xmalloc.h"
+#include "alloc/malloc.h"
+#include "alloc/realloc.h"
#include "chkname.h"
#include "defines.h"
/*@-exitarg@*/
#include "string/sprintf/snprintf.h"
#include "string/strcmp/streq.h"
#include "string/strcmp/strprefix.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
#include <assert.h>
#include "sssd.h"
#include "string/sprintf/snprintf.h"
#include "string/strcmp/streq.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
#include "string/strtok/stpsep.h"
#include "string/strtok/strsep2arr.h"
#include "shadowlog.h"
#include "sssd.h"
#include "string/memset/memzero.h"
-#include "string/sprintf/xaprintf.h"
+#include "string/sprintf/aprintf.h"
#include "string/strcmp/streq.h"
#include "string/strcmp/strprefix.h"
#include "string/strcpy/strtcpy.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
#include "time/day_to_str.h"
#include <fcntl.h>
#endif /* !USE_PAM */
-#include "alloc/x/xmalloc.h"
+#include "alloc/malloc.h"
#include "attr.h"
#include "cast.h"
#include "defines.h"
#include "pwauth.h"
#include "prototypes.h"
#include "shadowlog.h"
+#include "string/sprintf/aprintf.h"
#include "string/sprintf/snprintf.h"
-#include "string/sprintf/xaprintf.h"
#include "string/strcmp/streq.h"
#include "string/strcmp/strprefix.h"
#include "string/strcpy/strtcpy.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
/*
#include "shadowlog.h"
#include "string/strcmp/streq.h"
#include "string/strcmp/strprefix.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
/*
#include <time.h>
#include <unistd.h>
-#include "alloc/x/xmalloc.h"
+#include "alloc/malloc.h"
#include "atoi/a2i/a2s.h"
#include "atoi/getnum.h"
#include "chkname.h"
#include "string/memset/memzero.h"
#include "string/sprintf/aprintf.h"
#include "string/sprintf/snprintf.h"
-#include "string/sprintf/xaprintf.h"
#include "string/strcmp/strcaseeq.h"
#include "string/strcmp/streq.h"
#include "string/strcmp/strprefix.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
#include "string/strtok/stpsep.h"
#include "shadow/gshadow/sgrp.h"
#include "shadowlog.h"
#include "string/sprintf/aprintf.h"
-#include "string/sprintf/xaprintf.h"
#include "string/strcmp/streq.h"
#include "string/strcmp/strprefix.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
/*
#include <time.h>
#include "alloc/malloc.h"
-#include "alloc/x/xmalloc.h"
#include "atoi/a2i/a2i.h"
#include "atoi/a2i/a2s.h"
#include "atoi/getnum.h"
#include "shadowlog.h"
#include "sssd.h"
#include "string/memset/memzero.h"
-#include "string/sprintf/xaprintf.h"
+#include "string/sprintf/aprintf.h"
#include "string/strcmp/streq.h"
#include "string/strcmp/strprefix.h"
-#include "string/strdup/xstrdup.h"
+#include "string/strdup/strdup.h"
#include "time/day_to_str.h"
#include "typetraits.h"
#include "sssd.h"
#include "string/sprintf/aprintf.h"
#include "string/sprintf/snprintf.h"
-#include "string/sprintf/xaprintf.h"
#include "string/strcmp/streq.h"
../../lib/exit_if_null.c \
../../lib/shadowlog.c \
../../lib/string/sprintf/aprintf.c \
- ../../lib/string/sprintf/xaprintf.c \
../../lib/string/strcmp/streq.c \
test_xaprintf.c \
$(NULL)
// SPDX-License-Identifier: BSD-3-Clause
-#include "string/sprintf/xaprintf.h"
+#include "string/sprintf/aprintf.h"
#include <setjmp.h>
#include <stdarg.h>