Return-Path: X-Original-To: apmail-cloudstack-dev-archive@www.apache.org Delivered-To: apmail-cloudstack-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 482E318644 for ; Fri, 8 May 2015 23:38:24 +0000 (UTC) Received: (qmail 931 invoked by uid 500); 8 May 2015 23:38:23 -0000 Delivered-To: apmail-cloudstack-dev-archive@cloudstack.apache.org Received: (qmail 862 invoked by uid 500); 8 May 2015 23:38:23 -0000 Mailing-List: contact dev-help@cloudstack.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cloudstack.apache.org Delivered-To: mailing list dev@cloudstack.apache.org Delivered-To: moderator for dev@cloudstack.apache.org Received: (qmail 99451 invoked by uid 99); 8 May 2015 19:21:42 -0000 X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 3.301 X-Spam-Level: *** X-Spam-Status: No, score=3.301 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, RDNS_NONE=2.5, URIBL_BLOCKED=0.001] autolearn=disabled Date: Fri, 08 May 2015 12:21:10 -0700 From: scan-admin@coverity.com To: dev@cloudstack.apache.org Message-ID: <554d0ca63db1c_53019df3283142@scan.coverity.com.mail> Subject: New Defects reported by Coverity Scan for cloudstack Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 08 May 2015 19:20:00.0113 (UTC) FILETIME=[FA162E10:01D089C3] Hi, Please find the latest report on new defect(s) introduced to cloudstack found with Coverity Scan. 300 new defect(s) introduced to cloudstack found with Coverity Scan. 70 defect(s), reported by Coverity Scan earlier, were marked fixed in the recent build analyzed by Coverity Scan. New defect(s) Reported-by: Coverity Scan Showing 20 of 300 defect(s) ** CID 1012179: FindBugs: Dodgy code (FB.URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD) /plugins/hypervisors/ovm/src/com/cloud/ovm/object/Test.java: 79 in () ________________________________________________________________________________________________________ *** CID 1012179: FindBugs: Dodgy code (FB.URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD) /plugins/hypervisors/ovm/src/com/cloud/ovm/object/Test.java: 79 in () 73 vm.disks.add(dataDisk); 74 vm.disks.add(dataDisk); 75 vm.disks.add(dataDisk); 76 OvmVif.Details vif = new OvmVif.Details(); 77 vif.mac = "00:ff:ff:ff:ff:ee"; 78 vif.bridge = "xenbr0"; >>> CID 1012179: FindBugs: Dodgy code (FB.URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD) >>> Unread public/protected field: com.cloud.ovm.object.OvmVif$Details.type 79 vif.type = OvmVif.NETFRONT; 80 vm.vifs.add(vif); 81 vm.vifs.add(vif); 82 vm.vifs.add(vif); 83 vm.vifs.add(vif); 84 vm.vifs.add(vif); ** CID 1114588: Concurrent data access violations (ATOMICITY) /services/console-proxy/server/src/com/cloud/consoleproxy/ConsoleProxyGCThread.java: 80 in com.cloud.consoleproxy.ConsoleProxyGCThread.run()() ________________________________________________________________________________________________________ *** CID 1114588: Concurrent data access violations (ATOMICITY) /services/console-proxy/server/src/com/cloud/consoleproxy/ConsoleProxyGCThread.java: 80 in com.cloud.consoleproxy.ConsoleProxyGCThread.run()() 74 Enumeration e = connMap.keys(); 75 while (e.hasMoreElements()) { 76 String key; 77 ConsoleProxyClient client; 78 79 synchronized (connMap) { >>> CID 1114588: Concurrent data access violations (ATOMICITY) >>> Using an unreliable value of "e" inside the second locked section. If the data that "e" depends on was changed by another thread, this use might be incorrect. 80 key = e.nextElement(); 81 client = connMap.get(key); 82 } 83 84 long seconds_unused = (System.currentTimeMillis() - client.getClientLastFrontEndActivityTime()) / 1000; 85 if (seconds_unused < MAX_SESSION_IDLE_SECONDS) { ** CID 1114589: Concurrent data access violations (ATOMICITY) /services/console-proxy/server/src/com/cloud/consoleproxy/ConsoleProxyClientStatsCollector.java: 58 in com.cloud.consoleproxy.ConsoleProxyClientStatsCollector.setConnections(java.util.Hashtable)() ________________________________________________________________________________________________________ *** CID 1114589: Concurrent data access violations (ATOMICITY) /services/console-proxy/server/src/com/cloud/consoleproxy/ConsoleProxyClientStatsCollector.java: 58 in com.cloud.consoleproxy.ConsoleProxyClientStatsCollector.setConnections(java.util.Hashtable)() 52 private void setConnections(Hashtable connMap) { 53 54 ArrayList conns = new ArrayList(); 55 Enumeration e = connMap.keys(); 56 while (e.hasMoreElements()) { 57 synchronized (connMap) { >>> CID 1114589: Concurrent data access violations (ATOMICITY) >>> Using an unreliable value of "e" inside the second locked section. If the data that "e" depends on was changed by another thread, this use might be incorrect. 58 String key = e.nextElement(); 59 ConsoleProxyClient client = connMap.get(key); 60 61 ConsoleProxyConnection conn = new ConsoleProxyConnection(); 62 63 conn.id = client.getClientId(); ** CID 1114594: Class hierarchy inconsistencies (CALL_SUPER) /server/src/com/cloud/hypervisor/kvm/discoverer/LibvirtServerDiscoverer.java: 284 in com.cloud.hypervisor.kvm.discoverer.LibvirtServerDiscoverer.configure(java.lang.String, java.util.Map)() ________________________________________________________________________________________________________ *** CID 1114594: Class hierarchy inconsistencies (CALL_SUPER) /server/src/com/cloud/hypervisor/kvm/discoverer/LibvirtServerDiscoverer.java: 284 in com.cloud.hypervisor.kvm.discoverer.LibvirtServerDiscoverer.configure(java.lang.String, java.util.Map)() 278 } else { 279 return null; 280 } 281 } 282 283 @Override >>> CID 1114594: Class hierarchy inconsistencies (CALL_SUPER) >>> Missing call to "com.cloud.resource.DiscovererBase.configure(java.lang.String, java.util.Map)" (as is done elsewhere 6 out of 7 times). 284 public boolean configure(String name, Map params) throws ConfigurationException { 285 // _setupAgentPath = Script.findScript(getPatchPath(), 286 // "setup_agent.sh"); 287 _kvmPrivateNic = _configDao.getValue(Config.KvmPrivateNetwork.key()); 288 if (_kvmPrivateNic == null) { 289 _kvmPrivateNic = "cloudbr0"; ** CID 1114638: (FORWARD_NULL) /services/console-proxy/server/src/com/cloud/consoleproxy/ConsoleProxy.java: 303 in com.cloud.consoleproxy.ConsoleProxy.startWithContext(java.util.Properties, java.lang.Object, byte[], java.lang.String)() /services/console-proxy/server/src/com/cloud/consoleproxy/ConsoleProxy.java: 254 in com.cloud.consoleproxy.ConsoleProxy.startWithContext(java.util.Properties, java.lang.Object, byte[], java.lang.String)() ________________________________________________________________________________________________________ *** CID 1114638: (FORWARD_NULL) /services/console-proxy/server/src/com/cloud/consoleproxy/ConsoleProxy.java: 303 in com.cloud.consoleproxy.ConsoleProxy.startWithContext(java.util.Properties, java.lang.Object, byte[], java.lang.String)() 297 try { 298 props.load(confs); 299 300 for (Object key : props.keySet()) { 301 // give properties passed via context high priority, treat properties from consoleproxy.properties 302 // as default values >>> CID 1114638: (FORWARD_NULL) >>> Calling a method on null object "conf". 303 if (conf.get(key) == null) 304 conf.put(key, props.get(key)); 305 } 306 } catch (Exception e) { 307 s_logger.error(e.toString(), e); 308 } /services/console-proxy/server/src/com/cloud/consoleproxy/ConsoleProxy.java: 254 in com.cloud.consoleproxy.ConsoleProxy.startWithContext(java.util.Properties, java.lang.Object, byte[], java.lang.String)() 248 s_logger.warn("Unable to find ensureRoute method, console proxy agent is not up to date"); 249 } 250 } 251 252 public static void startWithContext(Properties conf, Object context, byte[] ksBits, String ksPassword) { 253 s_logger.info("Start console proxy with context"); >>> CID 1114638: (FORWARD_NULL) >>> Comparing "conf" to null implies that "conf" might be null. 254 if (conf != null) { 255 for (Object key : conf.keySet()) { 256 s_logger.info("Context property " + (String)key + ": " + conf.getProperty((String)key)); 257 } 258 } 259 ** CID 1114644: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/S3RestServlet.java: 555 in com.cloud.bridge.service.S3RestServlet.processDimeRequest(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)() ________________________________________________________________________________________________________ *** CID 1114644: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/S3RestServlet.java: 555 in com.cloud.bridge.service.S3RestServlet.processDimeRequest(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)() 549 InputStream is = ds.getInputStream(); 550 putRequest.setData(is); 551 } 552 553 // -> need to do SOAP level auth here, on failure return the SOAP fault 554 StringBuffer xml = new StringBuffer(); >>> CID 1114644: Null pointer dereferences (FORWARD_NULL) >>> Calling a method on null object "putRequest". 555 String AWSAccessKey = putRequest.getAccessKey(); 556 UserInfo info = ServiceProvider.getInstance().getUserInfo(AWSAccessKey); 557 try { 558 S3SoapAuth.verifySignature(putRequest.getSignature(), "PutObject", putRequest.getRawTimestamp(), AWSAccessKey, info.getSecretKey()); 559 560 } catch (AxisFault e) { ** CID 1114649: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/controller/s3/S3ObjectAction.java: 558 in com.cloud.bridge.service.controller.s3.S3ObjectAction.executePostObject(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)() ________________________________________________________________________________________________________ *** CID 1114649: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/controller/s3/S3ObjectAction.java: 558 in com.cloud.bridge.service.controller.s3.S3ObjectAction.executePostObject(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)() 552 // -> this is the header data 553 if (0 < temp.length()) { 554 value = temp.toString().trim(); 555 temp.setLength(0); 556 //System.out.println( "param: " + name + " = " + value ); 557 >>> CID 1114649: Null pointer dereferences (FORWARD_NULL) >>> Calling a method on null object "name". 558 if (name.equalsIgnoreCase("key")) { 559 engineRequest.setKey(value); 560 } else if (name.equalsIgnoreCase("x-amz-acl")) { 561 engineRequest.setCannedAccess(value); 562 } else if (isMetaTag) { 563 S3MetaDataEntry oneMeta = new S3MetaDataEntry(); ** CID 1114661: Null pointer dereferences (FORWARD_NULL) /server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java: 344 in com.cloud.storage.snapshot.SnapshotManagerImpl.backupSnapshot(java.lang.Long)() ________________________________________________________________________________________________________ *** CID 1114661: Null pointer dereferences (FORWARD_NULL) /server/src/com/cloud/storage/snapshot/SnapshotManagerImpl.java: 344 in com.cloud.storage.snapshot.SnapshotManagerImpl.backupSnapshot(java.lang.Long)() 338 return snapshot; 339 } 340 341 @Override 342 public Snapshot backupSnapshot(Long snapshotId) { 343 SnapshotInfo snapshot = snapshotFactory.getSnapshot(snapshotId, DataStoreRole.Image); >>> CID 1114661: Null pointer dereferences (FORWARD_NULL) >>> Comparing "snapshot" to null implies that "snapshot" might be null. 344 if (snapshot != null) { 345 throw new CloudRuntimeException("Already in the backup snapshot:" + snapshotId); 346 } 347 348 return snapshotSrv.backupSnapshot(snapshot); 349 } ** CID 1114663: Null pointer dereferences (FORWARD_NULL) /engine/storage/src/org/apache/cloudstack/storage/endpoint/DefaultEndPointSelector.java: 147 in org.apache.cloudstack.storage.endpoint.DefaultEndPointSelector.findEndPointForImageMove(org.apache.cloudstack.engine.subsystem.api.storage.DataStore, org.apache.cloudstack.engine.subsystem.api.storage.DataStore)() ________________________________________________________________________________________________________ *** CID 1114663: Null pointer dereferences (FORWARD_NULL) /engine/storage/src/org/apache/cloudstack/storage/endpoint/DefaultEndPointSelector.java: 147 in org.apache.cloudstack.storage.endpoint.DefaultEndPointSelector.findEndPointForImageMove(org.apache.cloudstack.engine.subsystem.api.storage.DataStore, org.apache.cloudstack.engine.subsystem.api.storage.DataStore)() 141 142 protected EndPoint findEndPointForImageMove(DataStore srcStore, DataStore destStore) { 143 // find any xenserver/kvm host in the scope 144 Scope srcScope = srcStore.getScope(); 145 Scope destScope = destStore.getScope(); 146 Scope selectedScope = null; >>> CID 1114663: Null pointer dereferences (FORWARD_NULL) >>> Assigning: "poolId" = "null". 147 Long poolId = null; 148 149 // assumption, at least one of scope should be zone, find the least 150 // scope 151 if (srcScope.getScopeType() != ScopeType.ZONE) { 152 selectedScope = srcScope; ** CID 1114666: Null pointer dereferences (FORWARD_NULL) ________________________________________________________________________________________________________ *** CID 1114666: Null pointer dereferences (FORWARD_NULL) /engine/storage/src/org/apache/cloudstack/storage/datastore/DataObjectManagerImpl.java: 322 in org.apache.cloudstack.storage.datastore.DataObjectManagerImpl.deleteAsync(org.apache.cloudstack.engine.subsystem.api.storage.DataObject, org.apache.cloudstack.framework.async.AsyncCompletionCallback)() 316 CreateCmdResult res = new CreateCmdResult(null, null); 317 callback.complete(res); 318 } 319 320 DeleteContext context = new DeleteContext(callback, data); 321 AsyncCallbackDispatcher caller = AsyncCallbackDispatcher.create(this); >>> CID 1114666: Null pointer dereferences (FORWARD_NULL) >>> Passing "null" to function "org.apache.cloudstack.storage.datastore.DataObjectManagerImpl.deleteAsynCallback(org.apache.cloudstack.framework.async.AsyncCallbackDispatcher, org.apache.cloudstack.storage.datastore.DataObjectManagerImpl.DeleteContext)", which dereferences it. 322 caller.setCallback(caller.getTarget().deleteAsynCallback(null, null)).setContext(context); 323 324 data.getDataStore().getDriver().deleteAsync(data.getDataStore(), data, caller); 325 return; 326 } 327 ** CID 1114667: Null pointer dereferences (FORWARD_NULL) ________________________________________________________________________________________________________ *** CID 1114667: Null pointer dereferences (FORWARD_NULL) /engine/storage/src/org/apache/cloudstack/storage/datastore/DataObjectManagerImpl.java: 246 in org.apache.cloudstack.storage.datastore.DataObjectManagerImpl.copyAsync(org.apache.cloudstack.engine.subsystem.api.storage.DataObject, org.apache.cloudstack.engine.subsystem.api.storage.DataObject, org.apache.cloudstack.framework.async.AsyncCompletionCallback)() 240 res.setResult("Failed to change state: " + e.toString()); 241 callback.complete(res); 242 } 243 244 CopyContext anotherCall = new CopyContext(callback, srcData, destData); 245 AsyncCallbackDispatcher caller = AsyncCallbackDispatcher.create(this); >>> CID 1114667: Null pointer dereferences (FORWARD_NULL) >>> Passing "null" to function "org.apache.cloudstack.storage.datastore.DataObjectManagerImpl.copyCallback(org.apache.cloudstack.framework.async.AsyncCallbackDispatcher, org.apache.cloudstack.storage.datastore.DataObjectManagerImpl.CopyContext)", which dereferences it. 246 caller.setCallback(caller.getTarget().copyCallback(null, null)).setContext(anotherCall); 247 248 motionSrv.copyAsync(srcData, destData, caller); 249 } 250 251 protected Void copyCallback(AsyncCallbackDispatcher callback, CopyContext context) { ** CID 1114683: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/core/s3/S3Engine.java: 596 in com.cloud.bridge.service.core.s3.S3Engine.saveUploadPart(com.cloud.bridge.service.core.s3.S3PutObjectInlineRequest, int, int)() ________________________________________________________________________________________________________ *** CID 1114683: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/core/s3/S3Engine.java: 596 in com.cloud.bridge.service.core.s3.S3Engine.saveUploadPart(com.cloud.bridge.service.core.s3.S3PutObjectInlineRequest, int, int)() 590 if (bucket == null) { 591 logger.error("saveUploadedPart failed since " + bucketName + " does not exist"); 592 response.setResultCode(404); 593 } 594 S3PolicyContext context = new S3PolicyContext(PolicyActions.PutObject, bucketName); 595 context.setKeyName(request.getKey()); >>> CID 1114683: Null pointer dereferences (FORWARD_NULL) >>> Calling a method on null object "bucket". 596 verifyAccess(context, "SBucket", bucket.getId(), SAcl.PERMISSION_WRITE); 597 598 OrderedPair host_storagelocation_pair = getBucketStorageHost(bucket); 599 S3BucketAdapter bucketAdapter = getStorageHostBucketAdapter(host_storagelocation_pair.getFirst()); 600 String itemFileName = new String(uploadId + "-" + partNumber); 601 InputStream is = null; ** CID 1114684: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/core/s3/S3Engine.java: 556 in com.cloud.bridge.service.core.s3.S3Engine.initiateMultipartUpload(com.cloud.bridge.service.core.s3.S3PutObjectInlineRequest)() ________________________________________________________________________________________________________ *** CID 1114684: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/core/s3/S3Engine.java: 556 in com.cloud.bridge.service.core.s3.S3Engine.initiateMultipartUpload(com.cloud.bridge.service.core.s3.S3PutObjectInlineRequest)() 550 response.setResultCode(404); 551 } 552 553 S3PolicyContext context = new S3PolicyContext(PolicyActions.PutObject, bucketName); 554 context.setKeyName(nameKey); 555 context.setEvalParam(ConditionKeys.Acl, request.getCannedAccess()); >>> CID 1114684: Null pointer dereferences (FORWARD_NULL) >>> Calling a method on null object "bucket". 556 verifyAccess(context, "SBucket", bucket.getId(), SAcl.PERMISSION_WRITE); 557 558 createUploadFolder(bucketName); 559 560 try { 561 MultipartLoadDao uploadDao = new MultipartLoadDao(); ** CID 1114685: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/core/s3/S3Engine.java: 653 in com.cloud.bridge.service.core.s3.S3Engine.concatentateMultipartUploads(javax.servlet.http.HttpServletResponse, com.cloud.bridge.service.core.s3.S3PutObjectInlineRequest, com.cloud.bridge.service.core.s3.S3MultipartPart[], java.io.OutputStream)() ________________________________________________________________________________________________________ *** CID 1114685: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/core/s3/S3Engine.java: 653 in com.cloud.bridge.service.core.s3.S3Engine.concatentateMultipartUploads(javax.servlet.http.HttpServletResponse, com.cloud.bridge.service.core.s3.S3PutObjectInlineRequest, com.cloud.bridge.service.core.s3.S3MultipartPart[], java.io.OutputStream)() 647 S3PutObjectInlineResponse response = new S3PutObjectInlineResponse(); 648 String bucketName = request.getBucketName(); 649 String key = request.getKey(); 650 S3MetaDataEntry[] meta = request.getMetaEntries(); 651 652 SBucketVO bucket = bucketDao.getByName(bucketName); >>> CID 1114685: Null pointer dereferences (FORWARD_NULL) >>> Comparing "bucket" to null implies that "bucket" might be null. 653 if (bucket == null) { 654 logger.error("completeMultipartUpload( failed since " + bucketName + " does not exist"); 655 response.setResultCode(404); 656 } 657 658 // [B] Now we need to create the final re-assembled object ** CID 1114686: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/core/s3/S3Engine.java: 377 in com.cloud.bridge.service.core.s3.S3Engine.listBucketContents(com.cloud.bridge.service.core.s3.S3ListBucketRequest, boolean)() ________________________________________________________________________________________________________ *** CID 1114686: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/core/s3/S3Engine.java: 377 in com.cloud.bridge.service.core.s3.S3Engine.listBucketContents(com.cloud.bridge.service.core.s3.S3ListBucketRequest, boolean)() 371 372 response.setBucketName(bucketName); 373 response.setMarker(marker); 374 response.setMaxKeys(maxKeys); 375 response.setPrefix(prefix); 376 response.setDelimiter(delimiter); >>> CID 1114686: Null pointer dereferences (FORWARD_NULL) >>> Comparing "l" to null implies that "l" might be null. 377 if (null != l) { 378 response.setTruncated(l.size() > maxKeys); 379 if (l.size() > maxKeys) { 380 response.setNextMarker(l.get(l.size() - 1).getNameKey()); 381 } 382 } ** CID 1114691: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/core/s3/S3HostCallingFormat.java: 77 in com.cloud.bridge.service.core.s3.S3HostCallingFormat.pathArgsMapToString(java.util.Map)() ________________________________________________________________________________________________________ *** CID 1114691: Null pointer dereferences (FORWARD_NULL) /awsapi/src/com/cloud/bridge/service/core/s3/S3HostCallingFormat.java: 77 in com.cloud.bridge.service.core.s3.S3HostCallingFormat.pathArgsMapToString(java.util.Map)() 71 for (argumentIterator = pathArgs.keySet().iterator(); argumentIterator.hasNext();) { 72 argument = (String)argumentIterator.next(); 73 pathArgsString.append(firstArgPosition ? "?" : "&"); 74 firstArgPosition = false; 75 } 76 } >>> CID 1114691: Null pointer dereferences (FORWARD_NULL) >>> Calling a method on null object "pathArgs". 77 String argumentValue = (String)pathArgs.get(argument); 78 if (argumentValue != null) { 79 pathArgsString.append("="); 80 pathArgsString.append(argumentValue); 81 } 82 return pathArgsString.toString(); ** CID 1114884: Null pointer dereferences (FORWARD_NULL) /engine/orchestration/src/org/apache/cloudstack/engine/orchestration/NetworkOrchestrator.java: 738 in org.apache.cloudstack.engine.orchestration.NetworkOrchestrator$3.doInTransactionWithoutResult(com.cloud.utils.db.TransactionStatus)() ________________________________________________________________________________________________________ *** CID 1114884: Null pointer dereferences (FORWARD_NULL) /engine/orchestration/src/org/apache/cloudstack/engine/orchestration/NetworkOrchestrator.java: 738 in org.apache.cloudstack.engine.orchestration.NetworkOrchestrator$3.doInTransactionWithoutResult(com.cloud.utils.db.TransactionStatus)() 732 if (requestedProfiles.isEmpty()) { 733 requestedProfiles.add(null); 734 } 735 736 for (NicProfile requested : requestedProfiles) { 737 Boolean isDefaultNic = false; >>> CID 1114884: Null pointer dereferences (FORWARD_NULL) >>> Comparing "this.val$vm" to null implies that "this.val$vm" might be null. 738 if (vm != null && (requested != null && requested.isDefaultNic())) { 739 isDefaultNic = true; 740 } 741 742 while (deviceIds[deviceId] && deviceId < deviceIds.length) { 743 deviceId++; ** CID 1115080: (FORWARD_NULL) ________________________________________________________________________________________________________ *** CID 1115080: (FORWARD_NULL) /engine/storage/src/org/apache/cloudstack/storage/image/BaseImageStoreDriverImpl.java: 124 in org.apache.cloudstack.storage.image.BaseImageStoreDriverImpl.createAsync(org.apache.cloudstack.engine.subsystem.api.storage.DataStore, org.apache.cloudstack.engine.subsystem.api.storage.DataObject, org.apache.cloudstack.framework.async.AsyncCompletionCallback)() 118 @Override 119 public void createAsync(DataStore dataStore, DataObject data, AsyncCompletionCallback callback) { 120 CreateContext context = new CreateContext(callback, data); 121 AsyncCallbackDispatcher caller = AsyncCallbackDispatcher.create(this); 122 caller.setContext(context); 123 if (data.getType() == DataObjectType.TEMPLATE) { >>> CID 1115080: (FORWARD_NULL) >>> Passing "null" to function "org.apache.cloudstack.storage.image.BaseImageStoreDriverImpl.createTemplateAsyncCallback(org.apache.cloudstack.framework.async.AsyncCallbackDispatcher, org.apache.cloudstack.storage.image.BaseImageStoreDriverImpl.CreateContext)", which dereferences it. 124 caller.setCallback(caller.getTarget().createTemplateAsyncCallback(null, null)); 125 if (s_logger.isDebugEnabled()) { 126 s_logger.debug("Downloading template to data store " + dataStore.getId()); 127 } 128 _downloadMonitor.downloadTemplateToStorage(data, caller); 129 } else if (data.getType() == DataObjectType.VOLUME) { /engine/storage/src/org/apache/cloudstack/storage/image/BaseImageStoreDriverImpl.java: 130 in org.apache.cloudstack.storage.image.BaseImageStoreDriverImpl.createAsync(org.apache.cloudstack.engine.subsystem.api.storage.DataStore, org.apache.cloudstack.engine.subsystem.api.storage.DataObject, org.apache.cloudstack.framework.async.AsyncCompletionCallback)() 124 caller.setCallback(caller.getTarget().createTemplateAsyncCallback(null, null)); 125 if (s_logger.isDebugEnabled()) { 126 s_logger.debug("Downloading template to data store " + dataStore.getId()); 127 } 128 _downloadMonitor.downloadTemplateToStorage(data, caller); 129 } else if (data.getType() == DataObjectType.VOLUME) { >>> CID 1115080: (FORWARD_NULL) >>> Passing "null" to function "org.apache.cloudstack.storage.image.BaseImageStoreDriverImpl.createVolumeAsyncCallback(org.apache.cloudstack.framework.async.AsyncCallbackDispatcher, org.apache.cloudstack.storage.image.BaseImageStoreDriverImpl.CreateContext)", which dereferences it. 130 caller.setCallback(caller.getTarget().createVolumeAsyncCallback(null, null)); 131 if (s_logger.isDebugEnabled()) { 132 s_logger.debug("Downloading volume to data store " + dataStore.getId()); 133 } 134 _downloadMonitor.downloadVolumeToStorage(data, caller); 135 } ** CID 1115375: Null pointer dereferences (FORWARD_NULL) /engine/storage/src/org/apache/cloudstack/storage/datastore/provider/DataStoreProviderManagerImpl.java: 116 in org.apache.cloudstack.storage.datastore.provider.DataStoreProviderManagerImpl.configure(java.lang.String, java.util.Map)() ________________________________________________________________________________________________________ *** CID 1115375: Null pointer dereferences (FORWARD_NULL) /engine/storage/src/org/apache/cloudstack/storage/datastore/provider/DataStoreProviderManagerImpl.java: 116 in org.apache.cloudstack.storage.datastore.provider.DataStoreProviderManagerImpl.configure(java.lang.String, java.util.Map)() 110 if (providers != null) { 111 for (DataStoreProvider provider : providers) { 112 registerProvider(provider); 113 } 114 } 115 >>> CID 1115375: Null pointer dereferences (FORWARD_NULL) >>> Passing null pointer "providers" to function "java.util.concurrent.CopyOnWriteArrayList.(java.util.Collection)", which dereferences it. 116 providers = new CopyOnWriteArrayList(providers); 117 118 return true; 119 } 120 121 protected boolean registerProvider(DataStoreProvider provider) { ** CID 1115439: Null pointer dereferences (FORWARD_NULL) ________________________________________________________________________________________________________ *** CID 1115439: Null pointer dereferences (FORWARD_NULL) /engine/storage/volume/src/org/apache/cloudstack/storage/volume/VolumeServiceImpl.java: 1159 in org.apache.cloudstack.storage.volume.VolumeServiceImpl.migrateVolumes(java.util.Map, com.cloud.agent.api.to.VirtualMachineTO, com.cloud.host.Host, com.cloud.host.Host)() 1153 volumesMigrating.add(volume); 1154 } 1155 } 1156 1157 MigrateVmWithVolumesContext context = new MigrateVmWithVolumesContext(null, future, volumeMap); 1158 AsyncCallbackDispatcher caller = AsyncCallbackDispatcher.create(this); >>> CID 1115439: Null pointer dereferences (FORWARD_NULL) >>> Passing "null" to function "org.apache.cloudstack.storage.volume.VolumeServiceImpl.migrateVmWithVolumesCallBack(org.apache.cloudstack.framework.async.AsyncCallbackDispatcher, org.apache.cloudstack.storage.volume.VolumeServiceImpl.MigrateVmWithVolumesContext)", which dereferences it. 1159 caller.setCallback(caller.getTarget().migrateVmWithVolumesCallBack(null, null)).setContext(context); 1160 motionSrv.copyAsync(volumeMap, vmTo, srcHost, destHost, caller); 1161 1162 } catch (Exception e) { 1163 s_logger.debug("Failed to copy volume", e); 1164 res.setResult(e.toString()); ________________________________________________________________________________________________________ To view the defects in Coverity Scan visit, https://scan.coverity.com/projects/943?tab=overview To manage Coverity Scan email notifications for "dev@cloudstack.apache.org", click https://scan.coverity.com/subscriptions/edit?email=dev%40cloudstack.apache.org&token=494aabd5ba647999fa41b6d766646231 .