Apache Commons logo Commons BCEL

SpotBugs Bug Detector Report

The following document contains the results of SpotBugs

SpotBugs Version is 3.1.6

Threshold is

Effort is default

Summary

Classes Bugs Errors Missing Classes
444 107 0 0

Files

Class Bugs
org.apache.bcel.classfile.Annotations 3
org.apache.bcel.classfile.ArrayElementValue 2
org.apache.bcel.classfile.BootstrapMethod 3
org.apache.bcel.classfile.BootstrapMethods 3
org.apache.bcel.classfile.Code 3
org.apache.bcel.classfile.CodeException 1
org.apache.bcel.classfile.ConstantPool 3
org.apache.bcel.classfile.ConstantUtf8 1
org.apache.bcel.classfile.Deprecated 3
org.apache.bcel.classfile.ExceptionTable 1
org.apache.bcel.classfile.FieldOrMethod 3
org.apache.bcel.classfile.InnerClasses 1
org.apache.bcel.classfile.JavaClass 11
org.apache.bcel.classfile.LineNumberTable 3
org.apache.bcel.classfile.LocalVariableTable 3
org.apache.bcel.classfile.LocalVariableTypeTable 3
org.apache.bcel.classfile.Method 1
org.apache.bcel.classfile.MethodParameters 2
org.apache.bcel.classfile.Module 4
org.apache.bcel.classfile.ModulePackages 1
org.apache.bcel.classfile.NestMembers 1
org.apache.bcel.classfile.ParameterAnnotationEntry 1
org.apache.bcel.classfile.ParameterAnnotations 4
org.apache.bcel.classfile.Signature$MyByteArrayInputStream 2
org.apache.bcel.classfile.StackMap 3
org.apache.bcel.classfile.StackMapEntry 2
org.apache.bcel.classfile.Synthetic 3
org.apache.bcel.classfile.Unknown 3
org.apache.bcel.classfile.Utility 1
org.apache.bcel.generic.InstructionConstants 1
org.apache.bcel.generic.InstructionList 2
org.apache.bcel.generic.MethodGen 2
org.apache.bcel.generic.Select 3
org.apache.bcel.generic.TargetLostException 1
org.apache.bcel.util.AttributeHTML 1
org.apache.bcel.util.BCELFactory 1
org.apache.bcel.util.BCELifier 2
org.apache.bcel.util.Class2HTML 4
org.apache.bcel.util.ClassLoader 3
org.apache.bcel.util.ClassPath 1
org.apache.bcel.util.ClassPath$JrtModule$1 1
org.apache.bcel.util.ClassVector 1
org.apache.bcel.util.CodeHTML 1
org.apache.bcel.util.ConstantHTML 1
org.apache.bcel.util.MethodHTML 1
org.apache.bcel.util.ModularRuntimeImage 1
org.apache.bcel.verifier.GraphicalVerifier 1
org.apache.bcel.verifier.TransitiveHull 1
org.apache.bcel.verifier.structurals.Frame 1
org.apache.bcel.verifier.structurals.LocalVariables 1
org.apache.bcel.verifier.structurals.OperandStack 1

org.apache.bcel.classfile.Annotations

Bug Category Details Line Priority
org.apache.bcel.classfile.Annotations.getAnnotationEntries() may expose internal representation by returning Annotations.annotationTable MALICIOUS_CODE EI_EXPOSE_REP 87 Medium
new org.apache.bcel.classfile.Annotations(byte, int, int, AnnotationEntry[], ConstantPool, boolean) may expose internal representation by storing an externally mutable object into Annotations.annotationTable MALICIOUS_CODE EI_EXPOSE_REP2 61 Medium
org.apache.bcel.classfile.Annotations.setAnnotationTable(AnnotationEntry[]) may expose internal representation by storing an externally mutable object into Annotations.annotationTable MALICIOUS_CODE EI_EXPOSE_REP2 80 Medium

org.apache.bcel.classfile.ArrayElementValue

Bug Category Details Line Priority
org.apache.bcel.classfile.ArrayElementValue.getElementValuesArray() may expose internal representation by returning ArrayElementValue.elementValues MALICIOUS_CODE EI_EXPOSE_REP 85 Medium
new org.apache.bcel.classfile.ArrayElementValue(int, ElementValue[], ConstantPool) may expose internal representation by storing an externally mutable object into ArrayElementValue.elementValues MALICIOUS_CODE EI_EXPOSE_REP2 54 Medium

