FindBugs Bug Detector Report

The following document contains the results of FindBugs Report

FindBugs Version is 2.0.0

Threshold is medium

Effort is max

Summary

ClassesBugsErrorsMissing Classes
1785400

org.nhindirect.stagent.CryptoExtensions

BugCategoryDetailsLinePriority
Exception is caught when Exception is not thrown in org.nhindirect.stagent.CryptoExtensions.convertToProfileProvidedCertImpl(X509Certificate)STYLEREC_CATCH_EXCEPTION451Medium

org.nhindirect.stagent.DefaultNHINDAgent

BugCategoryDetailsLinePriority
org.nhindirect.stagent.DefaultNHINDAgent.processMessage(IncomingMessage) might ignore java.lang.ExceptionBAD_PRACTICEDE_MIGHT_IGNORE870Medium
Write to static field org.nhindirect.stagent.DefaultNHINDAgent.initialConstruct from instance method new org.nhindirect.stagent.DefaultNHINDAgent(Collection, CertificateResolver, Collection, TrustAnchorResolver, TrustModel, Cryptographer)STYLEST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD195Medium
org.nhindirect.stagent.DefaultNHINDAgent.setCryptographer(Cryptographer) does not release lock on all exception pathsMT_CORRECTNESSUL_UNRELEASED_LOCK_EXCEPTION_PATH297Medium
org.nhindirect.stagent.DefaultNHINDAgent.setDomains(Collection) does not release lock on all exception pathsMT_CORRECTNESSUL_UNRELEASED_LOCK_EXCEPTION_PATH248Medium
org.nhindirect.stagent.DefaultNHINDAgent.setEncryptMessages(boolean) does not release lock on all exception pathsMT_CORRECTNESSUL_UNRELEASED_LOCK_EXCEPTION_PATH330Medium
org.nhindirect.stagent.DefaultNHINDAgent.setEventListener(NHINDAgentEventListener) does not release lock on all exception pathsMT_CORRECTNESSUL_UNRELEASED_LOCK_EXCEPTION_PATH532Medium
org.nhindirect.stagent.DefaultNHINDAgent.setPolicyFilter(PolicyFilter) does not release lock on all exception pathsMT_CORRECTNESSUL_UNRELEASED_LOCK_EXCEPTION_PATH631Medium
org.nhindirect.stagent.DefaultNHINDAgent.setPrivateCertResolver(CertificateResolver) does not release lock on all exception pathsMT_CORRECTNESSUL_UNRELEASED_LOCK_EXCEPTION_PATH447Medium
org.nhindirect.stagent.DefaultNHINDAgent.setPrivatePolicyResolver(PolicyResolver) does not release lock on all exception pathsMT_CORRECTNESSUL_UNRELEASED_LOCK_EXCEPTION_PATH598Medium
org.nhindirect.stagent.DefaultNHINDAgent.setPublicCertResolvers(Collection) does not release lock on all exception pathsMT_CORRECTNESSUL_UNRELEASED_LOCK_EXCEPTION_PATH416Medium
org.nhindirect.stagent.DefaultNHINDAgent.setPublicPolicyResolver(PolicyResolver) does not release lock on all exception pathsMT_CORRECTNESSUL_UNRELEASED_LOCK_EXCEPTION_PATH565Medium
org.nhindirect.stagent.DefaultNHINDAgent.setTrustAnchorResolver(TrustAnchorResolver) does not release lock on all exception pathsMT_CORRECTNESSUL_UNRELEASED_LOCK_EXCEPTION_PATH478Medium
org.nhindirect.stagent.DefaultNHINDAgent.setTrustModel(TrustModel) does not release lock on all exception pathsMT_CORRECTNESSUL_UNRELEASED_LOCK_EXCEPTION_PATH663Medium
org.nhindirect.stagent.DefaultNHINDAgent.setWrappingEnabled(boolean) does not release lock on all exception pathsMT_CORRECTNESSUL_UNRELEASED_LOCK_EXCEPTION_PATH362Medium

org.nhindirect.stagent.NHINDStandard

BugCategoryDetailsLinePriority
org.nhindirect.stagent.NHINDStandard.MailHeadersUsed should be package protectedMALICIOUS_CODEMS_PKGPROTECT36Medium

org.nhindirect.stagent.cert.CertCacheFactory

BugCategoryDetailsLinePriority
org.nhindirect.stagent.cert.CertCacheFactory.INSTANCE should be package protectedMALICIOUS_CODEMS_PKGPROTECTNot availableMedium

org.nhindirect.stagent.cert.Thumbprint

BugCategoryDetailsLinePriority
org.nhindirect.stagent.cert.Thumbprint defines equals and uses Object.hashCode()BAD_PRACTICEHE_EQUALS_USE_HASHCODE117-123High

org.nhindirect.stagent.cert.impl.CRLRevocationManager

