#4252 closed defect (fixed)

grtc.c: Dereference before null check error spotted by Coverity

Reported by: Ryan Long Owned by: Ryan Long <ryan.long@…>
Priority: normal Milestone: 6.1
Component: bsps Version: 6
Severity: normal Keywords:
Cc: Blocked By:
Blocking:

Description

CID 1399840: Dereference before null check in grtc_ioctl().

1534        rtems_libio_ioctl_args_t *ioarg = (rtems_libio_ioctl_args_t *)arg;
    deref_ptr: Directly dereferencing pointer ioarg.
1535        unsigned int *data = ioarg->buffer;
1536        int status,frm_len,i,ret;
1537        struct grtc_ioc_buf_params *buf_arg;
1538        struct grtc_ioc_config *cfg;
1539        struct grtc_ioc_hw_status *hwregs;
1540        struct grtc_ioc_pools_setup *pocfg;
1541        struct grtc_ioc_assign_frm_pool *poassign;
1542        struct grtc_frame *frm, *frms;
1543        struct grtc_frame_pool *pool;
1544        struct grtc_list *frmlist;
1545        struct grtc_ioc_stats *stats;
1546        unsigned int mem;
1547        IRQ_LOCAL_DECLARE(oldLevel);
1548
1549        FUNCDBG();
1550
1551        if ( drvmgr_get_dev(&grtc_drv_info.general, minor, &dev) ) {
1552                return RTEMS_INVALID_NUMBER;
1553        }
1554        pDev = (struct grtc_priv *)dev->priv;
1555
    CID 1399840 (#1 of 1): Dereference before null check (REVERSE_INULL)check_after_deref: Null-checking ioarg suggests that it may be null, but it has already been dereferenced on all paths leading to the check.
1556        if (!ioarg)

Change History (1)

comment:1 Changed on 02/19/21 at 20:06:20 by Ryan Long <ryan.long@…>

Owner: set to Ryan Long <ryan.long@…>
Resolution: fixed
Status: newclosed

In 1fd56a96/rtems:

grtc.c: Fix Dereference before null check (CID #1399840)

CID 1399840: Dereference before null check in grtc_ioctl().

Closes #4252

Note: See TracTickets for help on using tickets.