| To: | felipe_alfaro@xxxxxxxxxxxxx |
|---|---|
| Subject: | Re: [PATCH 2.6]: IPv6: strcpy -> strlcpy |
| From: | YOSHIFUJI Hideaki / 吉藤英明 <yoshfuji@xxxxxxxxxxxxxx> |
| Date: | Fri, 28 Nov 2003 09:40:22 +0900 (JST) |
| Cc: | rmk+lkml@xxxxxxxxxxxxxxxx, davem@xxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx, netdev@xxxxxxxxxxx, yoshfuji@xxxxxxxxxxxxxx |
| In-reply-to: | <20031128.092642.47232575.yoshfuji@linux-ipv6.org> |
| Organization: | USAGI Project |
| References: | <1069974209.5349.7.camel@teapot.felipe-alfaro.com> <20031128.092326.39861126.yoshfuji@linux-ipv6.org> <20031128.092642.47232575.yoshfuji@linux-ipv6.org> |
| Sender: | netdev-bounce@xxxxxxxxxxx |
In article <20031128.092642.47232575.yoshfuji@xxxxxxxxxxxxxx> (at Fri, 28 Nov
2003 09:26:42 +0900 (JST)), YOSHIFUJI Hideaki / 吉藤英明
<yoshfuji@xxxxxxxxxxxxxx> says:
> > 3) if (len)
> > strncpy(dst, src, len - 1);
> > dst[len] = 0;
grr, another mistake...:
if (len) {
strncpy(dst, src, len - 1);
dst[len - 1];
}
----------------
1) use strlcpy0(dst, src, len)
size_t strlcpy0(char *dst, const char *src, size_t maxlen)
{
size_t len = strlcpy(dst, src, maxlen);
if (likely(maxlen != 0) && len < maxlen - 1)
memset(dst + len + 1, 0, maxlen - len - 1);
}
2a) use strncpy0(dst, src, len)
char *strncpy0(char *dst, const char *src, size_t maxlen)
{
memset(dst, 0, maxlen);
if (likely(maxlen != 0))
strncpy(dst, src, maxlen - 1);
}
2b) fix strncpy() to zero-out rest of destination buffer
and use strncpy0(dst, src, len)
char *strncpy0(char *dst, const char *src, size_t maxlen)
{
if (likely(maxlen != 0)) {
strncpy(dst, src, maxlen - 1);
dst[maxlen - 1] = 0;
}
}
I prefer 1 > 2b >> 2a.
--yoshfuji
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Re: [PATCH 2.6]: IPv6: strcpy -> strlcpy, YOSHIFUJI Hideaki / 吉藤英明 |
|---|---|
| Next by Date: | [PATCH] Allow multiple dummy devices again, Andi Kleen |
| Previous by Thread: | Re: [PATCH 2.6]: IPv6: strcpy -> strlcpy, YOSHIFUJI Hideaki / 吉藤英明 |
| Next by Thread: | Re: [PATCH 2.6]: IPv6: strcpy -> strlcpy, Felipe Alfaro Solana |
| Indexes: | [Date] [Thread] [Top] [All Lists] |