Messages in this thread | | | Subject | Re: [PATCH] crypto: hisilicon - fix strncpy warning with strlcpy | From | Zhangfei Gao <> | Date | Thu, 4 Jun 2020 14:44:16 +0800 |
| |
On 2020/6/4 下午2:18, Herbert Xu wrote: > On Thu, Jun 04, 2020 at 02:10:37PM +0800, Zhangfei Gao wrote: >>> Should this even allow truncation? Perhaps it'd be better to fail >>> in case of an overrun? >> I think we do not need consider overrun, since it at most copy size-1 bytes >> to dest. >> From the manual: strlcpy() >> This function is similar to strncpy(), but it copies at most >> size-1 bytes to dest, always adds a terminating null >> byte, >> And simple tested with smaller SIZE of interface.name, only SIZE-1 is >> copied, so it is safe. >> -#define UACCE_MAX_NAME_SIZE 64 >> +#define UACCE_MAX_NAME_SIZE 4 > That's not what I meant. As it is if you do exceed the limit the > name is silently truncated. Wouldn't it be better to fail the > allocation instead? I think it is fine. 1. Currently the name size is 64, bigger enough. Simply grep in driver name, 64 should be enough. We can make it larger when there is a request. 2. it does not matter what the name is, since it is just an interface. cat /sys/class/uacce/hisi_zip-0/flags cat /sys/class/uacce/his-0/flags should be both fine to app only they can be distinguished. 3. It maybe a hard restriction to fail just because of a long name.
What do you think.
Thanks
| |