atomisp: fixes Klocwork issues
authorLassi Väätämöinen <lassix.vtminen@intel.com>
Tue, 13 Mar 2012 12:47:40 +0000 (14:47 +0200)
committerbuildbot <buildbot@intel.com>
Wed, 14 Mar 2012 15:50:21 +0000 (08:50 -0700)
BZ: 24562

Fixes Klockwork issue #114398, which are under atomisp driver.
The case #114393 is a false positive, and is omitted.
The case #114433 is under V4L2 subsystem, and should not be
addressed by us.

Change-Id: I20a1370c600ce63e25a5ba9e9fc2958c6adbf9ec
Signed-off-by: Lassi Väätämöinen <lassix.vtminen@intel.com>
Reviewed-on: http://android.intel.com:8080/36576
Reviewed-by: Cohen, David A <david.a.cohen@intel.com>
Reviewed-by: Sutic, Aleksandar <aleksandar.sutic@intel.com>
Reviewed-by: Mandy, Arnaud <arnaud.mandy@intel.com>
Reviewed-by: Koski, Anttu <anttu.koski@intel.com>
Tested-by: Koski, Anttu <anttu.koski@intel.com>
Reviewed-by: Koskinen, Ilkka <ilkka.koskinen@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
drivers/media/video/atomisp/atomisp_ioctl.c

index 3e59b11..cc68697 100644 (file)
@@ -202,19 +202,24 @@ static const u32 ctrls_num = ARRAY_SIZE(ci_v4l2_controls);
  * FIXME: capabilities should be different for video0/video2/video3
  */
 static int atomisp_querycap(struct file *file, void *fh,
-       struct v4l2_capability *cap)
+                           struct v4l2_capability *cap)
 {
        int ret = 0;
 
        memset(cap, 0, sizeof(struct v4l2_capability));
-       strncpy(cap->driver, DRIVER, strlen(DRIVER));
-       strncpy(cap->card, CARD, strlen(CARD));
-       strncpy(cap->bus_info, BUS_INFO, strlen(BUS_INFO));
+
+       WARN_ON(sizeof(DRIVER) > sizeof(cap->driver) ||
+               sizeof(CARD) > sizeof(cap->card) ||
+               sizeof(BUS_INFO) > sizeof(cap->bus_info));
+
+       strncpy(cap->driver, DRIVER, sizeof(cap->driver) - 1);
+       strncpy(cap->card, CARD, sizeof(cap->card) - 1);
+       strncpy(cap->bus_info, BUS_INFO, sizeof(cap->card) - 1);
+
        cap->version = VERSION;
 
        cap->capabilities = V4L2_CAP_VIDEO_CAPTURE |
-                               V4L2_CAP_STREAMING |
-                               V4L2_CAP_VIDEO_OUTPUT;
+           V4L2_CAP_STREAMING | V4L2_CAP_VIDEO_OUTPUT;
 
        return ret;
 }