Re: [PATCH xf86-video-v4l 1/4] Remove unused variable osname

2018-10-07 Thread Dave Airlie
yay, for all 4.

Reviewed-by: Dave Airlie 
On Mon, 8 Oct 2018 at 13:20, Peter Hutterer  wrote:
>
> Coverity is unhappy and there's enough unhappiness in this world already, so
> let's go for the low-hanging fruit.
>
> Signed-off-by: Peter Hutterer 
> ---
>  src/v4l.c | 1 -
>  1 file changed, 1 deletion(-)
>
> diff --git a/src/v4l.c b/src/v4l.c
> index 8db8f7d..0f1058e 100644
> --- a/src/v4l.c
> +++ b/src/v4l.c
> @@ -86,7 +86,6 @@ _X_EXPORT XF86ModuleData v4lModuleData = { &v4lVersRec, 
> v4lSetup, NULL };
>  static pointer
>  v4lSetup(pointer module, pointer opts, int *errmaj, int *errmin)
>  {
> -const char *osname;
>  static Bool setupDone = FALSE;
>
>  if (setupDone) {
> --
> 2.17.1
>
> ___
> xorg-devel@lists.x.org: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: https://lists.x.org/mailman/listinfo/xorg-devel
___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel

[PATCH xf86-video-v4l 4/4] Fix ioctl return value handling

2018-10-07 Thread Peter Hutterer
Found by coverity

Signed-off-by: Peter Hutterer 
---
 src/v4l.c | 15 +--
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/src/v4l.c b/src/v4l.c
index 8c2408c..9c6fabe 100644
--- a/src/v4l.c
+++ b/src/v4l.c
@@ -769,12 +769,15 @@ V4lSetPortAttribute(ScrnInfoPtr pScrn,
 } else if (attribute == xvFreq) {
 struct v4l2_frequency   freq;
 memset(&freq, 0, sizeof(freq));
-ioctl(V4L_FD, VIDIOC_G_FREQUENCY, &freq);
-freq.frequency = value;
-if (ioctl(V4L_FD, VIDIOC_S_FREQUENCY, &freq) == -1)
-xf86Msg(X_ERROR, "v4l: Error %d while setting frequency\n", errno);
-else
-ret = Success;
+if (ioctl(V4L_FD, VIDIOC_G_FREQUENCY, &freq) == -1) {
+xf86Msg(X_ERROR, "v4l: Error %d while getting frequency\n", errno);
+} else {
+freq.frequency = value;
+if (ioctl(V4L_FD, VIDIOC_S_FREQUENCY, &freq) == -1)
+xf86Msg(X_ERROR, "v4l: Error %d while setting frequency\n", 
errno);
+else
+ret = Success;
+}
 } else {
 for (i = 0; i < pPPriv->n_qctrl; i++)
 if (pPPriv->XvV4LCtrl[i].xv == attribute)
-- 
2.17.1

___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel

[PATCH xf86-video-v4l 3/4] Fix handling of realloc failure

2018-10-07 Thread Peter Hutterer
Coverity complaint and whatnot

Signed-off-by: Peter Hutterer 
---
 src/v4l.c | 7 ++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/v4l.c b/src/v4l.c
index 583c7b8..8c2408c 100644
--- a/src/v4l.c
+++ b/src/v4l.c
@@ -1120,6 +1120,7 @@ V4LInit(ScrnInfoPtr pScrn, XF86VideoAdaptorPtr **adaptors)
 XF86VideoAdaptorPtr *VAR = NULL;
 char dev[18];
 int  fd,i,j,d;
+void *tmp;
 
 for (i = 0, d = 0; d < MAX_V4L_DEVICES; d++) {
 sprintf(dev, "/dev/video%d", d);
@@ -1164,7 +1165,11 @@ V4LInit(ScrnInfoPtr pScrn, XF86VideoAdaptorPtr 
**adaptors)
 return FALSE;
 
 /* alloc VideoAdaptorRec */
-VAR = realloc(VAR,sizeof(XF86VideoAdaptorPtr)*(i+1));
+tmp = realloc(VAR,sizeof(XF86VideoAdaptorPtr)*(i+1));
+if (!tmp)
+return FALSE;
+VAR = tmp;
+
 VAR[i] = malloc(sizeof(XF86VideoAdaptorRec));
 if (!VAR[i])
 return FALSE;
-- 
2.17.1

___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel

[PATCH xf86-video-v4l 2/4] Ensure the device name is null-terminated

2018-10-07 Thread Peter Hutterer
And expand the size to 18, because the stack array we copied this into is 18
bytes long. This covers us for up to 999 (kernel) v4l devices and that is
definitely not a reason to use the "640k ought to be enough" meme.

Found by - you guessed it - coverity!

Signed-off-by: Peter Hutterer 
---
 src/v4l.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/v4l.c b/src/v4l.c
index 0f1058e..583c7b8 100644
--- a/src/v4l.c
+++ b/src/v4l.c
@@ -188,7 +188,7 @@ static const XF86AttributeRec FreqAttr =
 static struct V4L_DEVICE {
 int  fd;
 int  useCount;
-char devName[16];
+char devName[18];
 } v4l_devices[MAX_V4L_DEVICES] = {
 { -1 },
 { -1 },
@@ -1157,7 +1157,8 @@ V4LInit(ScrnInfoPtr pScrn, XF86VideoAdaptorPtr **adaptors)
 }
 
 xf86Msg(X_INFO, "v4l: enabling overlay mode for %s.\n", dev);
-strncpy(V4L_NAME, dev, 16);
+strncpy(V4L_NAME, dev, 18);
+V4L_NAME[17] = '\0';
 V4LBuildEncodings(pPPriv, fd);
 if (NULL == pPPriv->enc)
 return FALSE;
-- 
2.17.1

___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel

[PATCH xf86-video-v4l 1/4] Remove unused variable osname

2018-10-07 Thread Peter Hutterer
Coverity is unhappy and there's enough unhappiness in this world already, so
let's go for the low-hanging fruit.

Signed-off-by: Peter Hutterer 
---
 src/v4l.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/v4l.c b/src/v4l.c
index 8db8f7d..0f1058e 100644
--- a/src/v4l.c
+++ b/src/v4l.c
@@ -86,7 +86,6 @@ _X_EXPORT XF86ModuleData v4lModuleData = { &v4lVersRec, 
v4lSetup, NULL };
 static pointer
 v4lSetup(pointer module, pointer opts, int *errmaj, int *errmin)
 {
-const char *osname;
 static Bool setupDone = FALSE;
 
 if (setupDone) {
-- 
2.17.1

___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel