Text   |  XML   |  ReML   |   Visible Warnings:

Null Test After Dereference  at packet-dcom-cba-acco.c:952

No properties have been set. | edit properties
Jump to warning location ↓ warning details...
Show Events | Options

cba_connection_connect

(/home/sate/Testcases/c/cve/wireshark-1.2.0/plugins/profinet/packet-dcom-cba-acco.c)expand/collapse
Show more  
 900  static cba_connection_t *
 901  cba_connection_connect(packet_info *pinfo, cba_ldev_t *cons_ldev, cba_ldev_t *prov_ldev, cba_frame_t *cons_frame,  
 902                     guint16 qostype, guint16 qosvalue, const char *provitem, guint32 consid, guint16 length,
 903                     guint16 *typedesc, guint16 typedesclen)
 904  {
 905      GList *cba_iter;
 906      cba_connection_t *conn;
 907   
 908   
 909      /* find connection */
 910      if(cons_frame != NULL) {
 911          /* SRT: search in frame */
 912          for(cba_iter = cons_frame->conns; cba_iter != NULL; cba_iter = g_list_next(cba_iter)) {
 913              conn = cba_iter->data;
 914              if(conn->consid == consid) {
 915                  return conn;
 916              }
 917          }
 918      } else {
 919          /* DCOM: search in ldev */
 920          for(cba_iter = cons_ldev->consconns; cba_iter != NULL; cba_iter = g_list_next(cba_iter)) {
 921              conn = cba_iter->data;
 922              if( conn->consid == consid &&  
 923                  cba_packet_in_range(pinfo, conn->packet_connect, conn->packet_disconnect, conn->packet_disconnectme)) {
 924                  return conn;
 925              }
 926          }
 927      }
 928   
 929      conn = se_alloc(sizeof(cba_connection_t));
 930   
 931      conn->consparentacco = cons_ldev;
 932      conn->provparentacco = prov_ldev;
 933      conn->parentframe = cons_frame;
 934   
 935      conn->packet_connect = pinfo->fd->num;
 936      conn->packet_disconnect = 0;
 937      conn->packet_disconnectme = 0;
 938      conn->packet_first = 0;
 939      conn->packet_last = 0;
 940   
 941      conn->consid = consid;
 942      conn->provitem = se_strdup(provitem);
 943      conn->typedesclen = typedesclen;
 944      conn->typedesc = typedesc;
 945      conn->qostype = qostype;
 946      conn->qosvalue = qosvalue;
 947      conn->length = length;
 948   
 949      conn->provid = 0;
 950      conn->connret = -1;
 951   
 952      if(cons_frame != NULL) {
 953          conn->frame_offset = cons_frame->offset;
 954          conn->length = length;
 955          cons_frame->offset += length;
 956          cons_frame->conns = g_list_append(cons_frame->conns, conn);
 957      } else {
 958          conn->frame_offset = 0;
 959          cons_ldev->consconns = g_list_append(cons_ldev->consconns, conn);
 960          prov_ldev->provconns = g_list_append(prov_ldev->provconns, conn);
 961      }
 962   
 963      return conn;
 964  }
Show more  




Change Warning 12295.30638 : Null Test After Dereference

Priority:
State:
Finding:
Owner:
Note: