FindBugs Bug Detector Report

The following document contains the results of FindBugs

FindBugs Version is 3.0.1

Threshold is experimental

Effort is max

Summary

Classes Bugs Errors Missing Classes
41 67 0 0

net.sf.atmodem4j.core.AbstractModem

Bug Category Details Line Priority
Dead store to t in net.sf.atmodem4j.core.AbstractModem.sendRawData(String, int) STYLE DLS_DEAD_LOCAL_STORE 437 Medium
Dead store to t in net.sf.atmodem4j.core.AbstractModem.waitForPrompt() STYLE DLS_DEAD_LOCAL_STORE 150 Medium
Found reliance on default encoding in net.sf.atmodem4j.core.AbstractModem.sendCommandLine(String): String.getBytes() I18N DM_DEFAULT_ENCODING 414 High
Found reliance on default encoding in net.sf.atmodem4j.core.AbstractModem.sendRawData(String, int): String.getBytes() I18N DM_DEFAULT_ENCODING 436 High
Inconsistent synchronization of net.sf.atmodem4j.core.AbstractModem.callState; locked 89% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 349 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.AbstractModem.connection; locked 66% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 401 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.AbstractModem.lastResultCode; locked 80% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 126 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.AbstractModem.ringListener; locked 50% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 422 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.AbstractModem.waitingIncommingCall; locked 83% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 605 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.AbstractModem.waitingOutgoingCall; locked 71% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 608 Medium
Redundant nullcheck of buffer, which is known to be non-null in net.sf.atmodem4j.core.AbstractModem.dial(String) STYLE RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 333 Low
Redundant nullcheck of buffer, which is known to be non-null in net.sf.atmodem4j.core.AbstractModem.dial(String, CallHandler) STYLE RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 367 Low
Unread field: net.sf.atmodem4j.core.AbstractModem.defaultDialWaitTime; should this field be static? PERFORMANCE SS_SHOULD_BE_STATIC 62 Medium
Unread field: net.sf.atmodem4j.core.AbstractModem.defaultTrys; should this field be static? PERFORMANCE SS_SHOULD_BE_STATIC 61 Medium
Unread field: net.sf.atmodem4j.core.AbstractModem.defaultWaitTime; should this field be static? PERFORMANCE SS_SHOULD_BE_STATIC 60 Medium
net.sf.atmodem4j.core.AbstractModem.dial(String) calls Thread.sleep() with a lock held MT_CORRECTNESS SWL_SLEEP_WITH_LOCK_HELD 331 Medium
net.sf.atmodem4j.core.AbstractModem.dial(String, CallHandler) calls Thread.sleep() with a lock held MT_CORRECTNESS SWL_SLEEP_WITH_LOCK_HELD 365 Medium
Unread field: net.sf.atmodem4j.core.AbstractModem.lastEcho PERFORMANCE URF_UNREAD_FIELD 125 Medium
AbstractModem.modemOutputStream not initialized in constructor and dereferenced in net.sf.atmodem4j.core.AbstractModem.sendCommandLine(String) STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR 414 Low
AbstractModem.modemOutputStream not initialized in constructor and dereferenced in net.sf.atmodem4j.core.AbstractModem.sendRawData(String, int) STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR 436 Low
Unconditional wait in net.sf.atmodem4j.core.AbstractModem.waitForPrompt() MT_CORRECTNESS UW_UNCOND_WAIT 152 Low
Wait not in loop in net.sf.atmodem4j.core.AbstractModem.waitForPrompt() MT_CORRECTNESS WA_NOT_IN_LOOP 152 Low
Wait not in loop in net.sf.atmodem4j.core.AbstractModem.waitForResult(int) MT_CORRECTNESS WA_NOT_IN_LOOP 547 Low

net.sf.atmodem4j.core.ModemEvent

Bug Category Details Line Priority
net.sf.atmodem4j.core.ModemEvent is Serializable; consider declaring a serialVersionUID BAD_PRACTICE SE_NO_SERIALVERSIONID 45-46 Low

net.sf.atmodem4j.core.ModemFactory

Bug Category Details Line Priority
Useless control flow in net.sf.atmodem4j.core.ModemFactory.getAtV250Modem(boolean, boolean, boolean) STYLE UCF_USELESS_CONTROL_FLOW 52 Low

net.sf.atmodem4j.core.gsm.DefaultGsmExtention

Bug Category Details Line Priority
DefaultGsmExtention.modem not initialized in constructor and dereferenced in net.sf.atmodem4j.core.gsm.DefaultGsmExtention.sendPdu(int, String) STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR 52 Low

net.sf.atmodem4j.core.gsm.Entry7BitEncoding

Bug Category Details Line Priority
net.sf.atmodem4j.core.gsm.Entry7BitEncoding.table should be package protected MALICIOUS_CODE MS_PKGPROTECT 33 Medium

net.sf.atmodem4j.core.gsm.Pdu

Bug Category Details Line Priority
Pdu.data not initialized in constructor and dereferenced in net.sf.atmodem4j.core.gsm.Pdu.getEncoding() STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR 59 Low
Pdu.data not initialized in constructor and dereferenced in net.sf.atmodem4j.core.gsm.Pdu.getText() STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR 176 Low
Pdu.data not initialized in constructor and dereferenced in net.sf.atmodem4j.core.gsm.Pdu.setUserData(byte[], int, int) STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR 146 Low

net.sf.atmodem4j.core.gsm.PduDecoder

