From: Alejandro Colomar Date: Thu, 14 Nov 2024 21:04:21 +0000 (+0100) Subject: lib/search/sort/: QSORT(): Add macro X-Git-Tag: 4.17.3~34 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=478d9785ff9f0798d5868d61a55f58f96c10df8d;p=thirdparty%2Fshadow.git lib/search/sort/: QSORT(): Add macro Reviewed-by: Serge Hallyn Signed-off-by: Alejandro Colomar --- diff --git a/lib/Makefile.am b/lib/Makefile.am index 3d3a96ae7..95db1053c 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -161,6 +161,8 @@ libshadow_la_SOURCES = \ search/l/lfind.h \ search/l/lsearch.c \ search/l/lsearch.h \ + search/sort/qsort.c \ + search/sort/qsort.h \ selinux.c \ semanage.c \ setugid.c \ diff --git a/lib/search/sort/qsort.c b/lib/search/sort/qsort.c new file mode 100644 index 000000000..362d43d74 --- /dev/null +++ b/lib/search/sort/qsort.c @@ -0,0 +1,7 @@ +// SPDX-FileCopyrightText: 2024, Alejandro Colomar +// SPDX-License-Identifier: BSD-3-Clause + + +#include + +#include "search/sort/qsort.h" diff --git a/lib/search/sort/qsort.h b/lib/search/sort/qsort.h new file mode 100644 index 000000000..4a23506b0 --- /dev/null +++ b/lib/search/sort/qsort.h @@ -0,0 +1,25 @@ +// SPDX-FileCopyrightText: 2024, Alejandro Colomar +// SPDX-License-Identifier: BSD-3-Clause + + +#ifndef SHADOW_INCLUDE_LIB_SEARCH_SORT_QSORT_H_ +#define SHADOW_INCLUDE_LIB_SEARCH_SORT_QSORT_H_ + + +#include + +#include + +#include "must_be.h" +#include "search/cmp/cmp.h" + + +#define QSORT(a, n) do \ +{ \ + __auto_type p_ = a; \ + \ + qsort(p_, n, sizeof(*p_), CMP(typeof(p_))); \ +} while (0) + + +#endif // include guard