[dpdk-dev,v2] examples/ipsec-secgw: fix copy into fixed size buffer issue
Checks
Commit Message
Fixes: 0d547ed0 ("examples/ipsec-secgw: support configuration
file")
Coverity issue: 137875
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
---
examples/ipsec-secgw/sa.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
Comments
On 11/7/2016 2:21 PM, Fan Zhang wrote:
> Fixes: 0d547ed0 ("examples/ipsec-secgw: support configuration
> file")
> Coverity issue: 137875
>
> Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
2016-11-07 15:59, Ferruh Yigit:
> On 11/7/2016 2:21 PM, Fan Zhang wrote:
> > Fixes: 0d547ed0 ("examples/ipsec-secgw: support configuration
> > file")
> > Coverity issue: 137875
> >
> > Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
>
> Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
Applied
@@ -170,15 +170,18 @@ static uint32_t
parse_key_string(const char *key_str, uint8_t *key)
{
const char *pt_start = key_str, *pt_end = key_str;
- char sub_str[3];
uint32_t nb_bytes = 0;
while (pt_end != NULL) {
+ char sub_str[3] = {0};
+
pt_end = strchr(pt_start, ':');
- if (pt_end == NULL)
- strncpy(sub_str, pt_start, strlen(pt_start));
- else {
+ if (pt_end == NULL) {
+ if (strlen(pt_start) > 2)
+ return 0;
+ strncpy(sub_str, pt_start, 2);
+ } else {
if (pt_end - pt_start > 2)
return 0;