Annotation of /tags/mkinitrd-6_2_0/libbb/safe_strncpy.c
Parent Directory
|
Revision Log
Revision 994 -
(hide annotations)
(download)
Sun May 30 11:53:18 2010 UTC (14 years ago) by niro
File MIME type: text/plain
File size: 631 byte(s)
Sun May 30 11:53:18 2010 UTC (14 years ago) by niro
File MIME type: text/plain
File size: 631 byte(s)
tagged 'mkinitrd-6_2_0'
1 | niro | 532 | /* vi: set sw=4 ts=4: */ |
2 | /* | ||
3 | * Utility routines. | ||
4 | * | ||
5 | * Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org> | ||
6 | * | ||
7 | * Licensed under GPLv2 or later, see file LICENSE in this tarball for details. | ||
8 | */ | ||
9 | |||
10 | #include "libbb.h" | ||
11 | |||
12 | /* Like strncpy but make sure the resulting string is always 0 terminated. */ | ||
13 | niro | 816 | char* FAST_FUNC safe_strncpy(char *dst, const char *src, size_t size) |
14 | niro | 532 | { |
15 | if (!size) return dst; | ||
16 | dst[--size] = '\0'; | ||
17 | return strncpy(dst, src, size); | ||
18 | } | ||
19 | niro | 816 | |
20 | /* Like strcpy but can copy overlapping strings. */ | ||
21 | void FAST_FUNC overlapping_strcpy(char *dst, const char *src) | ||
22 | { | ||
23 | while ((*dst = *src) != '\0') { | ||
24 | dst++; | ||
25 | src++; | ||
26 | } | ||
27 | } |