]> git.ipfire.org Git - thirdparty/glibc.git/blame - sysdeps/s390/strncpy.c
Prefer https to http for gnu.org and fsf.org URLs
[thirdparty/glibc.git] / sysdeps / s390 / strncpy.c
CommitLineData
d183b96e 1/* Multiple versions of strncpy.
04277e02 2 Copyright (C) 2015-2019 Free Software Foundation, Inc.
d183b96e
SL
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, see
5a82c748 17 <https://www.gnu.org/licenses/>. */
d183b96e 18
d1bdbf38
SL
19#include <ifunc-strncpy.h>
20
21#if HAVE_STRNCPY_IFUNC
18d6c45e
SL
22# define strncpy __redirect_strncpy
23/* Omit the strncpy inline definitions because it would redefine strncpy. */
24# define __NO_STRING_INLINES
d183b96e 25# include <string.h>
18d6c45e 26# undef strncpy
d183b96e
SL
27# include <ifunc-resolve.h>
28
d1bdbf38
SL
29# if HAVE_STRNCPY_Z900_G5
30extern __typeof (__redirect_strncpy) STRNCPY_Z900_G5 attribute_hidden;
31# endif
32
33# if HAVE_STRNCPY_Z13
34extern __typeof (__redirect_strncpy) STRNCPY_Z13 attribute_hidden;
35# endif
18d6c45e 36
d1bdbf38
SL
37s390_libc_ifunc_expr (__redirect_strncpy, strncpy,
38 (HAVE_STRNCPY_Z13 && (hwcap & HWCAP_S390_VX))
39 ? STRNCPY_Z13
40 : STRNCPY_DEFAULT
41 )
d183b96e 42#endif