BugCategoryDetailsLinePriority
org.nhindirect.stagent.cert.impl.CRLRevocationManager.crlCacheLocation should be package protectedMALICIOUS_CODEMS_PKGPROTECTNot availableMedium
Exception is caught when Exception is not thrown in org.nhindirect.stagent.cert.impl.CRLRevocationManager.getCrlFromUri(String)STYLEREC_CATCH_EXCEPTION379Medium

org.nhindirect.stagent.cert.impl.DNSCertificateStore

BugCategoryDetailsLinePriority
org.nhindirect.stagent.cert.impl.DNSCertificateStore.createExResolver(String[], int, int) might ignore java.net.UnknownHostExceptionBAD_PRACTICEDE_MIGHT_IGNORE620Medium

org.nhindirect.stagent.cert.impl.KeyStoreCertificateStore

BugCategoryDetailsLinePriority
org.nhindirect.stagent.cert.impl.KeyStoreCertificateStore.add(X509Certificate, String) may fail to clean up java.io.OutputStream on checked exceptionEXPERIMENTALOBL_UNSATISFIED_OBLIGATION_EXCEPTION_EDGE331Medium
org.nhindirect.stagent.cert.impl.KeyStoreCertificateStore.remove(X509Certificate) may fail to clean up java.io.OutputStream on checked exceptionEXPERIMENTALOBL_UNSATISFIED_OBLIGATION_EXCEPTION_EDGE285Medium

org.nhindirect.stagent.cert.impl.LdapCertUtilImpl

BugCategoryDetailsLinePriority
Found reliance on default encoding in org.nhindirect.stagent.cert.impl.LdapCertUtilImpl.ldapSearch(String): String.getBytes()I18NDM_DEFAULT_ENCODING96High

org.nhindirect.stagent.cert.impl.LdapEnvironment

BugCategoryDetailsLinePriority
org.nhindirect.stagent.cert.impl.LdapEnvironment.getEnv() may expose internal representation by returning LdapEnvironment.envMALICIOUS_CODEEI_EXPOSE_REP74Medium
new org.nhindirect.stagent.cert.impl.LdapEnvironment(Hashtable, String, String, String) may expose internal representation by storing an externally mutable object into LdapEnvironment.envMALICIOUS_CODEEI_EXPOSE_REP267Medium

org.nhindirect.stagent.cert.impl.LdapPublicCertUtilImpl$SRVRecordComparitor

BugCategoryDetailsLinePriority
org.nhindirect.stagent.cert.impl.LdapPublicCertUtilImpl$SRVRecordComparitor implements Comparator but not SerializableBAD_PRACTICESE_COMPARATOR_SHOULD_BE_SERIALIZABLE352-361Medium

org.nhindirect.stagent.cert.impl.LdapStoreConfiguration

BugCategoryDetailsLinePriority
org.nhindirect.stagent.cert.impl.LdapStoreConfiguration.getLdapURLs() may expose internal representation by returning LdapStoreConfiguration.ldapURLsMALICIOUS_CODEEI_EXPOSE_REP137Medium
new org.nhindirect.stagent.cert.impl.LdapStoreConfiguration(String[], String, String, String, String) may expose internal representation by storing an externally mutable object into LdapStoreConfiguration.ldapURLsMALICIOUS_CODEEI_EXPOSE_REP2101Medium
new org.nhindirect.stagent.cert.impl.LdapStoreConfiguration(String[], String, EmployLdapAuthInformation, String, String, String, String, String) may expose internal representation by storing an externally mutable object into LdapStoreConfiguration.ldapURLsMALICIOUS_CODEEI_EXPOSE_REP2126Medium
org.nhindirect.stagent.cert.impl.LdapStoreConfiguration.setLdapURLs(String[]) may expose internal representation by storing an externally mutable object into LdapStoreConfiguration.ldapURLsMALICIOUS_CODEEI_EXPOSE_REP2141Medium

org.nhindirect.stagent.cert.impl.provider.LdapCertificateStoreProvider

BugCategoryDetailsLinePriority
org.nhindirect.stagent.cert.impl.provider.LdapCertificateStoreProvider.get() concatenates strings using + in a loopPERFORMANCESBSC_USE_STRINGBUFFER_CONCATENATION46Medium

org.nhindirect.stagent.cert.tools.CreatePKCS12

BugCategoryDetailsLinePriority
exceptional return value of java.io.File.createNewFile() ignored in org.nhindirect.stagent.cert.tools.CreatePKCS12.getPKCS12OutFile(File)BAD_PRACTICERV_RETURN_VALUE_IGNORED_BAD_PRACTICE261Medium
exceptional return value of java.io.File.delete() ignored in org.nhindirect.stagent.cert.tools.CreatePKCS12.getPKCS12OutFile(File)BAD_PRACTICERV_RETURN_VALUE_IGNORED_BAD_PRACTICE259Medium

org.nhindirect.stagent.cert.tools.DNSCertDumper

