X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fstpncpy.h;h=6dc92a81324d993b9dc2ead31d4c69e3a2db47ab;hb=7acea197e2d653876ae7113d5538a4544ce60d84;hp=a457ee9d94699030a7eb4eb56c321a78ac05956f;hpb=1080617a7d04cdf1a1d3b1e390859af371d485d7;p=gnulib.git diff --git a/lib/stpncpy.h b/lib/stpncpy.h index a457ee9d9..6dc92a813 100644 --- a/lib/stpncpy.h +++ b/lib/stpncpy.h @@ -1,5 +1,5 @@ /* String copying. - Copyright (C) 1995, 2001-2003 Free Software Foundation, Inc. + Copyright (C) 1995, 2001-2004 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -18,19 +18,29 @@ #ifndef _STPNCPY_H #define _STPNCPY_H -#if HAVE_STPNCPY - -/* Get stpncpy() declaration. */ #include -#else -#include +#ifdef __cplusplus +extern "C" { +#endif + + +#if !HAVE_STPNCPY -/* Copy no more than N characters of SRC to DST, returning the address of - the last character written into DST. */ -extern char *stpncpy (char *dst, const char *src, size_t n); +/* Copy no more than N bytes of SRC to DST, returning a pointer past the + last non-NUL byte written into DST. */ +/* When not using the GNU libc we use the stpncpy implementation we + provide here. */ +extern char *gnu_stpncpy (char *dst, const char *src, size_t n); +#define stpncpy(Dst, Src, N) gnu_stpncpy (Dst, Src, N) #endif + +#ifdef __cplusplus +} +#endif + + #endif /* _STPNCPY_H */