org.apache.bcel.classfile.BootstrapMethod

Bug Category Details Line Priority
org.apache.bcel.classfile.BootstrapMethod.getBootstrapArguments() may expose internal representation by returning BootstrapMethod.bootstrapArguments MALICIOUS_CODE EI_EXPOSE_REP 98 Medium
new org.apache.bcel.classfile.BootstrapMethod(int, int[]) may expose internal representation by storing an externally mutable object into BootstrapMethod.bootstrapArguments MALICIOUS_CODE EI_EXPOSE_REP2 77 Medium
org.apache.bcel.classfile.BootstrapMethod.setBootstrapArguments(int[]) may expose internal representation by storing an externally mutable object into BootstrapMethod.bootstrapArguments MALICIOUS_CODE EI_EXPOSE_REP2 112 Medium

org.apache.bcel.classfile.BootstrapMethods

Bug Category Details Line Priority
org.apache.bcel.classfile.BootstrapMethods.getBootstrapMethods() may expose internal representation by returning BootstrapMethods.bootstrapMethods MALICIOUS_CODE EI_EXPOSE_REP 80 Medium
new org.apache.bcel.classfile.BootstrapMethods(int, int, BootstrapMethod[], ConstantPool) may expose internal representation by storing an externally mutable object into BootstrapMethods.bootstrapMethods MALICIOUS_CODE EI_EXPOSE_REP2 54 Medium
org.apache.bcel.classfile.BootstrapMethods.setBootstrapMethods(BootstrapMethod[]) may expose internal representation by storing an externally mutable object into BootstrapMethods.bootstrapMethods MALICIOUS_CODE EI_EXPOSE_REP2 87 Medium

org.apache.bcel.classfile.Code

Bug Category Details Line Priority
org.apache.bcel.classfile.Code.getAttributes() may expose internal representation by returning Code.attributes MALICIOUS_CODE EI_EXPOSE_REP 164 Medium
org.apache.bcel.classfile.Code.getCode() may expose internal representation by returning Code.code MALICIOUS_CODE EI_EXPOSE_REP 198 Medium
org.apache.bcel.classfile.Code.getExceptionTable() may expose internal representation by returning Code.exceptionTable MALICIOUS_CODE EI_EXPOSE_REP 207 Medium

org.apache.bcel.classfile.CodeException

Bug Category Details Line Priority
Class org.apache.bcel.classfile.CodeException is not derived from an Exception, even though it is named as such BAD_PRACTICE NM_CLASS_NOT_EXCEPTION 51-215 Medium

org.apache.bcel.classfile.ConstantPool

Bug Category Details Line Priority
org.apache.bcel.classfile.ConstantPool.getConstantPool() may expose internal representation by returning ConstantPool.constantPool MALICIOUS_CODE EI_EXPOSE_REP 272 Medium
new org.apache.bcel.classfile.ConstantPool(Constant[]) may expose internal representation by storing an externally mutable object into ConstantPool.constantPool MALICIOUS_CODE EI_EXPOSE_REP2 45 Medium
org.apache.bcel.classfile.ConstantPool.setConstantPool(Constant[]) may expose internal representation by storing an externally mutable object into ConstantPool.constantPool MALICIOUS_CODE EI_EXPOSE_REP2 341 Medium

org.apache.bcel.classfile.ConstantUtf8

Bug Category Details Line Priority
Write to static field org.apache.bcel.classfile.ConstantUtf8.created from instance method new org.apache.bcel.classfile.ConstantUtf8(String) STYLE ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD 218 Medium

org.apache.bcel.classfile.Deprecated

Bug Category Details Line Priority
org.apache.bcel.classfile.Deprecated.getBytes() may expose internal representation by returning Deprecated.bytes MALICIOUS_CODE EI_EXPOSE_REP 111 Medium
new org.apache.bcel.classfile.Deprecated(int, int, byte[], ConstantPool) may expose internal representation by storing an externally mutable object into Deprecated.bytes MALICIOUS_CODE EI_EXPOSE_REP2 55 Medium
org.apache.bcel.classfile.Deprecated.setBytes(byte[]) may expose internal representation by storing an externally mutable object into Deprecated.bytes MALICIOUS_CODE EI_EXPOSE_REP2 119 Medium

