Chen Gang
2013-May-17 08:07 UTC
[Bridge] [PATCH] bridge: netfilter: using strlcpy() instead of strncpy()
'name' has already set all zero when it is defined, so not need let strncpy() to pad it again. 'name' is a string, better always let is NUL terminated, so use strlcpy() instead of strncpy(). Signed-off-by: Chen Gang <gang.chen at asianux.com> --- net/bridge/netfilter/ebtables.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/net/bridge/netfilter/ebtables.c b/net/bridge/netfilter/ebtables.c index 3d110c4..ac78024 100644 --- a/net/bridge/netfilter/ebtables.c +++ b/net/bridge/netfilter/ebtables.c @@ -1339,7 +1339,7 @@ static inline int ebt_make_matchname(const struct ebt_entry_match *m, /* ebtables expects 32 bytes long names but xt_match names are 29 bytes long. Copy 29 bytes and fill remaining bytes with zeroes. */ - strncpy(name, m->u.match->name, sizeof(name)); + strlcpy(name, m->u.match->name, sizeof(name)); if (copy_to_user(hlp, name, EBT_FUNCTION_MAXNAMELEN)) return -EFAULT; return 0; @@ -1351,7 +1351,7 @@ static inline int ebt_make_watchername(const struct ebt_entry_watcher *w, char __user *hlp = ubase + ((char *)w - base); char name[EBT_FUNCTION_MAXNAMELEN] = {}; - strncpy(name, w->u.watcher->name, sizeof(name)); + strlcpy(name, w->u.watcher->name, sizeof(name)); if (copy_to_user(hlp , name, EBT_FUNCTION_MAXNAMELEN)) return -EFAULT; return 0; @@ -1377,7 +1377,7 @@ ebt_make_names(struct ebt_entry *e, const char *base, char __user *ubase) ret = EBT_WATCHER_ITERATE(e, ebt_make_watchername, base, ubase); if (ret != 0) return ret; - strncpy(name, t->u.target->name, sizeof(name)); + strlcpy(name, t->u.target->name, sizeof(name)); if (copy_to_user(hlp, name, EBT_FUNCTION_MAXNAMELEN)) return -EFAULT; return 0; -- 1.7.7.6
Bart De Schuymer
2013-May-19 19:43 UTC
[Bridge] [PATCH] bridge: netfilter: using strlcpy() instead of strncpy()
Op 17/05/2013 10:07, Chen Gang schreef:> > 'name' has already set all zero when it is defined, so not need let > strncpy() to pad it again. > > 'name' is a string, better always let is NUL terminated, so use > strlcpy() instead of strncpy(). > > > Signed-off-by: Chen Gang <gang.chen at asianux.com>Acked-by: Bart De Schuymer <bdschuym at pandora.be>
Pablo Neira Ayuso
2013-May-23 10:56 UTC
[Bridge] [PATCH] bridge: netfilter: using strlcpy() instead of strncpy()
On Fri, May 17, 2013 at 04:07:22PM +0800, Chen Gang wrote:> > 'name' has already set all zero when it is defined, so not need let > strncpy() to pad it again. > > 'name' is a string, better always let is NUL terminated, so use > strlcpy() instead of strncpy().Applied, thanks.
Pablo Neira Ayuso
2013-May-23 10:56 UTC
Re: [PATCH] bridge: netfilter: using strlcpy() instead of strncpy()
On Fri, May 17, 2013 at 04:07:22PM +0800, Chen Gang wrote:> > ''name'' has already set all zero when it is defined, so not need let > strncpy() to pad it again. > > ''name'' is a string, better always let is NUL terminated, so use > strlcpy() instead of strncpy().Applied, thanks.
Chen Gang
2013-May-23 10:57 UTC
Re: [PATCH] bridge: netfilter: using strlcpy() instead of strncpy()
On 05/23/2013 06:56 PM, Pablo Neira Ayuso wrote:> On Fri, May 17, 2013 at 04:07:22PM +0800, Chen Gang wrote: >> > >> > ''name'' has already set all zero when it is defined, so not need let >> > strncpy() to pad it again. >> > >> > ''name'' is a string, better always let is NUL terminated, so use >> > strlcpy() instead of strncpy(). > Applied, thanks. > >Thank you too. -- Chen Gang Asianux Corporation