diff options
Diffstat (limited to 'firmware/common/strlcpy.c')
-rw-r--r-- | firmware/common/strlcpy.c | 38 |
1 files changed, 19 insertions, 19 deletions
diff --git a/firmware/common/strlcpy.c b/firmware/common/strlcpy.c index ac30ef01fe..6e06eb81d2 100644 --- a/firmware/common/strlcpy.c +++ b/firmware/common/strlcpy.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: strlcpy.c,v 1.11 2006/05/05 15:27:38 millert Exp $ */ | 1 | /* $OpenBSD: strlcpy.c,v 1.11 2006/05/05 15:27:38 millert Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 1998 Todd C. Miller <Todd.Miller@courtesan.com> | 4 | * Copyright (c) 1998 Todd C. Miller <Todd.Miller@courtesan.com> |
@@ -27,26 +27,26 @@ | |||
27 | size_t | 27 | size_t |
28 | strlcpy(char *dst, const char *src, size_t siz) | 28 | strlcpy(char *dst, const char *src, size_t siz) |
29 | { | 29 | { |
30 | char *d = dst; | 30 | char *d = dst; |
31 | const char *s = src; | 31 | const char *s = src; |
32 | size_t n = siz; | 32 | size_t n = siz; |
33 | 33 | ||
34 | /* Copy as many bytes as will fit */ | 34 | /* Copy as many bytes as will fit */ |
35 | if (n != 0) { | 35 | if (n != 0) { |
36 | while (--n != 0) { | 36 | while (--n != 0) { |
37 | if ((*d++ = *s++) == '\0') | 37 | if ((*d++ = *s++) == '\0') |
38 | break; | 38 | break; |
39 | } | 39 | } |
40 | } | 40 | } |
41 | 41 | ||
42 | /* Not enough room in dst, add NUL and traverse rest of src */ | 42 | /* Not enough room in dst, add NUL and traverse rest of src */ |
43 | if (n == 0) { | 43 | if (n == 0) { |
44 | if (siz != 0) | 44 | if (siz != 0) |
45 | *d = '\0'; /* NUL-terminate dst */ | 45 | *d = '\0'; /* NUL-terminate dst */ |
46 | while (*s++) | 46 | while (*s++) |
47 | ; | 47 | ; |
48 | } | 48 | } |
49 | 49 | ||
50 | return(s - src - 1); /* count does not include NUL */ | 50 | return(s - src - 1); /* count does not include NUL */ |
51 | } | 51 | } |
52 | 52 | ||