org.apache.bcel.classfile.ExceptionTable

Bug Category Details Line Priority
org.apache.bcel.classfile.ExceptionTable.getExceptionIndexTable() may expose internal representation by returning ExceptionTable.exceptionIndexTable MALICIOUS_CODE EI_EXPOSE_REP 114 Medium

org.apache.bcel.classfile.FieldOrMethod

Bug Category Details Line Priority
org.apache.bcel.classfile.FieldOrMethod.getAnnotationEntries() may expose internal representation by returning FieldOrMethod.annotationEntries MALICIOUS_CODE EI_EXPOSE_REP 267 Medium
org.apache.bcel.classfile.FieldOrMethod.getAttributes() may expose internal representation by returning FieldOrMethod.attributes MALICIOUS_CODE EI_EXPOSE_REP 154 Medium
org.apache.bcel.classfile.FieldOrMethod.setAttributes(Attribute[]) may expose internal representation by storing an externally mutable object into FieldOrMethod.attributes MALICIOUS_CODE EI_EXPOSE_REP2 162 Medium

org.apache.bcel.classfile.InnerClasses

Bug Category Details Line Priority
org.apache.bcel.classfile.InnerClasses.getInnerClasses() may expose internal representation by returning InnerClasses.innerClasses MALICIOUS_CODE EI_EXPOSE_REP 114 Medium

org.apache.bcel.classfile.JavaClass

Bug Category Details Line Priority
org.apache.bcel.classfile.JavaClass.getAnnotationEntries() may expose internal representation by returning JavaClass.annotations MALICIOUS_CODE EI_EXPOSE_REP 345 Medium
org.apache.bcel.classfile.JavaClass.getAttributes() may expose internal representation by returning JavaClass.attributes MALICIOUS_CODE EI_EXPOSE_REP 333 Medium
org.apache.bcel.classfile.JavaClass.getFields() may expose internal representation by returning JavaClass.fields MALICIOUS_CODE EI_EXPOSE_REP 386 Medium
org.apache.bcel.classfile.JavaClass.getInterfaceIndices() may expose internal representation by returning JavaClass.interfaces MALICIOUS_CODE EI_EXPOSE_REP 410 Medium
org.apache.bcel.classfile.JavaClass.getInterfaceNames() may expose internal representation by returning JavaClass.interfaceNames MALICIOUS_CODE EI_EXPOSE_REP 402 Medium
org.apache.bcel.classfile.JavaClass.getMethods() may expose internal representation by returning JavaClass.methods MALICIOUS_CODE EI_EXPOSE_REP 426 Medium
org.apache.bcel.classfile.JavaClass.setAttributes(Attribute[]) may expose internal representation by storing an externally mutable object into JavaClass.attributes MALICIOUS_CODE EI_EXPOSE_REP2 484 Medium
org.apache.bcel.classfile.JavaClass.setFields(Field[]) may expose internal representation by storing an externally mutable object into JavaClass.fields MALICIOUS_CODE EI_EXPOSE_REP2 516 Medium
org.apache.bcel.classfile.JavaClass.setInterfaceNames(String[]) may expose internal representation by storing an externally mutable object into JavaClass.interfaceNames MALICIOUS_CODE EI_EXPOSE_REP2 532 Medium
org.apache.bcel.classfile.JavaClass.setInterfaces(int[]) may expose internal representation by storing an externally mutable object into JavaClass.interfaces MALICIOUS_CODE EI_EXPOSE_REP2 540 Medium
org.apache.bcel.classfile.JavaClass.setMethods(Method[]) may expose internal representation by storing an externally mutable object into JavaClass.methods MALICIOUS_CODE EI_EXPOSE_REP2 556 Medium

org.apache.bcel.classfile.LineNumberTable

Bug Category Details Line Priority
org.apache.bcel.classfile.LineNumberTable.getLineNumberTable() may expose internal representation by returning LineNumberTable.lineNumberTable MALICIOUS_CODE EI_EXPOSE_REP 114 Medium
new org.apache.bcel.classfile.LineNumberTable(int, int, LineNumber[], ConstantPool) may expose internal representation by storing an externally mutable object into LineNumberTable.lineNumberTable MALICIOUS_CODE EI_EXPOSE_REP2 58 Medium
org.apache.bcel.classfile.LineNumberTable.setLineNumberTable(LineNumber[]) may expose internal representation by storing an externally mutable object into LineNumberTable.lineNumberTable MALICIOUS_CODE EI_EXPOSE_REP2 122 Medium

