diff options
Diffstat (limited to 'util.c')
-rw-r--r-- | util.c | 74 |
1 files changed, 0 insertions, 74 deletions
@@ -5738,80 +5738,6 @@ S_xs_version_bootcheck(pTHX_ U32 items, U32 ax, const char *xs_p, } } -/* -=for apidoc my_strlcat - -The C library C<strlcat> if available, or a Perl implementation of it. -This operates on C C<NUL>-terminated strings. - -C<my_strlcat()> appends string C<src> to the end of C<dst>. It will append at -most S<C<size - strlen(dst) - 1>> characters. It will then C<NUL>-terminate, -unless C<size> is 0 or the original C<dst> string was longer than C<size> (in -practice this should not happen as it means that either C<size> is incorrect or -that C<dst> is not a proper C<NUL>-terminated string). - -Note that C<size> is the full size of the destination buffer and -the result is guaranteed to be C<NUL>-terminated if there is room. Note that -room for the C<NUL> should be included in C<size>. - -The return value is the total length that C<dst> would have if C<size> is -sufficiently large. Thus it is the initial length of C<dst> plus the length of -C<src>. If C<size> is smaller than the return, the excess was not appended. - -=cut - -Description stolen from http://man.openbsd.org/strlcat.3 -*/ -#ifndef HAS_STRLCAT -Size_t -Perl_my_strlcat(char *dst, const char *src, Size_t size) -{ - Size_t used, length, copy; - - used = strlen(dst); - length = strlen(src); - if (size > 0 && used < size - 1) { - copy = (length >= size - used) ? size - used - 1 : length; - memcpy(dst + used, src, copy); - dst[used + copy] = '\0'; - } - return used + length; -} -#endif - - -/* -=for apidoc my_strlcpy - -The C library C<strlcpy> if available, or a Perl implementation of it. -This operates on C C<NUL>-terminated strings. - -C<my_strlcpy()> copies up to S<C<size - 1>> characters from the string C<src> -to C<dst>, C<NUL>-terminating the result if C<size> is not 0. - -The return value is the total length C<src> would be if the copy completely -succeeded. If it is larger than C<size>, the excess was not copied. - -=cut - -Description stolen from http://man.openbsd.org/strlcpy.3 -*/ -#ifndef HAS_STRLCPY -Size_t -Perl_my_strlcpy(char *dst, const char *src, Size_t size) -{ - Size_t length, copy; - - length = strlen(src); - if (size > 0) { - copy = (length >= size) ? size - 1 : length; - memcpy(dst, src, copy); - dst[copy] = '\0'; - } - return length; -} -#endif - PERL_STATIC_INLINE bool S_gv_has_usable_name(pTHX_ GV *gv) { |