BugCategoryDetailsLinePriority
Exception is caught when Exception is not thrown in org.nhindirect.stagent.cert.tools.DNSCertDumper.main(String[])STYLEREC_CATCH_EXCEPTION134Medium
exceptional return value of java.io.File.delete() ignored in org.nhindirect.stagent.cert.tools.DNSCertDumper.main(String[])BAD_PRACTICERV_RETURN_VALUE_IGNORED_BAD_PRACTICE124Medium

org.nhindirect.stagent.cert.tools.LDAPCertDumper

BugCategoryDetailsLinePriority
Exception is caught when Exception is not thrown in org.nhindirect.stagent.cert.tools.LDAPCertDumper.main(String[])STYLEREC_CATCH_EXCEPTION122Medium
exceptional return value of java.io.File.delete() ignored in org.nhindirect.stagent.cert.tools.LDAPCertDumper.main(String[])BAD_PRACTICERV_RETURN_VALUE_IGNORED_BAD_PRACTICE112Medium

org.nhindirect.stagent.cert.tools.StripP12Passphrase

BugCategoryDetailsLinePriority
exceptional return value of java.io.File.createNewFile() ignored in org.nhindirect.stagent.cert.tools.StripP12Passphrase.getPKCS12OutFile()BAD_PRACTICERV_RETURN_VALUE_IGNORED_BAD_PRACTICE236Medium
exceptional return value of java.io.File.delete() ignored in org.nhindirect.stagent.cert.tools.StripP12Passphrase.getPKCS12OutFile()BAD_PRACTICERV_RETURN_VALUE_IGNORED_BAD_PRACTICE234Medium

org.nhindirect.stagent.cert.tools.certgen.CAPanel

BugCategoryDetailsLinePriority
Switch statement found in org.nhindirect.stagent.cert.tools.certgen.CAPanel.setWorkflowContext(int) where default case is missingSTYLESF_SWITCH_NO_DEFAULT273-379Medium

org.nhindirect.stagent.cert.tools.certgen.CertCreateFields

BugCategoryDetailsLinePriority
org.nhindirect.stagent.cert.tools.certgen.CertCreateFields.getNewPassword() may expose internal representation by returning CertCreateFields.newPasswordMALICIOUS_CODEEI_EXPOSE_REP73Medium
new org.nhindirect.stagent.cert.tools.certgen.CertCreateFields(Map, File, File, char[], int, int, X509Certificate, Key) may expose internal representation by storing an externally mutable object into CertCreateFields.newPasswordMALICIOUS_CODEEI_EXPOSE_REP253Medium
org.nhindirect.stagent.cert.tools.certgen.CertCreateFields.setNewPassword(char[]) may expose internal representation by storing an externally mutable object into CertCreateFields.newPasswordMALICIOUS_CODEEI_EXPOSE_REP2105Medium

org.nhindirect.stagent.mail.notifications.Disposition

BugCategoryDetailsLinePriority
The class name org.nhindirect.stagent.mail.notifications.Disposition shadows the simple name of the superclass org.apache.jsieve.mailet.mdn.DispositionBAD_PRACTICENM_SAME_SIMPLE_NAME_AS_SUPERCLASS44-142High

org.nhindirect.stagent.mail.notifications.MDNFactory

BugCategoryDetailsLinePriority
Found reliance on default encoding in org.nhindirect.stagent.mail.notifications.MDNFactory.create(String, String, String, String, String, String, String, MdnGateway, Disposition, String, String, Collection): String.getBytes()I18NDM_DEFAULT_ENCODING185High
Redundant nullcheck of reporting_UA_name, which is known to be non-null in org.nhindirect.stagent.mail.notifications.MDNFactory.create(String, String, String, String, String, String, String, MdnGateway, Disposition, String, String, Collection)STYLERCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE104Medium

org.nhindirect.stagent.mail.notifications.Notification

BugCategoryDetailsLinePriority
org.nhindirect.stagent.mail.notifications.Notification.<static initializer>() might ignore java.lang.ExceptionBAD_PRACTICEDE_MIGHT_IGNORE84High
Found reliance on default encoding in org.nhindirect.stagent.mail.notifications.Notification.getPartContentBodyAsString(BodyPart): new String(byte[])I18NDM_DEFAULT_ENCODING550High
Found reliance on default encoding in org.nhindirect.stagent.mail.notifications.Notification.toString(): new String(byte[])I18NDM_DEFAULT_ENCODING436High
Exception is caught when Exception is not thrown in org.nhindirect.stagent.mail.notifications.Notification.getNotificationFieldsAsHeaders(MimeMultipart)STYLEREC_CATCH_EXCEPTION505Medium

org.nhindirect.stagent.mail.notifications.NotificationHelper

BugCategoryDetailsLinePriority
org.nhindirect.stagent.mail.notifications.NotificationHelper.requestNotification(Message) might ignore javax.mail.MessagingExceptionBAD_PRACTICEDE_MIGHT_IGNORE167Medium

org.nhindirect.stagent.options.OptionsManager

BugCategoryDetailsLinePriority
org.nhindirect.stagent.options.OptionsManager.INSTANCE should be package protectedMALICIOUS_CODEMS_PKGPROTECTNot availableMedium