org.apache.bcel.classfile.LocalVariableTable

Bug Category Details Line Priority
org.apache.bcel.classfile.LocalVariableTable.getLocalVariableTable() may expose internal representation by returning LocalVariableTable.localVariableTable MALICIOUS_CODE EI_EXPOSE_REP 112 Medium
new org.apache.bcel.classfile.LocalVariableTable(int, int, LocalVariable[], ConstantPool) may expose internal representation by storing an externally mutable object into LocalVariableTable.localVariableTable MALICIOUS_CODE EI_EXPOSE_REP2 56 Medium
org.apache.bcel.classfile.LocalVariableTable.setLocalVariableTable(LocalVariable[]) may expose internal representation by storing an externally mutable object into LocalVariableTable.localVariableTable MALICIOUS_CODE EI_EXPOSE_REP2 158 Medium

org.apache.bcel.classfile.LocalVariableTypeTable

Bug Category Details Line Priority
org.apache.bcel.classfile.LocalVariableTypeTable.getLocalVariableTypeTable() may expose internal representation by returning LocalVariableTypeTable.localVariableTypeTable MALICIOUS_CODE EI_EXPOSE_REP 96 Medium
new org.apache.bcel.classfile.LocalVariableTypeTable(int, int, LocalVariable[], ConstantPool) may expose internal representation by storing an externally mutable object into LocalVariableTypeTable.localVariableTypeTable MALICIOUS_CODE EI_EXPOSE_REP2 67 Medium
org.apache.bcel.classfile.LocalVariableTypeTable.setLocalVariableTable(LocalVariable[]) may expose internal representation by storing an externally mutable object into LocalVariableTypeTable.localVariableTypeTable MALICIOUS_CODE EI_EXPOSE_REP2 110 Medium

org.apache.bcel.classfile.Method

Bug Category Details Line Priority
org.apache.bcel.classfile.Method.getParameterAnnotationEntries() may expose internal representation by returning Method.parameterAnnotationEntries MALICIOUS_CODE EI_EXPOSE_REP 268 Medium

org.apache.bcel.classfile.MethodParameters

Bug Category Details Line Priority
org.apache.bcel.classfile.MethodParameters.getParameters() may expose internal representation by returning MethodParameters.parameters MALICIOUS_CODE EI_EXPOSE_REP 48 Medium
org.apache.bcel.classfile.MethodParameters.setParameters(MethodParameter[]) may expose internal representation by storing an externally mutable object into MethodParameters.parameters MALICIOUS_CODE EI_EXPOSE_REP2 52 Medium

org.apache.bcel.classfile.Module

Bug Category Details Line Priority
org.apache.bcel.classfile.Module.getExportsTable() may expose internal representation by returning Module.exportsTable MALICIOUS_CODE EI_EXPOSE_REP 121 Medium
org.apache.bcel.classfile.Module.getOpensTable() may expose internal representation by returning Module.opensTable MALICIOUS_CODE EI_EXPOSE_REP 130 Medium
org.apache.bcel.classfile.Module.getProvidesTable() may expose internal representation by returning Module.providesTable MALICIOUS_CODE EI_EXPOSE_REP 139 Medium
org.apache.bcel.classfile.Module.getRequiresTable() may expose internal representation by returning Module.requiresTable MALICIOUS_CODE EI_EXPOSE_REP 112 Medium

org.apache.bcel.classfile.ModulePackages

Bug Category Details Line Priority
org.apache.bcel.classfile.ModulePackages.getPackageIndexTable() may expose internal representation by returning ModulePackages.packageIndexTable MALICIOUS_CODE EI_EXPOSE_REP 110 Medium

org.apache.bcel.classfile.NestMembers

Bug Category Details Line Priority
org.apache.bcel.classfile.NestMembers.getClasses() may expose internal representation by returning NestMembers.classes MALICIOUS_CODE EI_EXPOSE_REP 111 Medium

org.apache.bcel.classfile.ParameterAnnotationEntry

