Text  |   XML   |   Visible Warnings:

pvm3.4.6 : pvm3.4.6 analysis 2 : Null Pointer Dereference  at hoster.c:401

Categories: LANG.MEM.NPD CWE:476
Warning ID: 22038.28699
Procedure: hoster
Trace: view
Modified: Thu Nov 26 11:27:29 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/hoster.c
   Enter hoster
 348 hoster(mp) 
 349         struct pmsg *mp;
 350 {
 351         struct pmsg *mp2;
 352         int num;
 353         int i;
 354         struct hst **hostlist;
 355         struct hst *hp;
 356         char *p;
 357  
 358         /*
 359         * unpack the startup message 
 360         */ 
 361  
 362         upkint(mp, &num);
 363         if (pvmdebmask & PDMSTARTUP) {
 364                 pvmlogprintf("hoster() %d to start\n", num);
 365         }
 366         if (num > 0) {
 367                 hostlist = TALLOC(num, struct hst *, "hsts");   /* Integer Overflow of Allocation Size (ID: 104.28706) */
 368                 for (i = 0; i < num; i++) {
 369                         hp = TALLOC(1, struct hst, "hst");
 370                         hostlist[i] = hp;   /* Null Pointer Dereference (ID: 103.28705) */
 371                         hp->h_flag = 0;   /* Null Pointer Dereference (ID: 102.28704) */
 372                         hp->h_result = 0;
 373                         if (upkint(mp, &hp->h_tid) 
 374                         || upkstralloc(mp, &hp->h_sopts) 
 375                         || upkstralloc(mp, &hp->) 
 376                         || upkstralloc(mp, &hp->h_cmd) 
 377                         || upkstralloc(mp, &hp->h_wincmd) 
 378                         || upkstralloc(mp, &hp->h_vmid)) {
 379                                 pvmlogerror("hoster() bad message format\n");
 380                                 pvmbailout(0);
 381                         }
 382                         /* Check for (possible) alternate WIN32 pvmd cmd */ 
 383                         if (!strcmp(hp->h_wincmd,"")) {   /* Null Pointer Dereference (ID: 22042.28703) */
 384                                 PVM_FREE(hp->h_wincmd);
 385                                 hp->h_wincmd = 0;
 386                         }
 387                         /* Check for (optional) virtual machine ID */ 
 388                         if (!strcmp(hp->h_vmid,"")) {   /* Null Pointer Dereference (ID: 22041.28702) */
 389                                 PVM_FREE(hp->h_vmid);
 390                                 hp->h_vmid = 0;
 391                         }
 392                         if (pvmdebmask & PDMSTARTUP) {
 393                                 pvmlogprintf("%d. t%x %s so=\"%s\"\n", i,
 394                                                 hp->h_tid,
 395                                                 hp->,
 396                                                 hp->h_sopts);
 397                         }
 398                         if (p = CINDEX(hp->, '@')) {   /* Null Pointer Dereference (ID: 22040.28701) */
 399                                 hp->h_name = STRALLOC(p + 1);   /* Null Pointer Dereference (ID: 22039.28700) */
 400                                 *p = 0;
true401                                 p = STRALLOC(hp->);     /* Null Pointer Dereference */
Preconditions
&$unknown_267238 >= 1
&$unknown_267240 >= 1
&$unknown_267242 >= 1
&$unknown_267244 >= 1
&$unknown_267246 >= 1
strlen(&$heap_9991) >= 1
$heap_9993 <= 0
Postconditions
atnewline' = 0
errno' != 0
$heap_9988' = &$heap_9989
bytes_after(&$heap_9988)' = 4 * &$unknown_267238
$heap_9988' is allocated by malloc
$heap_9988' is allocated
bytes_before(&$heap_9988)' = 0
bytes_after(&$heap_9989)' = 36
$heap_9989' is allocated by malloc
bytes_before(&$heap_9989)' = 0
((char*)&$heap_9989)[16]' = 0
((char*)&$heap_9989)[20]' = &$heap_9992
((char*)&$heap_9989)[24]' = &$heap_9993
((char*)&$heap_9989)[28]' = 0
((char*)&$heap_9989)[32]' = 0
((char*)&$heap_9989)[4]' = &$heap_9995
((char*)&$heap_9989)[8]' = &$heap_9991
((char*)&$heap_9989)[12]' = &$heap_9990
bytes_after(&$heap_9990)' = &$unknown_267240
$heap_9990' is allocated by malloc
bytes_before(&$heap_9990)' = 0
$heap_9991' = 0
bytes_after(&$heap_9991)' = &$unknown_267242
$heap_9991' is allocated by malloc
bytes_before(&$heap_9991)' = 0
strlen(&$heap_9991)' = 0
bytes_after(&$heap_9992)' = &$unknown_267244
$heap_9992' is allocated by malloc
bytes_before(&$heap_9992)' = 0
bytes_after(&$heap_9993)' = &$unknown_267246
$heap_9993' is allocated by malloc
bytes_before(&$heap_9993)' = 0
bytes_after(&$heap_9995)' = strlen(&$heap_9991)
$heap_9995' is allocated by malloc
$heap_9995' is allocated
bytes_before(&$heap_9995)' = 0
strlen(&$heap_9995)' = strlen(&$heap_9991) - 1
hostlist' = &$heap_9988
hp' = &$heap_9989
i' = 0
num' = &$unknown_267238
p' = &$heap_9991
tmbuf.tm_sec' = &$unknown_267250




Change Warning 22038.28699 : Null Pointer Dereference

Priority:
State:
Finding:
Owner:
Note: