mirror of
https://github.com/X11Libre/xf86-video-v4l.git
synced 2026-03-24 01:25:19 +00:00
Ensure the device name is null-terminated
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 <peter.hutterer@who-t.net> Reviewed-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user