Bug Category Details Line Priority
org.apache.bcel.classfile.ParameterAnnotationEntry.getAnnotationEntries() may expose internal representation by returning ParameterAnnotationEntry.annotationTable MALICIOUS_CODE EI_EXPOSE_REP 69 Medium

org.apache.bcel.classfile.ParameterAnnotations

Bug Category Details Line Priority
org.apache.bcel.classfile.ParameterAnnotations.getParameterAnnotationEntries() may expose internal representation by returning ParameterAnnotations.parameterAnnotationTable MALICIOUS_CODE EI_EXPOSE_REP 100 Medium
org.apache.bcel.classfile.ParameterAnnotations.getParameterAnnotationTable() may expose internal representation by returning ParameterAnnotations.parameterAnnotationTable MALICIOUS_CODE EI_EXPOSE_REP 92 Medium
new org.apache.bcel.classfile.ParameterAnnotations(byte, int, int, ParameterAnnotationEntry[], ConstantPool) may expose internal representation by storing an externally mutable object into ParameterAnnotations.parameterAnnotationTable MALICIOUS_CODE EI_EXPOSE_REP2 63 Medium
org.apache.bcel.classfile.ParameterAnnotations.setParameterAnnotationTable(ParameterAnnotationEntry[]) may expose internal representation by storing an externally mutable object into ParameterAnnotations.parameterAnnotationTable MALICIOUS_CODE EI_EXPOSE_REP2 84 Medium

org.apache.bcel.classfile.Signature$MyByteArrayInputStream

Bug Category Details Line Priority
Found reliance on default encoding in new org.apache.bcel.classfile.Signature$MyByteArrayInputStream(String): String.getBytes() I18N DM_DEFAULT_ENCODING 131 High
Found reliance on default encoding in org.apache.bcel.classfile.Signature$MyByteArrayInputStream.getData(): new String(byte[]) I18N DM_DEFAULT_ENCODING 136 High

org.apache.bcel.classfile.StackMap

Bug Category Details Line Priority
org.apache.bcel.classfile.StackMap.getStackMap() may expose internal representation by returning StackMap.map MALICIOUS_CODE EI_EXPOSE_REP 95 Medium
new org.apache.bcel.classfile.StackMap(int, int, StackMapEntry[], ConstantPool) may expose internal representation by storing an externally mutable object into StackMap.map MALICIOUS_CODE EI_EXPOSE_REP2 52 Medium
org.apache.bcel.classfile.StackMap.setStackMap(StackMapEntry[]) may expose internal representation by storing an externally mutable object into StackMap.map MALICIOUS_CODE EI_EXPOSE_REP2 103 Medium

org.apache.bcel.classfile.StackMapEntry

Bug Category Details Line Priority
org.apache.bcel.classfile.StackMapEntry.getTypesOfLocals() may expose internal representation by returning StackMapEntry.typesOfLocals MALICIOUS_CODE EI_EXPOSE_REP 357 Medium
org.apache.bcel.classfile.StackMapEntry.getTypesOfStackItems() may expose internal representation by returning StackMapEntry.typesOfStackItems MALICIOUS_CODE EI_EXPOSE_REP 381 Medium

org.apache.bcel.classfile.Synthetic

Bug Category Details Line Priority
org.apache.bcel.classfile.Synthetic.getBytes() may expose internal representation by returning Synthetic.bytes MALICIOUS_CODE EI_EXPOSE_REP 117 Medium
new org.apache.bcel.classfile.Synthetic(int, int, byte[], ConstantPool) may expose internal representation by storing an externally mutable object into Synthetic.bytes MALICIOUS_CODE EI_EXPOSE_REP2 61 Medium
org.apache.bcel.classfile.Synthetic.setBytes(byte[]) may expose internal representation by storing an externally mutable object into Synthetic.bytes MALICIOUS_CODE EI_EXPOSE_REP2 125 Medium

org.apache.bcel.classfile.Unknown

Bug Category Details Line Priority
org.apache.bcel.classfile.Unknown.getBytes() may expose internal representation by returning Unknown.bytes MALICIOUS_CODE EI_EXPOSE_REP 134 Medium
new org.apache.bcel.classfile.Unknown(int, int, byte[], ConstantPool) may expose internal representation by storing an externally mutable object into Unknown.bytes MALICIOUS_CODE EI_EXPOSE_REP2 76 Medium
org.apache.bcel.classfile.Unknown.setBytes(byte[]) may expose internal representation by storing an externally mutable object into Unknown.bytes MALICIOUS_CODE EI_EXPOSE_REP2 151 Medium

org.apache.bcel.classfile.Utility

Bug Category Details Line Priority
Switch statement found in org.apache.bcel.classfile.Utility.codeToString(ByteSequence, ConstantPool, boolean) where one case falls through to the next case STYLE SF_SWITCH_FALLTHROUGH 334-337 Medium

org.apache.bcel.generic.InstructionConstants

Bug Category Details Line Priority
org.apache.bcel.generic.InstructionConstants.INSTRUCTIONS should be moved out of an interface and made package protected MALICIOUS_CODE MS_OOI_PKGPROTECT 173 Medium

org.apache.bcel.generic.InstructionList

Bug Category Details Line Priority
org.apache.bcel.generic.InstructionList.getInstructionPositions() may expose internal representation by returning InstructionList.bytePositions MALICIOUS_CODE EI_EXPOSE_REP 1037 Medium
Switch statement found in org.apache.bcel.generic.InstructionList.setPositions(boolean) where default case is missing STYLE SF_SWITCH_NO_DEFAULT 897-904 Medium

org.apache.bcel.generic.MethodGen

Bug Category Details Line Priority
org.apache.bcel.generic.MethodGen.setArgumentNames(String[]) may expose internal representation by storing an externally mutable object into MethodGen.argNames MALICIOUS_CODE EI_EXPOSE_REP2 885 Medium
org.apache.bcel.generic.MethodGen.setArgumentTypes(Type[]) may expose internal representation by storing an externally mutable object into MethodGen.argTypes MALICIOUS_CODE EI_EXPOSE_REP2 865 Medium

org.apache.bcel.generic.Select

Bug Category Details Line Priority
org.apache.bcel.generic.Select.getIndices() may expose internal representation by returning Select.indices MALICIOUS_CODE EI_EXPOSE_REP 267 Medium
org.apache.bcel.generic.Select.getMatchs() may expose internal representation by returning Select.match MALICIOUS_CODE EI_EXPOSE_REP 259 Medium
org.apache.bcel.generic.Select.getTargets() may expose internal representation by returning Select.targets MALICIOUS_CODE EI_EXPOSE_REP 275 Medium

org.apache.bcel.generic.TargetLostException

Bug Category Details Line Priority
org.apache.bcel.generic.TargetLostException.getTargets() may expose internal representation by returning TargetLostException.targets MALICIOUS_CODE EI_EXPOSE_REP 63 Medium

org.apache.bcel.util.AttributeHTML

Bug Category Details Line Priority
Found reliance on default encoding in new org.apache.bcel.util.AttributeHTML(String, String, ConstantPool, ConstantHTML): new java.io.PrintWriter(OutputStream) I18N DM_DEFAULT_ENCODING 60 High

org.apache.bcel.util.BCELFactory

Bug Category Details Line Priority
Switch statement found in org.apache.bcel.util.BCELFactory.visitAllocationInstruction(AllocationInstruction) where one case falls through to the next case STYLE SF_SWITCH_FALLTHROUGH 188-192 Medium

org.apache.bcel.util.BCELifier

Bug Category Details Line Priority
Found reliance on default encoding in new org.apache.bcel.util.BCELifier(JavaClass, OutputStream): new java.io.PrintWriter(OutputStream) I18N DM_DEFAULT_ENCODING 71 High
Complicated, subtle or wrong increment in for-loop org.apache.bcel.util.BCELifier.printFlags(int, BCELifier$FLAGS) STYLE QF_QUESTIONABLE_FOR_LOOP 216 Medium

org.apache.bcel.util.Class2HTML

Bug Category Details Line Priority
Found reliance on default encoding in org.apache.bcel.util.Class2HTML.writeMainHTML(AttributeHTML): new java.io.PrintWriter(OutputStream) I18N DM_DEFAULT_ENCODING 220 High
Write to static field org.apache.bcel.util.Class2HTML.class_name from instance method new org.apache.bcel.util.Class2HTML(JavaClass, String) STYLE ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD 87 High
Write to static field org.apache.bcel.util.Class2HTML.constant_pool from instance method new org.apache.bcel.util.Class2HTML(JavaClass, String) STYLE ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD 88 High
Write to static field org.apache.bcel.util.Class2HTML.class_package from instance method new org.apache.bcel.util.Class2HTML(JavaClass, String) STYLE ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD 92 Medium

org.apache.bcel.util.ClassLoader

Bug Category Details Line Priority
new org.apache.bcel.util.ClassLoader(String[]) may expose internal representation by storing an externally mutable object into ClassLoader.ignored_packages MALICIOUS_CODE EI_EXPOSE_REP2 91 Medium
org.apache.bcel.util.ClassLoader.DEFAULT_IGNORED_PACKAGES should be package protected MALICIOUS_CODE MS_PKGPROTECT 60 Medium
The class name org.apache.bcel.util.ClassLoader shadows the simple name of the superclass java.lang.ClassLoader BAD_PRACTICE NM_SAME_SIMPLE_NAME_AS_SUPERCLASS 60-190 High

org.apache.bcel.util.ClassPath

Bug Category Details Line Priority
Possible null pointer dereference in org.apache.bcel.util.ClassPath.addJdkModules(String, List) due to return value of called method STYLE NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE 454 Medium

org.apache.bcel.util.ClassPath$JrtModule$1

Bug Category Details Line Priority
Possible null pointer dereference in org.apache.bcel.util.ClassPath$JrtModule$1.getBase() due to return value of called method STYLE NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE 289 Medium

org.apache.bcel.util.ClassVector

Bug Category Details Line Priority
Class org.apache.bcel.util.ClassVector defines non-transient non-serializable instance field vec BAD_PRACTICE SE_BAD_FIELD Not available High

org.apache.bcel.util.CodeHTML

Bug Category Details Line Priority
Found reliance on default encoding in new org.apache.bcel.util.CodeHTML(String, String, Method[], ConstantPool, ConstantHTML): new java.io.PrintWriter(OutputStream) I18N DM_DEFAULT_ENCODING 62 High

org.apache.bcel.util.ConstantHTML

Bug Category Details Line Priority
Found reliance on default encoding in new org.apache.bcel.util.ConstantHTML(String, String, String, Method[], ConstantPool): new java.io.PrintWriter(OutputStream) I18N DM_DEFAULT_ENCODING 59 High

org.apache.bcel.util.MethodHTML

Bug Category Details Line Priority
Found reliance on default encoding in new org.apache.bcel.util.MethodHTML(String, String, Method[], Field[], ConstantHTML, AttributeHTML): new java.io.PrintWriter(OutputStream) I18N DM_DEFAULT_ENCODING 51 High

org.apache.bcel.util.ModularRuntimeImage

Bug Category Details Line Priority
new org.apache.bcel.util.ModularRuntimeImage(String) creates a java.net.URLClassLoader classloader, which should be performed within a doPrivileged block MALICIOUS_CODE DP_CREATE_CLASSLOADER_INSIDE_DO_PRIVILEGED 74 Medium

org.apache.bcel.verifier.GraphicalVerifier

Bug Category Details Line Priority
Unread field: org.apache.bcel.verifier.GraphicalVerifier.packFrame; should this field be static? PERFORMANCE SS_SHOULD_BE_STATIC 32 Medium

org.apache.bcel.verifier.TransitiveHull

Bug Category Details Line Priority
org.apache.bcel.verifier.TransitiveHull.update(String) forces garbage collection; extremely dubious except in benchmarking code PERFORMANCE DM_GC 44 High

org.apache.bcel.verifier.structurals.Frame

Bug Category Details Line Priority
org.apache.bcel.verifier.structurals.Frame._this should be package protected MALICIOUS_CODE MS_PKGPROTECT Not available Medium

org.apache.bcel.verifier.structurals.LocalVariables

Bug Category Details Line Priority
org.apache.bcel.verifier.structurals.LocalVariables.clone() does not call super.clone() BAD_PRACTICE CN_IDIOM_NO_SUPER_CALL 54-58 Medium

org.apache.bcel.verifier.structurals.OperandStack

Bug Category Details Line Priority
org.apache.bcel.verifier.structurals.OperandStack.clone() does not call super.clone() BAD_PRACTICE CN_IDIOM_NO_SUPER_CALL 65-69 Medium