Bug Category Details Line Priority
Dead store to refNumber in net.sf.atmodem4j.core.gsm.PduDecoder.decodeFromOctets(String) STYLE DLS_DEAD_LOCAL_STORE 170 Medium
Dead store to userDataHeaderALength in net.sf.atmodem4j.core.gsm.PduDecoder.decodeFromOctets(String) STYLE DLS_DEAD_LOCAL_STORE 171 Medium
Dead store to userDataStart in net.sf.atmodem4j.core.gsm.PduDecoder.decodeFromOctets(String) STYLE DLS_DEAD_LOCAL_STORE 164 Low
Possible null pointer dereference of result in net.sf.atmodem4j.core.gsm.PduDecoder.decodeFromOctets(String) on exception path CORRECTNESS NP_NULL_ON_SOME_PATH_EXCEPTION 176 Medium
Switch statement found in net.sf.atmodem4j.core.gsm.PduDecoder.decodeDataCodingScheme(Pdu) where default case is missing STYLE SF_SWITCH_NO_DEFAULT 55-63 Medium
Switch statement found in net.sf.atmodem4j.core.gsm.PduDecoder.decodeFromOctets(String) where default case is missing STYLE SF_SWITCH_NO_DEFAULT 151-159 Medium

net.sf.atmodem4j.core.gsm.PduDeliver

Bug Category Details Line Priority
net.sf.atmodem4j.core.gsm.PduDeliver.getSmscTimestamp() may expose internal representation by returning PduDeliver.smscTimestamp MALICIOUS_CODE EI_EXPOSE_REP 70 Medium

net.sf.atmodem4j.core.gsm.PduEncoder

Bug Category Details Line Priority
net.sf.atmodem4j.core.gsm.PduEncoder.getAdressOctets() uses the same code for two branches STYLE DB_DUPLICATE_BRANCHES 84 Medium
Unused field: net.sf.atmodem4j.core.gsm.PduEncoder.timeToLife PERFORMANCE UUF_UNUSED_FIELD Not available Medium
PduEncoder.encoding not initialized in constructor and dereferenced in net.sf.atmodem4j.core.gsm.PduEncoder.getTpDcsOctet() STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR 104 Low
PduEncoder.receiverPhonenumber not initialized in constructor and dereferenced in net.sf.atmodem4j.core.gsm.PduEncoder.getAdressOctets() STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR 80 Low

net.sf.atmodem4j.core.gsm.UserData$Data8Bit

Bug Category Details Line Priority
Unused field: net.sf.atmodem4j.core.gsm.UserData$Data8Bit.data PERFORMANCE UUF_UNUSED_FIELD Not available Medium

net.sf.atmodem4j.core.gsm.UserData$Text16Bit

Bug Category Details Line Priority
Unwritten field: net.sf.atmodem4j.core.gsm.UserData$Text16Bit.text CORRECTNESS UWF_UNWRITTEN_FIELD 290 Medium

net.sf.atmodem4j.core.gsm.UserData$Text7Bit

Bug Category Details Line Priority
Dead store to octet in net.sf.atmodem4j.core.gsm.UserData$Text7Bit.encodePduData(int) STYLE DLS_DEAD_LOCAL_STORE 264 Low
UserData$Text7Bit.text not initialized in constructor and dereferenced in net.sf.atmodem4j.core.gsm.UserData$Text7Bit.encodePduData(int) STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR 221 Low
UserData$Text7Bit.text not initialized in constructor and dereferenced in net.sf.atmodem4j.core.gsm.UserData$Text7Bit.getSeptets() STYLE UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR 195 Low

net.sf.atmodem4j.core.parser.Parser

Bug Category Details Line Priority
net.sf.atmodem4j.core.parser.Parser.parseByte(int) uses the same code for two switch clauses STYLE DB_DUPLICATE_SWITCH_CLAUSES 515-516 Low
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.parsedData; locked 93% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 106 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.parsedEcho; locked 81% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 51 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.parserState; locked 75% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 105 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.tokenBusy; locked 66% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 290 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.tokenConnect; locked 66% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 285 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.tokenConnectWithText; locked 66% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 292 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.tokenCrCrLf; locked 66% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 283 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.tokenCrLf; locked 75% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 282 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.tokenError; locked 66% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 288 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.tokenNoAnswer; locked 66% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 291 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.tokenNoCarrier; locked 66% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 287 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.tokenNoDialtone; locked 66% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 289 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.tokenOk; locked 66% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 284 Medium
Inconsistent synchronization of net.sf.atmodem4j.core.parser.Parser.tokenRing; locked 66% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 286 Medium
Private method net.sf.atmodem4j.core.parser.Parser.matchResult(String) is never called PERFORMANCE UPM_UNCALLED_PRIVATE_METHOD 423 Low
Unread field: net.sf.atmodem4j.core.parser.Parser.os PERFORMANCE URF_UNREAD_FIELD 273 Medium

net.sf.atmodem4j.core.parser.Parser$ConnectionInputStream

Bug Category Details Line Priority
Should net.sf.atmodem4j.core.parser.Parser$ConnectionInputStream be a _static_ inner class? PERFORMANCE SIC_INNER_SHOULD_BE_STATIC 156-222 Medium
Wait not in loop in net.sf.atmodem4j.core.parser.Parser$ConnectionInputStream.read() MT_CORRECTNESS WA_NOT_IN_LOOP 202 Medium

net.sf.atmodem4j.core.parser.ResultCodeToken

Bug Category Details Line Priority
net.sf.atmodem4j.core.parser.ResultCodeToken.getData() may expose internal representation by returning ResultCodeToken.data MALICIOUS_CODE EI_EXPOSE_REP 61 Medium
new net.sf.atmodem4j.core.parser.ResultCodeToken(String, String[], String) may expose internal representation by storing an externally mutable object into ResultCodeToken.data MALICIOUS_CODE EI_EXPOSE_REP2 56 Medium