Text  |   XML   |   Visible Warnings:

pvm3.4.6 : pvm3.4.6 analysis 2 : Null Pointer Dereference  at tdpro.c:1581

Categories: LANG.MEM.NPD CWE:476
Warning ID: 292.28967
Procedure: tm_task
Trace: view
Modified: Thu Nov 26 11:29:17 2009   show details
 
Priority: None
State: None
Finding: None
Owner: None
  edit properties

Legend [ X ]
Warning Location
Contributes
Parse Error
Other Warning
Two or More Loop Iterations
On Execution Path
Comment
Macro
Preprocessor
Include
Keyword
Preprocessed Away

Source  |  Language: C Hide Legend     
ProblemLineSource
   /kat0/fletcher/SATE/2010/pvm3/src/tdpro.c
   Enter tm_task
 1548 tm_task(tp, mp) 
 1549         struct task *tp;
 1550         struct pmsg *mp;
 1551 {
 1552         int where;
 1553         struct pmsg *mp2;
 1554         struct waitc *wp;
 1555         struct waitc *wp2 = 0;  /* master waitc of peer group */ 
 1556         int hh;
 1557         struct hostd *hp;
 1558  
 1559         if (upkuint(mp, &where)) {
 1560                 pvmlogerror("tm_task() bad msg format\n");
 1561                 return 0;
 1562         }
 1563  
 1564         mp = replymessage(mp);
 1565         mp->m_dst = tp->t_tid;   /* Null Pointer Dereference (ID: 294.28969) */
 1566         mp->m_tag = TM_TASK;
 1567  
 1568         if (where) {            /* specific host or task requested */ 
 1569                 if (!(hp = tidtohost(hosts, where))) {
 1570                         pkint(mp, PvmNoHost);
 1571                         sendmessage(mp);
 1572                         return 0;
 1573                 }
 1574                 pkint(mp, 0);
 1575                 wp = wait_new(WT_TASK);
 1576                 wp->wa_mesg = mp;
 1577                 wp->wa_tid = tp->t_tid;
 1578                 wp->wa_on = hp->hd_hostpart;
 1579  
true1580                 mp = mesg_new(0);
mp <= 40951581                 mp->m_tag = DM_TASK;     /* Null Pointer Dereference */
Preconditions
&$unknown_959192 != 0
hosts->ht_last >= 1
waitlist->wa_wid <= widbase
waitlist->wa_link != waitlist
numfrags = 0
numpmsgs = 1
widrange <= lastwid
Postconditions
freepmsgs.m_link->m_link->m_rlink' = freepmsgs.m_link->m_rlink
((char*)**$unknown_959195)[4]' = &$heap_333289
freepmsgs.m_link->m_rlink->m_link' = freepmsgs.m_link->m_link
((char*)$unknown_959190)[4]' = &$unknown_959191
$unknown_959191' = &freefrags.fr_link
((char*)&$unknown_959191)[4]' = ((char*)&$unknown_959190)[4]
errno' != 0
freefrags.fr_link' = &$unknown_959191 - 48
freefrags.fr_rlink' = &$unknown_959191
freepmsgs.m_link' = &freepmsgs.m_link
freepmsgs.m_rlink' = &freepmsgs.m_link
bytes_after(&$heap_333289)' = 48
$heap_333289' is allocated by malloc
$heap_333289' is allocated
bytes_before(&$heap_333289)' = 0
((char*)&$heap_333289)[20]' = tp->t_tid
((char*)&$heap_333289)[24]' = 0
((char*)&$heap_333289)[32]' = &$heap_333289
((char*)&$heap_333289)[36]' = freepmsgs.m_link
((char*)&$heap_333289)[40]' = 0
((char*)&$heap_333289)[4]' = ((char*)*$unknown_959195)[4]
((char*)&$heap_333289)[44]' = 0
((char*)&$heap_333289)[8]' = widbase + 1
((char*)&$heap_333289)[12]' = 4
hp' = &$unknown_959193
lastwid' = 1
mp' = 0
numfrags' = 499
numpmsgs' = numpmsgs - 1
where' = &$unknown_959192
wp' = &$heap_333289
wp2' = 0




Change Warning 292.28967 : Null Pointer Dereference

Priority:
State:
Finding:
Owner:
Note: