Last Msg First Msg
























method com.dmdirc.parser.irc.IRCParser$1__static_init

method com.dmdirc.parser.irc.IRCParser__static_init










method void com.dmdirc.parser.irc.IRCParser$1(IRCParser)










method X509Certificate[] getAcceptedIssuers()
postreturn_value == null










method void checkClientTrusted(X509Certificate[], String)










method void checkServerTrusted(X509Certificate[], String)










method void com.dmdirc.parser.irc.IRCParser()









  call too complex - analysis skippedInfocall on void com.dmdirc.parser.irc.IRCParser(MyInfo , ServerInfo)











method void com.dmdirc.parser.irc.IRCParser(ServerInfo)









  call too complex - analysis skippedInfocall on void com.dmdirc.parser.irc.IRCParser(MyInfo , ServerInfo)











method void com.dmdirc.parser.irc.IRCParser(MyInfo)









  call too complex - analysis skippedInfocall on void com.dmdirc.parser.irc.IRCParser(MyInfo , ServerInfo)











method void com.dmdirc.parser.irc.IRCParser(MyInfo, ServerInfo)
pre(soft) com.dmdirc.parser.irc.callbacks. CallbackManager__static_init.new Class[](CallbackMa nager__static_init#1)[...] != null
postjava.lang.StringBuilder:toString(...)._tainted == 0
postinit'ed(this.addLastLine)
postthis.autoListMode == 1
postthis.disconnectOnFatal == 1
postthis.nNextKeyCMBool == 1
postthis.nNextKeyPrefix == 1
postthis.nNextKeyUser == 1
postthis.removeAfterCallback == 1
postnew ArrayList(RegexStringList#1) num objects == 1
postnew AtomicBoolean(IRCParser#4) num objects == 1
postnew CallbackManager(IRCParser#16) num objects == 1
postnew ClientInfo(IRCParser#13) num objects == 1
postnew ClientInfo(IRCParser#13).bIsFake == 1
postnew ClientInfo(resetState#1) num objects == 1
postthis.cMyself.bIsFake == 1
postnew HashMap(ClientInfo#3) num objects == 1
postnew Hashtable(CallbackManager#1) num objects == 1
postnew Hashtable(ClientInfo#1) num objects == 1
postnew Hashtable(IRCParser#10) num objects == 1
postnew Hashtable(IRCParser#11) num objects == 1
postnew Hashtable(IRCParser#12) num objects == 1
postnew Hashtable(IRCParser#14) num objects == 1
postnew Hashtable(IRCParser#5) num objects == 1
postnew Hashtable(IRCParser#6) num objects == 1
postnew Hashtable(IRCParser#7) num objects == 1
postnew Hashtable(IRCParser#8) num objects == 1
postnew Hashtable(IRCParser#9) num objects == 1
postnew Hashtable(ProcessingManager#1) num objects == 1
postnew IRCParser$1(IRCParser#19) num objects == 1
postnew IRCStringConverter(updateCharArrays#1) num objects == 1
postnew LinkedList(ClientInfo#2) num objects == 1
postnew MyInfo(IRCParser#1) num objects == 1
postnew ProcessingManager(IRCParser#17) num objects == 1
postnew RegexStringList(IRCParser#15) num objects == 1
postnew Semaphore(IRCParser#3) num objects == 1
postnew ServerInfo(IRCParser#2) num objects == 1
postnew TrustManager[](IRCParser#18) num objects == 1
postthis.myTrustManager.length == 1
postnew char[](IRCStringConverter#1) num objects == 1
postnew char[](IRCStringConverter#2) num objects == 1
postthis.bindIP == &""
postthis.lastLine == &""
postthis.lastPingValue == &""
postthis.sNetworkName == &""
postthis.sServerName == &""
postnew ClientInfo(IRCParser#13).myAwayReason == &""
postnew ClientInfo(IRCParser#13).sRealName == &""
postthis.cMyself.myAwayReason == &""
postthis.cMyself.sRealName == &""
postnew ServerInfo(IRCParser#2).password == &""
postnew ServerInfo(IRCParser#2).proxyPass == &""
postnew ServerInfo(IRCParser#2).proxyUser == &""
postthis.cMyself == &new ClientInfo(resetState#1)
postinit'ed(this.createFake)
postthis.currentSocketState == &com.dmdirc.parser. irc.SocketState__static_init.new SocketState(Socket State__static_init#2)
postthis.got001 == 0
postthis.post005 == 0
postthis.triedAlt == 0
postthis.h005Info == &new Hashtable(IRCParser#14)
postthis.hChanModesBool == &new Hashtable(IRCParser #8)
postthis.hChanModesOther == &new Hashtable(IRCParse r#9)
postthis.hChanPrefix == &new Hashtable(IRCParser#10 )
postthis.hChannelList == &new Hashtable(IRCParser#1 2)
postthis.hClientList == &new Hashtable(IRCParser#11 )
postthis.hPrefixMap == &new Hashtable(IRCParser#6)
postthis.hPrefixModes == &new Hashtable(IRCParser#5 )
postthis.hUserModes == &new Hashtable(IRCParser#7)
postthis.me == One-of{&new MyInfo(IRCParser#1), myDetails}
postthis.me != null
postthis.myCallbackManager == &new CallbackManager( IRCParser#16)
postthis.myIgnoreList == &new RegexStringList(IRCPa rser#15)
postthis.myProcessingManager == &new ProcessingManager(IRCParser#17)
postthis.myTrustManager == &new TrustManager[](IRCP arser#18)
postthis.trustAllCerts == &new TrustManager[](IRCPa rser#18)
postthis.pingCountDownLength == 6
postthis.pingNeeded == &new AtomicBoolean(IRCParser #4)
postthis.pingTimer == null
postthis.pingTimerLength == 10_000
postthis.pingTimerSem == &new Semaphore(IRCParser#3 )
postthis.server == One-of{&new ServerInfo(IRCParser #2), serverDetails}
postthis.server != null
postthis.stringConverter == &new IRCStringConverter (updateCharArrays#1)
postthis.myCallbackManager.callbackHash == &new Hashtable(CallbackManager#1)
postthis.myCallbackManager.myParser == this
postthis.myCallbackManager.myParser != null
postnew ClientInfo(IRCParser#13).myParser == this.myCallbackManager.myParser
postthis.cMyself.myParser == this.myCallbackManager. myParser
postthis.myProcessingManager.myParser == this.myCallbackManager.myParser
postnew ClientInfo(IRCParser#13).lModeQueue == &new LinkedList(ClientInfo#2)
postnew ClientInfo(IRCParser#13).myChannelClientInfos == &new Hashtable(ClientInfo#1)
postnew ClientInfo(IRCParser#13).myMap == &new HashMap(ClientInfo#3)
postnew ClientInfo(IRCParser#13).sHost == One-of{this.bindIP, undefined}
postnew ClientInfo(IRCParser#13).sHost in Addr_Set{null,&""}
postnew ClientInfo(IRCParser#13).sIdent == One-of{this.bindIP, undefined}
postnew ClientInfo(IRCParser#13).sIdent in Addr_Set{null,&""}
postinit'ed(new ClientInfo(IRCParser#13).sNickname)
postthis.cMyself.lModeQueue == &new LinkedList(ClientInfo#2)
postthis.cMyself.myChannelClientInfos == &new Hashtable(ClientInfo#1)
postthis.cMyself.myMap == &new HashMap(ClientInfo#3 )
postthis.cMyself.sHost == One-of{this.bindIP, undefined}
postthis.cMyself.sHost in Addr_Set{null,&""}
postthis.cMyself.sIdent == One-of{this.bindIP, undefined}
postthis.cMyself.sIdent in Addr_Set{null,&""}
postthis.cMyself.sNickname == undefined
postthis.cMyself.sNickname == null
postthis.stringConverter.limit == 4
postthis.stringConverter.lowercase == &new char[](IRCStringConverter#1)
postthis.stringConverter.uppercase == &new char[](IRCStringConverter#2)
postnew MyInfo(IRCParser#1).altNickname == One-of{&"IRC-Parser", &java.lang. StringBuilder:toString(...)}
postnew MyInfo(IRCParser#1).altNickname in Addr_Set{&"IRC-Parser",&java.lang. StringBuilder:toString(...)}
postnew MyInfo(IRCParser#1).nickname != null
postnew MyInfo(IRCParser#1).prependChar == 95
postnew MyInfo(IRCParser#1).realname == One-of{&"DMDIrc IRCParser", &java.lang. StringBuilder:toString(...)}
postnew MyInfo(IRCParser#1).realname in Addr_Set{&"DMDIrc IRCParser",&java.lang. StringBuilder:toString(...)}
postnew MyInfo(IRCParser#1).username != null
postthis.myProcessingManager.processHash == &new Hashtable(ProcessingManager#1)
postthis.myIgnoreList.ignoreInfo == &new ArrayList(RegexStringList#1)
postnew ServerInfo(IRCParser#2).host == &"irc.quakenet.org"
postinit'ed(new ServerInfo(IRCParser#2).isSSL)
postnew ServerInfo(IRCParser#2).port == 6_667
postnew ServerInfo(IRCParser#2).proxyHost == &"127.0.0.1"
postnew ServerInfo(IRCParser#2).proxyPort == 1_080
postinit'ed(new ServerInfo(IRCParser#2).useSocksProxy)
postthis.myTrustManager[0] == &new IRCParser$1(IRCP arser#19)
postthis.stringConverter.lowercase.length == 127
postthis.stringConverter.uppercase.length == 127
postpossibly_updated(this.stringConverter.lowercase[...])
postpossibly_updated(this.stringConverter.uppercase[...])
unanalyzedcall on java.util.concurrent.Semaphore:acquireUnint erruptibly
unanalyzedcall on java.util.Timer:cancel
unanalyzedcall on java.util.concurrent.Semaphore:release
unanalyzedcall on java.util.Map:clear
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get
unanalyzedcall on call
unanalyzedcall on callDebugInfo
unanalyzedcall on com.dmdirc.parser.irc.ClientInfo
unanalyzedcall on setFake
unanalyzedcall on java.lang.String:format
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.util.Hashtable:containsKey
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.lang.System:getProperty
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.util.ArrayList
unanalyzedcall on java.lang.Class:getSimpleName
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.util.Map:put
unanalyzedcall on java.util.Hashtable
unanalyzedcall on java.lang.Class:isAnnotationPresent
unanalyzedcall on java.lang.Class:asSubclass
unanalyzedcall on java.lang.Object:getClass
unanalyzedcall on java.lang.Class:getPackage
unanalyzedcall on java.lang.Package:getName
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.Class:getName
unanalyzedcall on doDebug
unanalyzedcall on java.util.Hashtable:remove
unanalyzedcall on java.util.Hashtable:put
unanalyzedcall on handles
unanalyzedcall on com.dmdirc.parser.irc.IRCProcessor
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.LinkedList
unanalyzedcall on java.util.HashMap
test_vectormyDetails: Addr_Set{null}, Inverse{null}
test_vectorserverDetails: Addr_Set{null}, Inverse{null}










method String getBindIP()
preinit'ed(this.bindIP)
postreturn_value == this.bindIP
postinit'ed(return_value)










method void setBindIP(String)
postthis.bindIP == newValue
postinit'ed(this.bindIP)










method bool getCreateFake()
preinit'ed(this.createFake)
postreturn_value == this.createFake
postinit'ed(return_value)










method void setCreateFake(bool)
postthis.createFake == newValue
postinit'ed(this.createFake)










method bool getAutoListMode()
preinit'ed(this.autoListMode)
postreturn_value == this.autoListMode
postinit'ed(return_value)










method void setAutoListMode(bool)
postthis.autoListMode == newValue
postinit'ed(this.autoListMode)










method bool getRemoveAfterCallback()
preinit'ed(this.removeAfterCallback)
postreturn_value == this.removeAfterCallback
postinit'ed(return_value)










method void setRemoveAfterCallback(bool)
postthis.removeAfterCallback == newValue
postinit'ed(this.removeAfterCallback)










method bool getAddLastLine()
preinit'ed(this.addLastLine)
postreturn_value == this.addLastLine
postinit'ed(return_value)










method void setAddLastLine(bool)
postthis.addLastLine == newValue
postinit'ed(this.addLastLine)










method SocketState getSocketState()
preinit'ed(this.currentSocketState)
postreturn_value == this.currentSocketState
postinit'ed(return_value)










method ProcessingManager getProcessingManager()
preinit'ed(this.myProcessingManager)
postreturn_value == this.myProcessingManager
postinit'ed(return_value)










method CallbackManager getCallbackManager()
preinit'ed(this.myCallbackManager)
postreturn_value == this.myCallbackManager
postinit'ed(return_value)










method TrustManager[] getDefaultTrustManager()
postreturn_value == this.trustAllCerts
postinit'ed(return_value)










method TrustManager[] getTrustManager()
preinit'ed(this.myTrustManager)
postreturn_value == this.myTrustManager
postinit'ed(return_value)










method void setTrustManager(TrustManager[])
postthis.myTrustManager == newTrustManager
postinit'ed(this.myTrustManager)










method void setKeyManagers(KeyManager[])
postthis.myKeyManagers == newKeyManagers
postinit'ed(this.myKeyManagers)










method RegexStringList getIgnoreList()
preinit'ed(this.myIgnoreList)
postreturn_value == this.myIgnoreList
postinit'ed(return_value)










method void setIgnoreList(RegexStringList)
postthis.myIgnoreList == ignoreList
postinit'ed(this.myIgnoreList)










method bool callServerError(String)
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
postinit'ed(return_value)
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get









Prev Msg Next Msg
  null dereference
Medium Prob.
check that getCallbackType(...) != null
  call too complex - analysis skippedInfocall on bool call(Object[])
Prev Msg Next Msg











method bool callDataIn(String)
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
postinit'ed(return_value)
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get









Prev Msg Next Msg
  null dereference
Medium Prob.
check that getCallbackType(...) != null
  call too complex - analysis skippedInfocall on bool call(Object[])
Prev Msg Next Msg











method bool callDataOut(String, bool)
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
postinit'ed(return_value)
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get









Prev Msg Next Msg
  null dereference
Medium Prob.
check that getCallbackType(...) != null
  call too complex - analysis skippedInfocall on bool call(Object[])
Prev Msg Next Msg











method bool callDebugInfo(int, String, Object[])
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
postinit'ed(return_value)
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get
unanalyzedcall on call
unanalyzedcall on java.lang.Integer:valueOf










method bool callDebugInfo(int, String)
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
postinit'ed(return_value)
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get









Prev Msg Next Msg
  null dereference
Medium Prob.
check that getCallbackType(...) != null
  call too complex - analysis skippedInfocall on bool call(Object[])
Prev Msg Next Msg











method bool callErrorInfo(ParserError)
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
postinit'ed(return_value)
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get









Prev Msg Next Msg
  null dereference
Medium Prob.
check that getCallbackType(...) != null
  call too complex - analysis skippedInfocall on bool call(Object[])
Prev Msg Next Msg











method bool callConnectError(ParserError)
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
postinit'ed(return_value)
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get









Prev Msg Next Msg
  null dereference
Medium Prob.
check that getCallbackType(...) != null
  call too complex - analysis skippedInfocall on bool call(Object[])
Prev Msg Next Msg











method bool callSocketClosed()
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
postinit'ed(return_value)
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get









Prev Msg Next Msg
  null dereference
Medium Prob.
check that getCallbackType(...) != null
  call too complex - analysis skippedInfocall on bool call(Object[])
Prev Msg Next Msg











method bool callPingFailed()
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
postinit'ed(return_value)
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get









Prev Msg Next Msg
  null dereference
Medium Prob.
check that getCallbackType(...) != null
  call too complex - analysis skippedInfocall on bool call(Object[])
Prev Msg Next Msg











method bool callPingSent()
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
postinit'ed(return_value)
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get









Prev Msg Next Msg
  null dereference
Medium Prob.
check that getCallbackType(...) != null
  call too complex - analysis skippedInfocall on bool call(Object[])
Prev Msg Next Msg











method bool callPingSuccess()
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
postinit'ed(return_value)
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get









Prev Msg Next Msg
  null dereference
Medium Prob.
check that getCallbackType(...) != null
  call too complex - analysis skippedInfocall on bool call(Object[])
Prev Msg Next Msg











method bool callPost005()
preinit'ed(this.post005)
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
postinit'ed(return_value)
postthis.post005 == 1
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get
test_vectorthis.post005: {0}, {1}









Prev Msg Next Msg
  null dereference
Medium Prob.
check that getCallbackType(...) != null
  call too complex - analysis skippedInfocall on bool call(Object[])
Prev Msg Next Msg











method void resetState()
preinit'ed(this.pingTimer)
prethis.h005Info != null
prethis.hChanModesBool != null
prethis.hChanModesOther != null
prethis.hChanPrefix != null
prethis.hChannelList != null
prethis.hClientList != null
prethis.hPrefixMap != null
prethis.hPrefixModes != null
prethis.hUserModes != null
prethis.pingTimerSem != null
postthis.cMyself == &new ClientInfo(resetState#1)
postthis.currentSocketState == &com.dmdirc.parser. irc.SocketState__static_init.new SocketState(Socket State__static_init#2)
postthis.got001 == 0
postthis.post005 == 0
postthis.triedAlt == 0
postthis.lastLine == &""
postthis.sNetworkName == &""
postthis.sServerName == &""
postthis.cMyself.myAwayReason == &""
postthis.cMyself.sRealName == &""
postthis.nNextKeyCMBool == 1
postthis.nNextKeyPrefix == 1
postthis.nNextKeyUser == 1
postnew ClientInfo(resetState#1) num objects == 1
postthis.cMyself.bIsFake == 1
postnew HashMap(ClientInfo#3) num objects == 1
postnew Hashtable(ClientInfo#1) num objects == 1
postnew IRCStringConverter(updateCharArrays#1) num objects == 1
postnew LinkedList(ClientInfo#2) num objects == 1
postnew char[](IRCStringConverter#1) num objects == 1
postnew char[](IRCStringConverter#2) num objects == 1
postthis.pingTimer == null
postthis.stringConverter == &new IRCStringConverter (updateCharArrays#1)
postthis.cMyself.lModeQueue == &new LinkedList(ClientInfo#2)
postthis.cMyself.myChannelClientInfos == &new Hashtable(ClientInfo#1)
postthis.cMyself.myMap == &new HashMap(ClientInfo#3 )
postthis.cMyself.myParser == this
postthis.cMyself.myParser != null
postthis.cMyself.sHost == One-of{this.lastLine, undefined}
postthis.cMyself.sHost in Addr_Set{null,&""}
postthis.cMyself.sIdent == One-of{this.lastLine, undefined}
postthis.cMyself.sIdent in Addr_Set{null,&""}
postthis.cMyself.sNickname == undefined
postthis.cMyself.sNickname == null
postnew IRCStringConverter(updateCharArrays#1).limit == 4
postnew IRCStringConverter(updateCharArrays#1). lowercase == &new char[](IRCStringConverter#1)
postnew IRCStringConverter(updateCharArrays#1). uppercase == &new char[](IRCStringConverter#2)
postnew char[](IRCStringConverter#1).length == 127
postnew char[](IRCStringConverter#2).length == 127
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.Hashtable
unanalyzedcall on java.util.LinkedList
unanalyzedcall on java.util.HashMap
test_vectorthis.pingTimer: Addr_Set{null}, Inverse{null}










method void onPostErrorInfo(ParserError, bool)
preerrorInfo != null
preinit'ed(errorInfo.errorLevel)
pre(soft) init'ed(this.cMyself)
pre(soft) init'ed(this.currentSocketState)
pre(soft) init'ed(this.pingTimer)
pre(soft) init'ed(this.stringConverter)
pre(soft) init'ed(this.disconnectOnFatal)
postthis.cMyself == old this.cMyself
postthis.currentSocketState == old this. currentSocketState
postthis.got001 == old this.got001
postthis.lastLine == old this.lastLine
postthis.nNextKeyCMBool == old this.nNextKeyCMBool
postthis.nNextKeyPrefix == old this.nNextKeyPrefix
postthis.nNextKeyUser == old this.nNextKeyUser
postthis.pingTimer == old this.pingTimer
postthis.post005 == old this.post005
postthis.sNetworkName == old this.sNetworkName
postthis.sServerName == old this.sServerName
postthis.stringConverter == old this.stringConverter
postthis.triedAlt == old this.triedAlt
postnew IRCStringConverter(getIRCStringConverter#1) num objects == undefined
postnew IRCStringConverter(getIRCStringConverter#1) num objects == 0, if init'ed
postnew IRCStringConverter(getIRCStringConverter#1). limit == new IRCStringConverter(getIRCStringConvert er#1) num objects
postnew IRCStringConverter(updateCharArrays#1) num objects == new IRCStringConverter(getIRCStringConv erter#1) num objects
postnew IRCStringConverter(updateCharArrays#1).limit == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#1).length == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#1)[...] == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2).length == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2)[...] == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == undefined
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == null
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == new IRCStringConverter(getIRCStringCon verter#1).lowercase
postnew IRCStringConverter(updateCharArrays#1). lowercase == new IRCStringConverter(getIRCStringCon verter#1).lowercase
postnew IRCStringConverter(updateCharArrays#1). uppercase == new IRCStringConverter(getIRCStringCon verter#1).lowercase
test_vectorerrorInfo.errorLevel mod 2: {0}, {1}
test_vectorthis.disconnectOnFatal: {0}, {1}









  call too complex - analysis skippedInfocall on void disconnect(String)











method bool getDisconnectOnFatal()
preinit'ed(this.disconnectOnFatal)
postreturn_value == this.disconnectOnFatal
postinit'ed(return_value)










method void setDisconnectOnFatal(bool)
postthis.disconnectOnFatal == newValue
postinit'ed(this.disconnectOnFatal)










method void connect()
preinit'ed(this.pingTimer)
prethis.h005Info != null
prethis.hChanModesBool != null
prethis.hChanModesOther != null
prethis.hChanPrefix != null
prethis.hChannelList != null
prethis.hClientList != null
prethis.hPrefixMap != null
prethis.hPrefixModes != null
prethis.hUserModes != null
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
prethis.pingTimerSem != null
prethis.server != null
preinit'ed(this.server.host)
preinit'ed(this.server.isSSL)
prethis.server.port in {1..216-1}
preinit'ed(this.server.useSocksProxy)
pre(soft) init'ed(com/dmdirc/parser/irc/IRCAuthenticat or.me)
pre(soft) init'ed(this.myTrustManager)
pre(soft) this.socket != null
pre(soft) init'ed(this.bindIP)
pre(soft) init'ed(this.myKeyManagers)
pre(soft) this.server.proxyHost != null
pre(soft) init'ed(this.server.proxyPass)
pre(soft) this.server.proxyPort in {1..216-1}
pre(soft) init'ed(this.server.proxyUser)
presumptiongetIRCAuthenticator(...).replies != null
presumptioninit'ed(java.net.Proxy$Type.SOCKS)
presumptionjavax.net.ssl.SSLContext:getInstance(...)@680 != null
presumptionjavax.net.ssl.SSLContext:getSocketFactory(...)@683 != null
presumptionjavax.net.ssl.SSLSocketFactory:createSocket(... )@685 != null
presumptionjavax.net.ssl.SSLSocketFactory:createSocket(... )@688 != null
presumptionjavax.net.ssl.SSLSocketFactory:createSocket(... )@692 != null
presumptionjavax.net.ssl.SSLSocketFactory:createSocket(... )@695 != null
postcom/dmdirc/parser/irc/IRCAuthenticator.me == One-of{old com/dmdirc/parser/irc/IRCAuthenticator. me, &new IRCAuthenticator(getIRCAuthenticator#1 )}
postinit'ed(com/dmdirc/parser/irc/IRCAuthenticator.me)
postthis.cMyself == &new ClientInfo(resetState#1)
postthis.currentSocketState in Addr_Set{&com. dmdirc.parser.irc.SocketState__static_init.new SocketState(SocketState__static_init#2),&com. dmdirc.parser.irc.SocketState__static_init.new SocketState(SocketState__static_init#3)}
postthis.got001 == 0
postthis.post005 == 0
postthis.triedAlt == 0
postthis.in == &new BufferedReader(connect#19)
postthis.lastLine == &""
postthis.sNetworkName == &""
postthis.sServerName == &""
postnew ClientInfo(resetState#1).myAwayReason == &""
postnew ClientInfo(resetState#1).sRealName == &""
postthis.myTrustManager == One-of{old this. myTrustManager, this.trustAllCerts}
postinit'ed(this.myTrustManager)
postthis.nNextKeyCMBool == 1
postthis.nNextKeyPrefix == 1
postthis.nNextKeyUser == 1
postnew ClientInfo(resetState#1) num objects == 1
postnew ClientInfo(resetState#1).bIsFake == 1
postnew HashMap(ClientInfo#3) num objects == 1
postnew Hashtable(ClientInfo#1) num objects == 1
postnew IRCStringConverter(updateCharArrays#1) num objects == 1
postnew LinkedList(ClientInfo#2) num objects == 1
postnew char[](IRCStringConverter#1) num objects == 1
postnew char[](IRCStringConverter#2) num objects == 1
postthis.out == &new PrintWriter(connect#18)
postthis.pingTimer == null
postthis.socket != null
postthis.stringConverter == &new IRCStringConverter (updateCharArrays#1)
postnew BufferedReader(connect#19) num objects == 1
postnew ClientInfo(resetState#1).lModeQueue == &new LinkedList(ClientInfo#2)
postnew ClientInfo(resetState#1).myChannelClientInfos == &new Hashtable(ClientInfo#1)
postnew ClientInfo(resetState#1).myMap == &new HashMap(ClientInfo#3)
postnew ClientInfo(resetState#1).myParser == this
postnew ClientInfo(resetState#1).myParser != null
postnew ClientInfo(resetState#1).sHost == One-of{this.lastLine, undefined}
postnew ClientInfo(resetState#1).sHost in Addr_Set{null,&""}
postnew ClientInfo(resetState#1).sIdent == One-of{this.lastLine, undefined}
postnew ClientInfo(resetState#1).sIdent in Addr_Set{null,&""}
postinit'ed(new ClientInfo(resetState#1).sNickname)
postnew HashMap(IRCAuthenticator#1) num objects <= 1
postnew IRCAuthenticator(getIRCAuthenticator#1) num objects <= 1
postinit'ed(new IRCAuthenticator(getIRCAuthenticator#1) .replies)
postnew IRCStringConverter(updateCharArrays#1).limit == 4
postnew IRCStringConverter(updateCharArrays#1). lowercase == &amp;new char[](IRCStringConverter#1)
postnew IRCStringConverter(updateCharArrays#1). uppercase == &amp;new char[](IRCStringConverter#2)
postnew PrintWriter(connect#18) num objects == 1
postnew Socket(connect#10) num objects <= 1
postnew Socket(connect#6) num objects <= 1
postnew char[](IRCStringConverter#1).length == 127
postnew char[](IRCStringConverter#2).length == 127
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.concurrent.Semaphore:acquireUnint erruptibly
unanalyzedcall on java.util.Timer:cancel
unanalyzedcall on java.util.concurrent.Semaphore:release
unanalyzedcall on java.util.Map:clear
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get
unanalyzedcall on call
unanalyzedcall on com.dmdirc.parser.irc.ClientInfo
unanalyzedcall on setFake
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.net.Authenticator
unanalyzedcall on java.util.HashMap
unanalyzedcall on java.net.Authenticator:setDefault
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.net.PasswordAuthentication
unanalyzedcall on java.util.Map:remove
unanalyzedcall on java.util.Map:put
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.Hashtable
unanalyzedcall on java.util.LinkedList
test_vectorthis.myTrustManager: Inverse{null}, Addr_Set{null}
test_vectorthis.bindIP: Addr_Set{null}, Inverse{null}
test_vectorthis.server.isSSL: {1}, {0}
test_vectorthis.server.proxyUser: Addr_Set{null}, Inverse{null}
test_vectorthis.server.useSocksProxy: {0}, {1}
test_vectorjava.lang.String:isEmpty(...)@642: {1}, {0}
test_vectorjava.lang.String:isEmpty(...)@652: {1}, {0}
test_vectorjava.lang.String:isEmpty(...)@661: {1}, {0}
test_vectorjava.lang.String:isEmpty(...)@687: {0}, {1}










method void sendConnectionStrings()
preinit'ed(this.me.nickname)
preinit'ed(this.currentSocketState)
prethis.me != null
preinit'ed(this.me.realname)
preinit'ed(this.me.username)
prethis.server != null
preinit'ed(this.server.host)
prethis.server.password != null
pre(soft) init'ed(this.stringConverter)
pre(soft) this.cMyself != null
pre(soft) init'ed(this.cMyself.bIsFake)
pre(soft) this.cMyself.sNickname != null
pre(soft) this.hChanModesOther != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
presumptionjava.net.InetAddress:getLocalHost(...)@720 != null
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postthis.me.nickname == old this.me.nickname
postinit'ed(this.me.nickname)
postthis.sThinkNickname == One-of{old this. sThinkNickname, old this.me.nickname}
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew char[](IRCStringConverter#1) num objects <= 1
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on isFake
unanalyzedcall on getNickname
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.String:equals
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis
test_vectorjava.lang.String:isEmpty(...)@714: {1}, {0}










method void handleConnectException(Exception)
pree != null
preinit'ed(this.currentSocketState)
preinit'ed(this.lastLine)
preinit'ed(this.pingTimer)
prethis.h005Info != null
prethis.hChanModesBool != null
prethis.hChanModesOther != null
prethis.hChanPrefix != null
prethis.hChannelList != null
prethis.hClientList != null
prethis.hPrefixMap != null
prethis.hPrefixModes != null
prethis.hUserModes != null
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
prethis.pingTimerSem != null
postthis.cMyself == &amp;new ClientInfo(resetState#1)
postthis.currentSocketState == &amp;com.dmdirc.parser. irc.SocketState__static_init.new SocketState(Socket State__static_init#2)
postthis.got001 == 0
postthis.post005 == 0
postthis.triedAlt == 0
postthis.lastLine == &amp;""
postthis.sNetworkName == &amp;""
postthis.sServerName == &amp;""
postthis.cMyself.myAwayReason == &amp;""
postthis.cMyself.sRealName == &amp;""
postthis.nNextKeyCMBool == 1
postthis.nNextKeyPrefix == 1
postthis.nNextKeyUser == 1
postnew ClientInfo(resetState#1) num objects == 1
postthis.cMyself.bIsFake == 1
postnew HashMap(ClientInfo#3) num objects == 1
postnew Hashtable(ClientInfo#1) num objects == 1
postnew IRCStringConverter(updateCharArrays#1) num objects == 1
postnew LinkedList(ClientInfo#2) num objects == 1
postnew char[](IRCStringConverter#1) num objects == 1
postnew char[](IRCStringConverter#2) num objects == 1
postthis.pingTimer == null
postthis.stringConverter == &amp;new IRCStringConverter (updateCharArrays#1)
postthis.cMyself.lModeQueue == &amp;new LinkedList(ClientInfo#2)
postthis.cMyself.myChannelClientInfos == &amp;new Hashtable(ClientInfo#1)
postthis.cMyself.myMap == &amp;new HashMap(ClientInfo#3 )
postthis.cMyself.myParser == this
postthis.cMyself.myParser != null
postthis.cMyself.sHost == One-of{this.lastLine, undefined}
postthis.cMyself.sHost in Addr_Set{null,&amp;""}
postthis.cMyself.sIdent == One-of{this.lastLine, undefined}
postthis.cMyself.sIdent in Addr_Set{null,&amp;""}
postthis.cMyself.sNickname == undefined
postthis.cMyself.sNickname == null
postthis.stringConverter.limit == 4
postthis.stringConverter.lowercase == &amp;new char[](IRCStringConverter#1)
postthis.stringConverter.uppercase == &amp;new char[](IRCStringConverter#2)
postthis.stringConverter.lowercase.length == 127
postthis.stringConverter.uppercase.length == 127
postpossibly_updated(this.stringConverter.lowercase[...])
postpossibly_updated(this.stringConverter.uppercase[...])
unanalyzedcall on java.util.concurrent.Semaphore:acquireUnint erruptibly
unanalyzedcall on java.util.Timer:cancel
unanalyzedcall on java.util.concurrent.Semaphore:release
unanalyzedcall on java.util.Map:clear
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get
unanalyzedcall on call
unanalyzedcall on com.dmdirc.parser.irc.ClientInfo
unanalyzedcall on setFake
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.Hashtable
unanalyzedcall on java.util.LinkedList
unanalyzedcall on java.util.HashMap










method void run()
preinit'ed(this.hasBegan)
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
pre(soft) init'ed(com/dmdirc/parser/irc/IRCAuthenticat or.me)
pre(soft) init'ed(this.currentSocketState)
pre(soft) init'ed(this.lastLine)
pre(soft) this.lastPingValue != null
pre(soft) init'ed(this.me.nickname)
pre(soft) init'ed(this.myTrustManager)
pre(soft) init'ed(this.pingTimer)
pre(soft) this.socket != null
pre(soft) init'ed(this...lastLine)
pre(soft) this...myCallbackManager != null
pre(soft) this...myCallbackManager.callbackHash != null
pre(soft) init'ed(this.bindIP)
pre(soft) this.h005Info != null
pre(soft) this.hChanModesBool != null
pre(soft) this.hChanModesOther != null
pre(soft) this.hChanPrefix != null
pre(soft) this.hChannelList != null
pre(soft) this.hClientList != null
pre(soft) this.hPrefixMap != null
pre(soft) this.hPrefixModes != null
pre(soft) this.hUserModes != null
pre(soft) this.me != null
pre(soft) init'ed(this.me.realname)
pre(soft) init'ed(this.me.username)
pre(soft) init'ed(this.myKeyManagers)
pre(soft) this.myProcessingManager != null
pre(soft) this.myProcessingManager.myParser != null
pre(soft) this.myProcessingManager.processHash != null
pre(soft) this.pingNeeded != null
pre(soft) init'ed(this.pingTime)
pre(soft) this.pingTimerSem != null
pre(soft) this.server != null
pre(soft) init'ed(this.server.host)
pre(soft) init'ed(this.server.isSSL)
pre(soft) this.server.password != null
pre(soft) this.server.port in {1..216-1}
pre(soft) this.server.proxyHost != null
pre(soft) init'ed(this.server.proxyPass)
pre(soft) this.server.proxyPort in {1..216-1}
pre(soft) init'ed(this.server.proxyUser)
pre(soft) init'ed(this.server.useSocksProxy)
presumptionnew ClientInfo(resetState#1).sNickname@754 != null
postcom/dmdirc/parser/irc/IRCAuthenticator.me == One-of{old com/dmdirc/parser/irc/IRCAuthenticator. me, &amp;new IRCAuthenticator(getIRCAuthenticator#1 )}
postinit'ed(com/dmdirc/parser/irc/IRCAuthenticator.me)
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(java.lang.String:substring(...)._ tainted)
postthis.cMyself == One-of{old this.cMyself, &amp;new ClientInfo(resetState#1)}
postinit'ed(this.cMyself.myAwayReason)
postthis.currentSocketState == One-of{old this.currentSocketState, &amp;com.dmdirc.parser. irc.SocketState__static_init.new SocketState(Socket State__static_init#2)}
postinit'ed(this.currentSocketState)
postpossibly_updated(this.got001)
postthis.hasBegan == 1
postthis.in == One-of{old this.in, &amp;new BufferedReader(connect#19)}
postthis.lastLine == One-of{old this.lastLine, &amp;""}
postinit'ed(this.lastLine)
postpossibly_updated(this.lastPingValue)
postinit'ed(this.me.nickname)
postthis.myTrustManager == One-of{old this. myTrustManager, this.trustAllCerts}
postinit'ed(this.myTrustManager)
postthis.nNextKeyCMBool == One-of{old this. nNextKeyCMBool, 1}
postthis.nNextKeyPrefix == One-of{old this. nNextKeyPrefix, 1}
postthis.nNextKeyUser == One-of{old this.nNextKeyUser, 1}
postthis.out == One-of{old this.out, &amp;new PrintWriter(connect#18)}
postthis.pingTimer == One-of{old this.pingTimer, null}
postinit'ed(this.pingTimer)
postpossibly_updated(this.post005)
postthis.sNetworkName == One-of{old this.sNetworkName, &amp;""}
postthis.sServerName == One-of{old this.sServerName, &amp;""}
postthis.sThinkNickname == One-of{old this. sThinkNickname, old this.me.nickname}
postpossibly_updated(this.serverLag)
postthis.socket != null
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(update CharArrays#1)}
postpossibly_updated(this.triedAlt)
postnew BufferedReader(connect#19) num objects <= 1
postnew ClientInfo(resetState#1) num objects <= 1
postinit'ed(new ClientInfo(resetState#1).bIsFake)
postinit'ed(new ClientInfo(resetState#1).lModeQueue)
postinit'ed(new ClientInfo(resetState#1).myAwayReason)
postpossibly_updated(new ClientInfo(resetState#1). myAwayReason)
postinit'ed(new ClientInfo(resetState#1). myChannelClientInfos)
postinit'ed(new ClientInfo(resetState#1).myMap)
postinit'ed(new ClientInfo(resetState#1).myParser)
postpossibly_updated(new ClientInfo(resetState#1). sHost)
postpossibly_updated(new ClientInfo(resetState#1). sIdent)
postpossibly_updated(new ClientInfo(resetState#1). sNickname)
postinit'ed(new ClientInfo(resetState#1).sNickname)
postinit'ed(new ClientInfo(resetState#1).sRealName)
postnew HashMap(ClientInfo#3) num objects <= 1
postnew HashMap(IRCAuthenticator#1) num objects <= 1
postnew Hashtable(ClientInfo#1) num objects <= 1
postnew IRCAuthenticator(getIRCAuthenticator#1) num objects <= 1
postinit'ed(new IRCAuthenticator(getIRCAuthenticator#1) .replies)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postpossibly_updated(new IRCStringConverter(getIRCStrin gConverter#1) num objects)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew IRCStringConverter(updateCharArrays#1) num objects <= 1
postinit'ed(new IRCStringConverter(updateCharArrays#1). limit)
postinit'ed(new IRCStringConverter(updateCharArrays#1). lowercase)
postinit'ed(new IRCStringConverter(updateCharArrays#1). uppercase)
postnew LinkedList(ClientInfo#2) num objects <= 1
postnew PrintWriter(connect#18) num objects <= 1
postnew Socket(connect#10) num objects <= 1
postnew Socket(connect#6) num objects <= 1
postnew char[](IRCStringConverter#1) num objects <= 1
postpossibly_updated(new char[](IRCStringConverter#1) num objects)
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postinit'ed(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postpossibly_updated(new char[](IRCStringConverter#2) num objects)
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
postinit'ed(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.util.concurrent.atomic. AtomicBoolean:set
unanalyzedcall on java.util.concurrent.Semaphore:acquireUnint erruptibly
unanalyzedcall on java.util.Timer:cancel
unanalyzedcall on java.util.concurrent.Semaphore:release
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on isFake
unanalyzedcall on getNickname
unanalyzedcall on java.util.Map:clear
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.System:currentTimeMillis
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on getCallbackType
unanalyzedcall on call
unanalyzedcall on callSocketClosed
unanalyzedcall on resetState
unanalyzedcall on callDebugInfo
unanalyzedcall on java.lang.Integer:parseInt
unanalyzedcall on callErrorInfo
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.String:equals
unanalyzedcall on java.lang.Exception:getMessage
unanalyzedcall on callConnectError
unanalyzedcall on java.io.IOException:getMessage
unanalyzedcall on com.dmdirc.parser.irc.ClientInfo
unanalyzedcall on setFake
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on callPingSuccess
unanalyzedcall on callServerError
unanalyzedcall on java.util.Hashtable:containsKey
unanalyzedcall on java.util.Hashtable:get
unanalyzedcall on java.lang.Exception
unanalyzedcall on getCallbackManager
unanalyzedcall on process
unanalyzedcall on getLastLine
unanalyzedcall on java.io.IOException
unanalyzedcall on java.net.InetSocketAddress
unanalyzedcall on java.net.Proxy
unanalyzedcall on java.net.Socket
unanalyzedcall on java.net.Authenticator
unanalyzedcall on java.util.HashMap
unanalyzedcall on java.net.Authenticator:setDefault
unanalyzedcall on java.net.PasswordAuthentication
unanalyzedcall on java.util.Map:remove
unanalyzedcall on java.util.Map:put
unanalyzedcall on java.net.Socket:connect
unanalyzedcall on java.net.InetAddress:getByName
unanalyzedcall on java.net.Socket:bind
unanalyzedcall on javax.net.ssl.SSLContext:getInstance
unanalyzedcall on java.security.SecureRandom
unanalyzedcall on javax.net.ssl.SSLContext:init
unanalyzedcall on javax.net.ssl.SSLContext:getSocketFactory
unanalyzedcall on javax.net.ssl.SSLSocketFactory:createSocket
unanalyzedcall on java.net.UnknownHostException:getMessage
unanalyzedcall on java.net.Socket:getOutputStream
unanalyzedcall on java.io.PrintWriter
unanalyzedcall on java.net.Socket:getInputStream
unanalyzedcall on java.io.InputStreamReader
unanalyzedcall on java.io.BufferedReader
unanalyzedcall on java.net.InetAddress:getLocalHost
unanalyzedcall on java.net.InetAddress:getHostAddress
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.util.Hashtable
test_vectorthis.hasBegan: {0}, {1}
test_vectorjava.io.BufferedReader:readLine(...)@775: Inverse{null}, Addr_Set{null}










method int getLocalPort()
preinit'ed(this.currentSocketState)
pre(soft) this.socket != null
postinit'ed(return_value)










method void finalize()
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) this.socket != null
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get
unanalyzedcall on call
unanalyzedcall on java.lang.Integer:valueOf










method String getParam(String)
pre(soft) line != null
postreturn_value == undefined
postreturn_value == null









Prev Msg Next Msg
  array index out of bounds
High Prob.
check that (params.length - 1) >= 0
  use of default init
Low Prob.
check if init'ed(params.length)
Prev Msg Next Msg











method String[] tokeniseLine(String)
presumptionjava.lang.String:indexOf(...)@848 <= 232-3
postinit'ed(java.lang.String:split(...)._tainted)
postjava.lang.String:split(...)[...] == null
postinit'ed(java.lang.String:substring(...)._tainted)
postreturn_value in Addr_Set{&amp;java.lang. String:split(...),&amp;new String[](tokeniseLine#2) ,&amp;new String[](tokeniseLine#1)}
postnew String[](tokeniseLine#1) num objects <= 1
postnew String[](tokeniseLine#1).length == 1
postnew String[](tokeniseLine#1)[0] == &amp;""
postnew String[](tokeniseLine#2) num objects <= 1
postnew String[](tokeniseLine#2).length == 1
postnew String[](tokeniseLine#2)[...] == null
test_vectorline: Inverse{null}, Addr_Set{null}
test_vectorjava.lang.String:indexOf(...)@848: {-231. .-1}, {0..232-3}









Prev Msg Next Msg
  use of default init
Low Prob.
check if init'ed(temp.length)
Prev Msg Next Msg










Prev Msg Next Msg
  use of default init
Low Prob.
check if init'ed(temp.length)
Prev Msg Next Msg










Prev Msg Next Msg
  use of default init
Low Prob.
check if init'ed(temp.length)
Prev Msg Next Msg











method ClientInfo getClientInfo(String)
preinit'ed(this.stringConverter)
presHost != null
prethis.hClientList != null
pre(soft) this.stringConverter.lowercase != null
pre(soft) init'ed(this.stringConverter.lowercase[...])
presumptionparseHost(...)@870 init'ed
postinit'ed(return_value)
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postthis.stringConverter != null
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew IRCStringConverter(getIRCStringConverter#1). limit == 4
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == &amp;new char[](IRCStringConverter#1)
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == &amp;new char[](IRCStringConverter#2)
postnew char[](IRCStringConverter#1).length == 127
postnew char[](IRCStringConverter#2).length == 127
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
test_vectorjava.util.Map:containsKey(...)@871: {0}, {1}









Prev Msg Next Msg
  precondition failure
High Prob.
com/dmdirc/parser/irc/IRCStringConverter. toLowerCase: input != null
Prev Msg Next Msg











method ClientInfo getClientInfoOrFake(String)
preinit'ed(this.stringConverter)
presHost != null
prethis.hClientList != null
pre(soft) this.stringConverter.lowercase != null
pre(soft) init'ed(this.stringConverter.lowercase[...])
presumptionparseHost(...)@882 init'ed
postinit'ed(return_value)
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postthis.stringConverter != null
postnew ClientInfo(getClientInfoOrFake#1) num objects <= 1
postnew ClientInfo(getClientInfoOrFake#1).bIsFake == 1
postnew ClientInfo(getClientInfoOrFake#1).lModeQueue == &amp;new LinkedList(ClientInfo#2)
postnew ClientInfo(getClientInfoOrFake#1).myAwayReason == &amp;""
postnew ClientInfo(getClientInfoOrFake#1). myChannelClientInfos == &amp;new Hashtable(ClientIn fo#1)
postnew ClientInfo(getClientInfoOrFake#1).myMap == &amp;new HashMap(ClientInfo#3)
postnew ClientInfo(getClientInfoOrFake#1).myParser == this
postnew ClientInfo(getClientInfoOrFake#1).myParser != null
postnew ClientInfo(getClientInfoOrFake#1).sHost in Addr_Set{null,&amp;""}
postnew ClientInfo(getClientInfoOrFake#1).sIdent in Addr_Set{null,&amp;""}
postnew ClientInfo(getClientInfoOrFake#1).sNickname == null
postnew ClientInfo(getClientInfoOrFake#1).sRealName == &amp;""
postnew HashMap(ClientInfo#3) num objects <= 1
postnew Hashtable(ClientInfo#1) num objects <= 1
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew IRCStringConverter(getIRCStringConverter#1). limit == 4
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == &amp;new char[](IRCStringConverter#1)
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == &amp;new char[](IRCStringConverter#2)
postnew LinkedList(ClientInfo#2) num objects <= 1
postnew char[](IRCStringConverter#1).length == 127
postnew char[](IRCStringConverter#2).length == 127
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.util.Hashtable
unanalyzedcall on java.util.LinkedList
unanalyzedcall on java.util.HashMap
test_vectorjava.util.Map:containsKey(...)@883: {0}, {1}









Prev Msg Next Msg
  precondition failure
High Prob.
com/dmdirc/parser/irc/IRCStringConverter. toLowerCase: input != null
Prev Msg Next Msg











method ChannelInfo getChannelInfo(String)
preinit'ed(this.stringConverter)
presWhat != null
prethis.hChannelList != null
pre(soft) this.stringConverter.lowercase != null
pre(soft) init'ed(this.stringConverter.lowercase[...])
postinit'ed(return_value)
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postthis.stringConverter != null
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew IRCStringConverter(getIRCStringConverter#1). limit == 4
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == &amp;new char[](IRCStringConverter#1)
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == &amp;new char[](IRCStringConverter#2)
postnew char[](IRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1).length == 127
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postnew char[](IRCStringConverter#2).length == 127
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
test_vectorjava.util.Map:containsKey(...)@896: {0}, {1}










method void sendLine(String)
preinit'ed(this.out)
pre(soft) init'ed(this.stringConverter)
pre(soft) this.cMyself != null
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.hChanModesOther != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis










method void sendString(String)
preinit'ed(this.out)
pre(soft) init'ed(this.stringConverter)
pre(soft) this.cMyself != null
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.hChanModesOther != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis










method void doSendString(String, bool)
preinit'ed(this.out)
pre(soft) init'ed(this.stringConverter)
pre(soft) this.cMyself != null
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.hChanModesOther != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
presumptionchannel.myParser.myCallbackManager.callbackHash@932 != null
presumptionchannel.myParser.myCallbackManager@932 != null
presumptionchannel.myParser@932 != null
presumptionjava.util.Map:get(...)@938 != null
presumptionnewLine.length in {1..232}
presumptionnewLine[0] != null
presumptionnewLine[1] != null
presumptionnewLine[2] != null
presumptionthis.stringConverter.lowercase@922 != null
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew char[](IRCStringConverter#1) num objects <= 1
postinit'ed(new char[](IRCStringConverter#1).length)
postinit'ed(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postinit'ed(new char[](IRCStringConverter#2).length)
postinit'ed(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.util.LinkedList
unanalyzedcall on java.lang.System:currentTimeMillis
test_vectorthis.out: Addr_Set{null}, Inverse{null}
test_vectorjava.lang.Byte:byteValue(...)@938: {-128..0, 2..255}, {1}
test_vectorjava.lang.String:equalsIgnoreCase(...)@925: {0}, {1}
test_vectorjava.lang.String:equalsIgnoreCase(...)@927: {0}, {1}
test_vectorjava.util.LinkedList:contains(...)@939: {0}, {1}
test_vectorjava.util.Map:containsKey(...)@938: {0}, {1}









Prev Msg Next Msg
  unused assignment in callee
Low Prob.
Unused assignment to (java.lang.String:split(...)._ tainted) in tokeniseLine
Prev Msg Next Msg










Prev Msg Next Msg
  null dereference
Medium Prob.
check that newLine[0] != null
Prev Msg Next Msg










Prev Msg Next Msg
  null dereference
Medium Prob.
check that listModeQueue != null
Prev Msg Next Msg











method String getNetworkName()
preinit'ed(this.sNetworkName)
postreturn_value == this.sNetworkName
postinit'ed(return_value)










method String getServerName()
preinit'ed(this.sServerName)
postreturn_value == this.sServerName
postinit'ed(return_value)










method String getLastLine()
preinit'ed(this.lastLine)
postreturn_value == this.lastLine
postinit'ed(return_value)










method void processLine(String)
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
prethis.pingNeeded != null
pre(soft) this.lastPingValue != null
pre(soft) init'ed(this.post005)
pre(soft) init'ed(this.stringConverter)
pre(soft) init'ed(this...lastLine)
pre(soft) this...myCallbackManager != null
pre(soft) this...myCallbackManager.callbackHash != null
pre(soft) this.cMyself != null
pre(soft) init'ed(this.currentSocketState)
pre(soft) init'ed(this.got001)
pre(soft) this.hChanModesOther != null
pre(soft) this.hChannelList != null
pre(soft) init'ed(this.lastLine)
pre(soft) this.myProcessingManager != null
pre(soft) this.myProcessingManager.myParser != null
pre(soft) this.myProcessingManager.processHash != null
pre(soft) init'ed(this.out)
pre(soft) init'ed(this.pingTime)
presumptionjava.lang.System:currentTimeMillis(...)@1002 - this.pingTime in {-263.. 264-1}
presumptiontoken.length <= 232-1
presumptiontoken[0] != null
presumptiontoken[1] != null
presumptiontoken[3] != null
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postpossibly_updated(this.lastPingValue)
postpossibly_updated(this.post005)
postpossibly_updated(this.serverLag)
postpossibly_updated(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew char[](IRCStringConverter#1) num objects <= 1
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.util.concurrent.atomic. AtomicBoolean:set
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on getCallbackType
unanalyzedcall on call
unanalyzedcall on callErrorInfo
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.util.Hashtable:containsKey
unanalyzedcall on java.util.Hashtable:get
unanalyzedcall on java.lang.Exception
unanalyzedcall on getCallbackManager
unanalyzedcall on process
unanalyzedcall on java.lang.Integer:parseInt
unanalyzedcall on java.lang.Exception:getMessage
unanalyzedcall on getLastLine
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis
test_vectorthis.post005: {1}, {0}
test_vectorthis.got001: {0}, {1}
test_vectorjava.lang.Integer:parseInt(...)@1018: {0..5}, {6..232-1}
test_vectorjava.lang.String:charAt(...)@1037: {0, 2..216-1}, {1}
test_vectorjava.lang.String:equals(...)@1000: {0}, {1}
test_vectorjava.lang.String:equalsIgnoreCase(...)@1005: {0}, {1}
test_vectorjava.lang.String:equalsIgnoreCase(...)@1013: {0}, {1}
test_vectorjava.lang.String:equalsIgnoreCase(...)@997: {1}, {0}
test_vectorjava.lang.String:equalsIgnoreCase(...)@997: {0}, {1}
test_vectorjava.lang.String:equalsIgnoreCase(...)@999: {1}, {0}
test_vectorjava.lang.String:equalsIgnoreCase(...)@999: {0}, {1}
test_vectorjava.lang.String:isEmpty(...)@1000: {1}, {0}
test_vectorjava.lang.String:isEmpty(...)@1037: {1}, {0}









Prev Msg Next Msg
  unused assignment in callee
Low Prob.
Unused assignment to (java.lang.String:split(...)._ tainted) in tokeniseLine
Prev Msg Next Msg










Prev Msg Next Msg
  null dereference
Medium Prob.
check that token[0] != null
Prev Msg Next Msg











method IRCStringConverter getIRCStringConverter()
preinit'ed(this.stringConverter)
postreturn_value == One-of{old this.stringConverter, &amp;new IRCStringConverter(getIRCStringConverter# 1)}
postreturn_value != null
postthis.stringConverter == return_value
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew IRCStringConverter(getIRCStringConverter#1). limit == 4
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == &amp;new char[](IRCStringConverter#1)
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == &amp;new char[](IRCStringConverter#2)
postnew char[](IRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1).length == 127
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postnew char[](IRCStringConverter#2).length == 127
postpossibly_updated(new char[](IRCStringConverter#2)[...])
test_vectorthis.stringConverter: Inverse{null}, Addr_Set{null}










method void updateCharArrays(byte)
postthis.stringConverter == &amp;new IRCStringConverter (updateCharArrays#1)
postnew IRCStringConverter(updateCharArrays#1) num objects == 1
postnew char[](IRCStringConverter#1) num objects == 1
postnew char[](IRCStringConverter#2) num objects == 1
postthis.stringConverter.limit == One-of{4, limit}
postthis.stringConverter.limit in {0..4}
postthis.stringConverter.lowercase == &amp;new char[](IRCStringConverter#1)
postthis.stringConverter.uppercase == &amp;new char[](IRCStringConverter#2)
postnew char[](IRCStringConverter#1).length == 127
postnew char[](IRCStringConverter#2).length == 127
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postpossibly_updated(new char[](IRCStringConverter#2)[...])










method String getBoolChanModes005()
prethis.hChanModesBool != null
presumption(int) (java.lang.Math:log(...)@1108/java.lang. Math:log(...)@1108) in {0..232-2}
presumptionjava.lang.Math:log(...)@1108 != +0
presumptionjava.util.Iterator:next(...)@1104 != null
presumptionjava.util.Map:get(...)@1105 != null
presumptionjava.util.Map:keySet(...)@1104 != null
presumptionjava.util.Map:size(...)@1100 >= 1
presumptionjava.util.Map:size(...)@1100 - (int) (java.lang.Math:log(...)@1108/java.lang.Math:log(. ..)@1108) in {1..232-1}
postreturn_value == &amp;new String(getBoolChanModes005 #2)
postnew String(getBoolChanModes005#2) num objects == 1
test_vectorjava.lang.Long:longValue(...)@1105: {-263..0}, {1.. 264-1}
test_vectorjava.util.Iterator:hasNext(...)@1104: {0}, {1}










method void parseChanModes()
prethis.h005Info != null
prethis.hChanModesBool != null
prethis.hChanModesOther != null
preinit'ed(this.lastLine)
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
pre(soft) this.hPrefixModes != null
pre(soft) this.sNetworkName != null
presumptionjava.lang.String:length(...)@1175 >= 1
presumptionjava.lang.String:length(...)@1182 >= 1
presumptionjava.lang.String:length(...)@1189 >= 1
presumptionjava.util.Map:get(...)@1136 != null
presumptionjava.util.Map:get(...)@1148 != null
postthis.nNextKeyCMBool <= 264-2
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:matches
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on callDebugInfo
unanalyzedcall on java.lang.String:format
unanalyzedcall on java.lang.Integer:valueOf
test_vectorjava.lang.String:equalsIgnoreCase(...)@1131: {0}, {1}
test_vectorjava.lang.String:equalsIgnoreCase(...)@1133: {0}, {1}
test_vectorjava.lang.StringBuilder:indexOf(...)@1140: {0..232-1}, {-231..-1}
test_vectorjava.util.Map:containsKey(...)@1130: {0}, {1}
test_vectorjava.util.Map:containsKey(...)@1140: {1}, {0}
test_vectorjava.util.Map:containsKey(...)@1147: {0}, {1}
test_vectorjava.util.Map:containsKey(...)@1170: {1}, {0}
test_vectorjava.util.Map:containsKey(...)@1178: {1}, {0}
test_vectorjava.util.Map:containsKey(...)@1185: {1}, {0}
test_vectorjava.util.Map:containsKey(...)@1192: {1}, {0}









Prev Msg Next Msg
  use of default init
Low Prob.
check if init'ed(bits.length)
  test always goes same way
Low Prob.
Test predetermined because bits.length == 0
Prev Msg Next Msg










Prev Msg Next Msg
  null dereference
Medium Prob.
check that not_init'ed(bits[0])
  use of default init
Low Prob.
check if init'ed(bits.length)
Prev Msg Next Msg










Prev Msg Next Msg
  null dereference
Medium Prob.
check that not_init'ed(bits[0])
  use of default init
Low Prob.
check if init'ed(bits.length)
Prev Msg Next Msg










Prev Msg Next Msg
  array index out of bounds
High Prob.
check that bits.length >= 2
  null dereference
Medium Prob.
check that not_init'ed(bits[1])
  use of default init
Low Prob.
check if init'ed(bits.length)
  use of default init
Low Prob.
check if init'ed(i)
Prev Msg Next Msg










Prev Msg Next Msg
  array index out of bounds
Medium Prob.
check that bits.length >= 2
  null dereference
Medium Prob.
check that not_init'ed(bits[1])
  use of default init
Low Prob.
check if init'ed(bits.length)
  use of default init
Low Prob.
check if init'ed(i)
Prev Msg Next Msg










Prev Msg Next Msg
  use of default init
Low Prob.
check if init'ed(new__parseChanModes:Object_array_ _5.length)
Prev Msg Next Msg










Prev Msg Next Msg
  array index out of bounds
High Prob.
check that bits.length >= 3
  null dereference
Medium Prob.
check that not_init'ed(bits[2])
  use of default init
Low Prob.
check if init'ed(bits.length)
  use of default init
Low Prob.
check if init'ed(i)
Prev Msg Next Msg










Prev Msg Next Msg
  array index out of bounds
Medium Prob.
check that bits.length >= 3
  null dereference
Medium Prob.
check that not_init'ed(bits[2])
  use of default init
Low Prob.
check if init'ed(bits.length)
  use of default init
Low Prob.
check if init'ed(i)
Prev Msg Next Msg










Prev Msg Next Msg
  use of default init
Low Prob.
check if init'ed(new__parseChanModes:Object_array_ _6.length)
Prev Msg Next Msg










Prev Msg Next Msg
  array index out of bounds
High Prob.
check that bits.length >= 4
  null dereference
Medium Prob.
check that not_init'ed(bits[3])
  use of default init
Low Prob.
check if init'ed(bits.length)
  use of default init
Low Prob.
check if init'ed(i)
Prev Msg Next Msg










Prev Msg Next Msg
  array index out of bounds
Medium Prob.
check that bits.length >= 4
  null dereference
Medium Prob.
check that not_init'ed(bits[3])
  use of default init
Low Prob.
check if init'ed(bits.length)
  use of default init
Low Prob.
check if init'ed(i)
Prev Msg Next Msg










Prev Msg Next Msg
  use of default init
Low Prob.
check if init'ed(new__parseChanModes:Object_array_ _7.length)
Prev Msg Next Msg










Prev Msg Next Msg
  use of default init
Low Prob.
check if init'ed(this.nNextKeyCMBool)
Prev Msg Next Msg











method String getPrefixModes()
prethis.h005Info != null
postinit'ed(return_value)
test_vectorjava.util.Map:containsKey(...)@1205: {0}, {1}










method String getBoolChanModes()
prethis.hChanModesBool != null
presumptionjava.util.Iterator:next(...)@1221 != null
presumptionjava.util.Map:keySet(...)@1221 != null
presumptionjava.util.Map:size(...)@1219 >= 1
postreturn_value == &amp;new String(getBoolChanModes#2)
postnew String(getBoolChanModes#2) num objects == 1
test_vectorjava.util.Iterator:hasNext(...)@1221: {0}, {1}









Prev Msg Next Msg
  array index out of bounds
Medium Prob.
check that i < modes.length
  overflow
Low Prob.
check that i in {-231-1..232-2}
Prev Msg Next Msg











method String getListChanModes()
prethis.hChanModesOther != null
postreturn_value != null
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.util.Map:size
unanalyzedcall on java.util.Map:keySet
unanalyzedcall on java.util.Set:iterator
unanalyzedcall on java.lang.Character:charValue
unanalyzedcall on java.util.Arrays:sort
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on java.lang.String:trim










method String getSetOnlyChanModes()
prethis.hChanModesOther != null
postreturn_value != null
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.util.Map:size
unanalyzedcall on java.util.Map:keySet
unanalyzedcall on java.util.Set:iterator
unanalyzedcall on java.lang.Character:charValue
unanalyzedcall on java.util.Arrays:sort
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on java.lang.String:trim










method String getSetUnsetChanModes()
prethis.hChanModesOther != null
postreturn_value != null
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.util.Map:size
unanalyzedcall on java.util.Map:keySet
unanalyzedcall on java.util.Set:iterator
unanalyzedcall on java.lang.Character:charValue
unanalyzedcall on java.util.Arrays:sort
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on java.lang.String:trim










method String getOtherModeString(byte)
prethis.hChanModesOther != null
presumptionjava.util.Iterator:next(...)@1270 != null
presumptionjava.util.Map:get(...)@1271 != null
presumptionjava.util.Map:keySet(...)@1270 != null
presumptionjava.util.Map:size(...)@1267 >= 1
postreturn_value != null
test_vectorjava.util.Iterator:hasNext(...)@1270: {0}, {1}









Prev Msg Next Msg
  array index out of bounds
Medium Prob.
check that i < modes.length
  overflow
Low Prob.
check that i in {-231-1..232-2}
Prev Msg Next Msg











method String getUserModeString()
prethis.h005Info != null
postinit'ed(return_value)
test_vectorjava.util.Map:containsKey(...)@1286: {0}, {1}










method void parseUserModes()
prethis.h005Info != null
prethis.hUserModes != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
presumptionjava.util.Map:get(...)@1300 != null
postthis.nNextKeyUser <= 264-2
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get
unanalyzedcall on call
unanalyzedcall on callDebugInfo
unanalyzedcall on java.lang.String:format
unanalyzedcall on java.lang.Integer:valueOf
test_vectorjava.util.Map:containsKey(...)@1299: {0}, {1}
test_vectorjava.util.Map:containsKey(...)@1314: {1}, {0}









Prev Msg Next Msg
  unused assignment
Low Prob.
Unused assignment into sDefaultModes
Prev Msg Next Msg











method void parseChanPrefix()
prethis.h005Info != null
prethis.hChanPrefix != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
presumptionjava.util.Map:get(...)@1328 != null
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get
unanalyzedcall on call
unanalyzedcall on callDebugInfo
unanalyzedcall on java.lang.String:format
unanalyzedcall on java.lang.Integer:valueOf
test_vectorjava.util.Map:containsKey(...)@1327: {0}, {1}
test_vectorjava.util.Map:containsKey(...)@1341: {1}, {0}









Prev Msg Next Msg
  unused assignment
Low Prob.
Unused assignment into sDefaultModes
Prev Msg Next Msg











method void parsePrefixModes()
prethis.h005Info != null
prethis.hPrefixMap != null
prethis.hPrefixModes != null
preinit'ed(this.lastLine)
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
presumptionjava.util.Map:get(...)@1353 != null
postthis.nNextKeyPrefix <= 264-2
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get
unanalyzedcall on call
unanalyzedcall on callDebugInfo
unanalyzedcall on java.lang.String:format
unanalyzedcall on java.lang.Integer:valueOf
test_vectorjava.lang.String:equals(...)@1357: {0}, {1}
test_vectorjava.util.Map:containsKey(...)@1352: {0}, {1}
test_vectorjava.util.Map:containsKey(...)@1382: {1}, {0}









Prev Msg Next Msg
  unused assignment
Low Prob.
Unused assignment into sDefaultModes
Prev Msg Next Msg










Prev Msg Next Msg
  use of default init
Low Prob.
check if init'ed(bits.length)
  test always goes same way
Low Prob.
Test predetermined because bits.length == 0
  dead code
Low Prob.
Dead code here because bits.length == 0
Prev Msg Next Msg










Prev Msg Next Msg
  null dereference
Medium Prob.
check that not_init'ed(bits[0])
  use of default init
Low Prob.
check if init'ed(bits.length)
Prev Msg Next Msg










Prev Msg Next Msg
  null dereference
Medium Prob.
check that not_init'ed(bits[0])
  use of default init
Low Prob.
check if init'ed(bits.length)
Prev Msg Next Msg










Prev Msg Next Msg
  array index out of bounds
High Prob.
check that bits.length >= 2
  null dereference
Medium Prob.
check that not_init'ed(bits[1])
  use of default init
Low Prob.
check if init'ed(bits.length)
Prev Msg Next Msg










Prev Msg Next Msg
  use of default init
Low Prob.
check if init'ed(this.nNextKeyPrefix)
Prev Msg Next Msg










Prev Msg Next Msg
  use of default init
Low Prob.
check if init'ed(bits.length)
Prev Msg Next Msg











method bool isReady()
preinit'ed(this.got001)
postreturn_value == this.got001
postinit'ed(return_value)










method void joinChannel(String)
pre(soft) init'ed(this.stringConverter)
pre(soft) this.cMyself != null
pre(soft) init'ed(this.cMyself.bIsFake)
pre(soft) init'ed(this.cMyself.sNickname)
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.h005Info != null
pre(soft) this.hChanModesOther != null
pre(soft) this.hChanPrefix != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
pre(soft) init'ed(this.sThinkNickname)
postpossibly_updated(java.lang.String:substring(...)._ tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on isFake
unanalyzedcall on getNickname
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.util.Map:isEmpty
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.String:equals
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis










method void joinChannel(String, bool)
pre(soft) init'ed(this.stringConverter)
pre(soft) this.cMyself != null
pre(soft) init'ed(this.cMyself.bIsFake)
pre(soft) init'ed(this.cMyself.sNickname)
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.h005Info != null
pre(soft) this.hChanModesOther != null
pre(soft) this.hChanPrefix != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
pre(soft) init'ed(this.sThinkNickname)
postpossibly_updated(java.lang.String:substring(...)._ tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on isFake
unanalyzedcall on getNickname
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.util.Map:isEmpty
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.String:equals
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis










method void joinChannel(String, String)
pre(soft) init'ed(this.stringConverter)
pre(soft) sKey != null
pre(soft) this.cMyself != null
pre(soft) init'ed(this.cMyself.bIsFake)
pre(soft) init'ed(this.cMyself.sNickname)
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.h005Info != null
pre(soft) this.hChanModesOther != null
pre(soft) this.hChanPrefix != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
pre(soft) init'ed(this.sThinkNickname)
postpossibly_updated(java.lang.String:substring(...)._ tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on isFake
unanalyzedcall on getNickname
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.util.Map:isEmpty
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.String:equals
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis










method void joinChannel(String, String, bool)
pre(soft) init'ed(this.stringConverter)
pre(soft) sKey != null
pre(soft) this.cMyself != null
pre(soft) init'ed(this.cMyself.bIsFake)
pre(soft) init'ed(this.cMyself.sNickname)
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.h005Info != null
pre(soft) this.hChanModesOther != null
pre(soft) this.hChanPrefix != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
pre(soft) init'ed(this.sThinkNickname)
presumptionjava.util.Map:get(...)@1447 != null
postpossibly_updated(java.lang.String:substring(...)._ tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects == 0
postnew char[](IRCStringConverter#1) num objects == 0
postnew char[](IRCStringConverter#2) num objects == 0
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew char[](IRCStringConverter#1) num objects <= 1
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on isFake
unanalyzedcall on getNickname
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.util.Map:isEmpty
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.String:equals
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis
test_vectorautoPrefix: {0}, {1}
test_vectorjava.lang.String:isEmpty(...)@1448: {0}, {1}
test_vectorjava.lang.String:isEmpty(...)@1460: {0}, {1}
test_vectorjava.util.Map:containsKey(...)@1446: {0}, {1}










method void partChannel(String, String)
preinit'ed(this.stringConverter)
presChannelName != null
prethis.hChannelList != null
pre(soft) sReason != null
pre(soft) this.cMyself != null
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.hChanModesOther != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
pre(soft) this.stringConverter.lowercase != null
pre(soft) init'ed(this.stringConverter.lowercase[...])
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postthis.stringConverter != null
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew IRCStringConverter(getIRCStringConverter#1) num objects == 0
postnew IRCStringConverter(getIRCStringConverter#1). limit == 4
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == &amp;new char[](IRCStringConverter#1)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == &amp;new char[](IRCStringConverter#2)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew char[](IRCStringConverter#1) num objects == 0
postnew char[](IRCStringConverter#1).length == 127
postnew char[](IRCStringConverter#2).length == 127
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects == 0
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis
test_vectorjava.lang.String:isEmpty(...)@1475: {0}, {1}










method void setNickname(String)
preinit'ed(this.currentSocketState)
pre(soft) init'ed(this.stringConverter)
pre(soft) this.cMyself != null
pre(soft) init'ed(this.cMyself.bIsFake)
pre(soft) this.cMyself.sNickname != null
pre(soft) this.hChanModesOther != null
pre(soft) this.hChannelList != null
pre(soft) this.me != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postthis.me.nickname == One-of{old this.me.nickname, sNewNickName}
postthis.sThinkNickname == One-of{old this. sThinkNickname, sNewNickName}
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew char[](IRCStringConverter#1) num objects <= 1
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis
test_vectorthis.cMyself.bIsFake: {1}, {0}
test_vectorjava.lang.String:equals(...)@1489: {0}, {1}










method int getMaxLength(String, String)
prethis.cMyself != null
preinit'ed(this.cMyself.bIsFake)
pre(soft) init'ed(this.cMyself.sHost)
pre(soft) init'ed(this.cMyself.sIdent)
pre(soft) init'ed(this.cMyself.sNickname)
pre(soft) init'ed(this.lastLine)
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
presumptionjava.lang.String:length(...)@1512 <= 2_147_484_153
presumptionjava.lang.String:length(...)@1513 <= 2_147_484_153
presumptionjava.lang.String:length(...)@1513 + length in {0..2_147_484_153}
postreturn_value <= 2_147_484_153
unanalyzedcall on isFake
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get
unanalyzedcall on call
unanalyzedcall on java.lang.String:length
unanalyzedcall on toString
test_vectorsTarget: Addr_Set{null}, Inverse{null}
test_vectorsType: Addr_Set{null}, Inverse{null}










method int getMaxLength(int)
prenLength <= 2_147_484_153
prethis.cMyself != null
preinit'ed(this.cMyself.bIsFake)
pre(soft) init'ed(this.cMyself.sHost)
pre(soft) init'ed(this.cMyself.sIdent)
pre(soft) init'ed(this.cMyself.sNickname)
pre(soft) init'ed(this.lastLine)
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
presumptionnLength + java.lang.String:length(...)@1529 in {-231..2_147_484_153}
presumptiontoString(...)@1529 init'ed
postreturn_value <= 2_147_484_153
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on java.util.Map:get
unanalyzedcall on call
test_vectorthis.cMyself.bIsFake: {0}, {1}









Prev Msg Next Msg
  unused assignment
Low Prob.
Unused assignment into lineLint
Prev Msg Next Msg











method int getMaxListModes(char)
prethis.h005Info != null
prethis.myCallbackManager != null
prethis.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.lastLine)
pre(soft) this.sNetworkName != null
presumptionjava.util.Map:get(...)@1555 != null
postinit'ed(return_value)
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:matches
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Integer:valueOf
test_vectorjava.lang.String:equalsIgnoreCase(...)@1577: {0}, {1}
test_vectorjava.util.Map:get(...)@1551: Addr_Set{null}, Inverse{null}
test_vectorjava.util.Map:get(...)@1552: Inverse{null}, Addr_Set{null}
test_vectorjava.util.Map:get(...)@1572: Addr_Set{null}, Inverse{null}









Prev Msg Next Msg
  use of default init
Low Prob.
check if init'ed(arr$.length)
  use of default init
Low Prob.
check if init'ed(len$)
  test always goes same way
Low Prob.
Test predetermined because i$ == len$
  dead code
Low Prob.
Dead code here because i$ == len$
  dead code continuesInfoDead code continues
Prev Msg Next Msg










  dead code continuesInfoDead code continues










  dead code continuesInfoDead code continues










  dead code continuesInfoDead code continues











method void sendMessage(String, String)
pre(soft) init'ed(this.stringConverter)
pre(soft) this.cMyself != null
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.hChanModesOther != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew char[](IRCStringConverter#1) num objects <= 1
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis
test_vectorsMessage: Inverse{null}, Addr_Set{null}
test_vectorsTarget: Addr_Set{null}, Inverse{null}
test_vectorjava.lang.String:isEmpty(...)@1597: {0}, {1}










method void sendNotice(String, String)
pre(soft) init'ed(this.stringConverter)
pre(soft) this.cMyself != null
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.hChanModesOther != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew char[](IRCStringConverter#1) num objects <= 1
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis
test_vectorsMessage: Inverse{null}, Addr_Set{null}
test_vectorsTarget: Addr_Set{null}, Inverse{null}
test_vectorjava.lang.String:isEmpty(...)@1610: {0}, {1}










method void sendAction(String, String)
pre(soft) init'ed(this.stringConverter)
pre(soft) this.cMyself != null
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.hChanModesOther != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.String:toUpperCase
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis










method void sendCTCP(String, String, String)
pre(soft) init'ed(this.stringConverter)
pre(soft) sType != null
pre(soft) this.cMyself != null
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.hChanModesOther != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew char[](IRCStringConverter#1) num objects <= 1
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis
test_vectorsMessage: Inverse{null}, Addr_Set{null}
test_vectorsTarget: Addr_Set{null}, Inverse{null}
test_vectorjava.lang.String:isEmpty(...)@1634: {1}, {0}
test_vectorjava.lang.String:isEmpty(...)@1634: {0}, {1}









Prev Msg Next Msg
  unused assignment
Low Prob.
Unused assignment into char1
Prev Msg Next Msg











method void sendCTCPReply(String, String, String)
pre(soft) init'ed(this.stringConverter)
pre(soft) sType != null
pre(soft) this.cMyself != null
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.hChanModesOther != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew char[](IRCStringConverter#1) num objects <= 1
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis
test_vectorsMessage: Inverse{null}, Addr_Set{null}
test_vectorsTarget: Addr_Set{null}, Inverse{null}
test_vectorjava.lang.String:isEmpty(...)@1648: {1}, {0}
test_vectorjava.lang.String:isEmpty(...)@1648: {0}, {1}









Prev Msg Next Msg
  unused assignment
Low Prob.
Unused assignment into char1
Prev Msg Next Msg











method void quit(String)
presReason != null
preinit'ed(this.out)
pre(soft) init'ed(this.stringConverter)
pre(soft) this.cMyself != null
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.hChanModesOther != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
postinit'ed(java.lang.String:substring(...)._tainted)
postpossibly_updated(this.cMyself.myAwayReason)
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew char[](IRCStringConverter#1) num objects <= 1
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis
test_vectorjava.lang.String:isEmpty(...)@1660: {0}, {1}










method void disconnect(String)
preinit'ed(this.currentSocketState)
preinit'ed(this.pingTimer)
prethis.h005Info != null
prethis.hChanModesBool != null
prethis.hChanModesOther != null
prethis.hChanPrefix != null
prethis.hChannelList != null
prethis.hClientList != null
prethis.hPrefixMap != null
prethis.hPrefixModes != null
prethis.hUserModes != null
prethis.pingTimerSem != null
pre(soft) this.cMyself != null
pre(soft) init'ed(this.got001)
pre(soft) init'ed(this.stringConverter)
pre(soft) sReason != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
pre(soft) init'ed(this.socket)
postinit'ed(java.lang.String:substring(...)._tainted)
postthis.cMyself in Addr_Set{&amp;new ClientInfo(resetS tate#1),&amp;new ClientInfo(resetState#1)}
postpossibly_updated(this.cMyself.myAwayReason)
postthis.currentSocketState == &amp;com.dmdirc.parser. irc.SocketState__static_init.new SocketState(Socket State__static_init#2)
postthis.got001 == 0
postthis.lastLine == &amp;""
postthis.nNextKeyCMBool == 1
postthis.nNextKeyPrefix == 1
postthis.nNextKeyUser == 1
postthis.pingTimer == null
postthis.post005 == 0
postthis.sNetworkName == &amp;""
postthis.sServerName == &amp;""
postthis.stringConverter in Addr_Set{&amp;new IRCStringConverter(updateCharArrays#1),&amp;new IRCStringConverter(updateCharArrays#1)}
postthis.triedAlt == 0
postnew ClientInfo(resetState#1) num objects <= 1
postnew ClientInfo(resetState#1) num objects == 0
postnew HashMap(ClientInfo#3) num objects == 0
postnew Hashtable(ClientInfo#1) num objects == 0
postnew IRCStringConverter(updateCharArrays#1) num objects == 0
postnew LinkedList(ClientInfo#2) num objects == 0
postnew char[](IRCStringConverter#1) num objects == 0
postnew char[](IRCStringConverter#2) num objects == 0
postinit'ed(new ClientInfo(resetState#1).bIsFake)
postinit'ed(new ClientInfo(resetState#1).lModeQueue)
postinit'ed(new ClientInfo(resetState#1).myAwayReason)
postinit'ed(new ClientInfo(resetState#1). myChannelClientInfos)
postinit'ed(new ClientInfo(resetState#1).myMap)
postinit'ed(new ClientInfo(resetState#1).myParser)
postpossibly_updated(new ClientInfo(resetState#1). sHost)
postinit'ed(new ClientInfo(resetState#1).sHost)
postpossibly_updated(new ClientInfo(resetState#1). sIdent)
postinit'ed(new ClientInfo(resetState#1).sIdent)
postpossibly_updated(new ClientInfo(resetState#1). sNickname)
postinit'ed(new ClientInfo(resetState#1).sNickname)
postinit'ed(new ClientInfo(resetState#1).sRealName)
postnew HashMap(ClientInfo#3) num objects <= 1
postnew Hashtable(ClientInfo#1) num objects <= 1
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew IRCStringConverter(updateCharArrays#1) num objects <= 1
postinit'ed(new IRCStringConverter(updateCharArrays#1). limit)
postinit'ed(new IRCStringConverter(updateCharArrays#1). lowercase)
postinit'ed(new IRCStringConverter(updateCharArrays#1). uppercase)
postnew LinkedList(ClientInfo#2) num objects <= 1
postnew char[](IRCStringConverter#1) num objects <= 1
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postinit'ed(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
postinit'ed(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.util.concurrent.Semaphore:acquireUnint erruptibly
unanalyzedcall on java.util.Timer:cancel
unanalyzedcall on java.util.concurrent.Semaphore:release
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.util.Map:clear
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:isEmpty
unanalyzedcall on sendString
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on com.dmdirc.parser.irc.ClientInfo
unanalyzedcall on setFake
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.util.Hashtable
unanalyzedcall on java.util.HashMap
unanalyzedcall on java.lang.System:currentTimeMillis
test_vectorthis.got001: {0}, {1}









Prev Msg Next Msg
  unused assignment
Low Prob.
Unused assignment into e
Prev Msg Next Msg











method bool isValidChannelName(String)
pre(soft) init'ed(this.stringConverter)
pre(soft) this.cMyself != null
pre(soft) init'ed(this.cMyself.bIsFake)
pre(soft) init'ed(this.cMyself.sNickname)
pre(soft) this.hChanPrefix != null
pre(soft) this.hChannelList != null
pre(soft) init'ed(this.sThinkNickname)
presumptiongetIRCStringConverter(...).lowercase.length@1702 >= 1
presumptiongetIRCStringConverter(...).lowercase@1702 != null
postinit'ed(return_value)
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew IRCStringConverter(getIRCStringConverter#1) num objects == 0
postnew IRCStringConverter(getIRCStringConverter#1). limit == 4
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == &amp;new char[](IRCStringConverter#1)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == &amp;new char[](IRCStringConverter#2)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew char[](IRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == 0
postnew char[](IRCStringConverter#1).length == 127
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postnew char[](IRCStringConverter#2) num objects == 0
postnew char[](IRCStringConverter#2).length == 127
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on isFake
unanalyzedcall on getNickname
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
test_vectorsChannelName: Addr_Set{null}, Inverse{null}
test_vectorjava.lang.String:isEmpty(...)@1700: {0}, {1}
test_vectorjava.util.Map:isEmpty(...)@1706: {0}, {1}










method bool isUserSettable(Character)
prethis.h005Info != null
presumptionjava.util.Map:get(...)@1726 != null
postinit'ed(return_value)
test_vectorjava.util.Map:containsKey(...)@1725: {0}, {1}










method Map get005()
postreturn_value == this.h005Info
postinit'ed(return_value)










method String getIRCD(bool)
prethis.h005Info != null
pre(soft) this.sNetworkName != null
presumptionjava.util.Map:get(...)@1748 != null
presumptionjava.util.Map:get(...)@1784 != null
postreturn_value != null
test_vectorgetType: {0}, {1}
test_vectorjava.lang.String:equalsIgnoreCase(...)@1781: {0}, {1}
test_vectorjava.lang.String:equalsIgnoreCase(...)@1782: {0}, {1}
test_vectorjava.lang.String:equalsIgnoreCase(...)@1783: {0}, {1}
test_vectorjava.lang.String:matches(...)@1752: {0}, {1}
test_vectorjava.lang.String:matches(...)@1753: {0}, {1}
test_vectorjava.lang.String:matches(...)@1754: {0}, {1}
test_vectorjava.lang.String:matches(...)@1755: {0}, {1}
test_vectorjava.lang.String:matches(...)@1756: {0}, {1}
test_vectorjava.lang.String:matches(...)@1757: {0}, {1}
test_vectorjava.lang.String:matches(...)@1758: {0}, {1}
test_vectorjava.lang.String:matches(...)@1759: {0}, {1}
test_vectorjava.lang.String:matches(...)@1760: {0}, {1}
test_vectorjava.lang.String:matches(...)@1761: {0}, {1}
test_vectorjava.lang.String:matches(...)@1762: {0}, {1}
test_vectorjava.lang.String:matches(...)@1763: {0}, {1}
test_vectorjava.lang.String:matches(...)@1764: {0}, {1}
test_vectorjava.lang.String:matches(...)@1765: {0}, {1}
test_vectorjava.lang.String:matches(...)@1766: {0}, {1}
test_vectorjava.lang.String:matches(...)@1767: {0}, {1}
test_vectorjava.lang.String:matches(...)@1768: {0}, {1}
test_vectorjava.lang.String:matches(...)@1769: {0}, {1}
test_vectorjava.lang.String:matches(...)@1770: {0}, {1}
test_vectorjava.lang.String:matches(...)@1771: {0}, {1}
test_vectorjava.lang.String:matches(...)@1772: {0}, {1}
test_vectorjava.lang.String:matches(...)@1773: {0}, {1}
test_vectorjava.lang.String:matches(...)@1774: {0}, {1}
test_vectorjava.lang.String:matches(...)@1775: {0}, {1}
test_vectorjava.lang.String:matches(...)@1776: {0}, {1}
test_vectorjava.lang.String:matches(...)@1777: {0}, {1}
test_vectorjava.lang.String:matches(...)@1778: {0}, {1}
test_vectorjava.lang.String:matches(...)@1784: {0}, {1}
test_vectorjava.util.Map:containsKey(...)@1747: {0}, {1}
test_vectorjava.util.Map:containsKey(...)@1784: {0}, {1}










method long getPingTimerLength()
preinit'ed(this.pingTimerLength)
postreturn_value == this.pingTimerLength
postinit'ed(return_value)










method void setPingTimerLength(long)
preinit'ed(this.pingTimer)
prethis.pingNeeded != null
prethis.pingTimerSem != null
postthis.pingCountDown == 1
postnew Timer(startPingTimer#1) num objects == 1
postthis.pingTimer == &amp;new Timer(startPingTimer#1)
postthis.pingTimerLength == newValue
postinit'ed(this.pingTimerLength)
unanalyzedcall on java.util.concurrent.atomic. AtomicBoolean:set
unanalyzedcall on java.util.concurrent.Semaphore:acquireUnint erruptibly
unanalyzedcall on java.util.Timer:cancel
unanalyzedcall on java.util.Timer
unanalyzedcall on java.util.TimerTask
unanalyzedcall on java.util.Timer:schedule
unanalyzedcall on java.util.concurrent.Semaphore:release










method int getPingCountDownLength()
preinit'ed(this.pingCountDownLength)
postreturn_value == this.pingCountDownLength
postinit'ed(return_value)










method void setPingCountDownLength(int)
postthis.pingCountDownLength == newValue
postinit'ed(this.pingCountDownLength)










method void startPingTimer()
preinit'ed(this.pingTimer)
prethis.pingNeeded != null
preinit'ed(this.pingTimerLength)
prethis.pingTimerSem != null
postthis.pingCountDown == 1
postnew Timer(startPingTimer#1) num objects == 1
postthis.pingTimer == &amp;new Timer(startPingTimer#1)
unanalyzedcall on java.util.concurrent.atomic. AtomicBoolean:set
unanalyzedcall on java.util.TimerTask
test_vectorthis.pingTimer: Addr_Set{null}, Inverse{null}










method void pingTimerTask(Timer)
prethis.pingNeeded != null
pre(soft) this.cMyself != null
pre(soft) init'ed(this.currentSocketState)
pre(soft) this.pingCountDown >= -231+1
pre(soft) init'ed(this.pingTimer)
pre(soft) init'ed(this.stringConverter)
pre(soft) this.hChanModesOther != null
pre(soft) this.hChannelList != null
pre(soft) this.myCallbackManager != null
pre(soft) this.myCallbackManager.callbackHash != null
pre(soft) init'ed(this.out)
pre(soft) init'ed(this.pingCountDownLength)
pre(soft) this.pingTimerSem != null
postinit'ed(java.lang.String:substring(...)._tainted)
postjava.lang.String:valueOf(...)._tainted == 0
postthis.cMyself == old this.cMyself
postthis.cMyself != null
postpossibly_updated(this.cMyself.myAwayReason)
postthis.currentSocketState == old this. currentSocketState
postinit'ed(this.currentSocketState)
postthis.got001 == old this.got001
postthis.lastLine == old this.lastLine
postthis.lastPingValue == One-of{old this. lastPingValue, &amp;java.lang.String:valueOf(...)}
postthis.nNextKeyCMBool == old this.nNextKeyCMBool
postthis.nNextKeyPrefix == old this.nNextKeyPrefix
postthis.nNextKeyUser == old this.nNextKeyUser
postthis.pingCountDown == One-of{old this. pingCountDown, old this.pingCountDown - 1, this.pingCountDownLength}
postinit'ed(this.pingCountDown)
postpossibly_updated(this.pingTime)
postthis.pingTimer == old this.pingTimer
postinit'ed(this.pingTimer)
postthis.post005 == old this.post005
postthis.sNetworkName == old this.sNetworkName
postthis.sServerName == old this.sServerName
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postinit'ed(this.stringConverter)
postthis.triedAlt == old this.triedAlt
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew IRCStringConverter(getIRCStringConverter#1) num objects == undefined
postnew IRCStringConverter(getIRCStringConverter#1) num objects == 0, if init'ed
postnew IRCStringConverter(getIRCStringConverter#1). limit == new IRCStringConverter(getIRCStringConvert er#1) num objects
postnew IRCStringConverter(updateCharArrays#1) num objects == new IRCStringConverter(getIRCStringConv erter#1) num objects
postnew IRCStringConverter(updateCharArrays#1).limit == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#1).length == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#1)[...] == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2).length == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2)[...] == new IRCStringConverter(getIRCStringConverter#1) num objects
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).limit)
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).lowercase)
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == undefined
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == null
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == new IRCStringConverter(getIRCStringCon verter#1).lowercase
postnew IRCStringConverter(updateCharArrays#1). lowercase == new IRCStringConverter(getIRCStringCon verter#1).lowercase
postnew IRCStringConverter(updateCharArrays#1). uppercase == new IRCStringConverter(getIRCStringCon verter#1).lowercase
postinit'ed(new IRCStringConverter(getIRCStringConverte r#1).uppercase)
postnew char[](IRCStringConverter#1) num objects <= 1
postinit'ed(new char[](IRCStringConverter#1).length)
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postinit'ed(new char[](IRCStringConverter#2).length)
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.util.concurrent.atomic. AtomicBoolean:get
unanalyzedcall on java.util.Map:containsKey
unanalyzedcall on java.util.Map:get
unanalyzedcall on java.util.concurrent.atomic. AtomicBoolean:set
unanalyzedcall on java.lang.String:indexOf
unanalyzedcall on java.lang.String:substring
unanalyzedcall on java.lang.String:split
unanalyzedcall on java.lang.Throwable:__curr_excep_obj
unanalyzedcall on java.lang.String:equalsIgnoreCase
unanalyzedcall on java.lang.Character:valueOf
unanalyzedcall on java.lang.Byte:byteValue
unanalyzedcall on doSendString
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.lang.String:toLowerCase
unanalyzedcall on java.lang.RuntimeException
unanalyzedcall on call
unanalyzedcall on java.lang.Boolean:valueOf
unanalyzedcall on java.lang.String:charAt
unanalyzedcall on java.lang.Integer:valueOf
unanalyzedcall on java.io.PrintWriter:printf
unanalyzedcall on setAwayReason
unanalyzedcall on java.util.LinkedList
unanalyzedcall on getListModeQueue
unanalyzedcall on java.util.LinkedList:contains
unanalyzedcall on java.util.Queue:offer
unanalyzedcall on java.util.LinkedList:offer
unanalyzedcall on java.lang.System:currentTimeMillis
test_vectorthis.pingCountDown: {2..232-1}, {-231+1..1}
test_vectorthis.pingTimer: Addr_Set{null}, Inverse{null}
test_vectorcall(...)@519: {1}, {0}
test_vectorjava.lang.Object:equals(...)@1879: {0}, {1}
test_vectorjava.util.concurrent.atomic.AtomicBoolean:get(... )@1935: {0}, {1}









  call too complex - analysis skippedInfocall on void disconnect(String)











method long getServerLag()
preinit'ed(this.serverLag)
postreturn_value == this.serverLag
postinit'ed(return_value)










method long getPingTime(bool)
preinit'ed(this.pingTime)
presumptionjava.lang.System:currentTimeMillis(...)@1917 - this.pingTime in {-263.. 264-1}
postinit'ed(return_value)
test_vectoractualTime: {0}, {1}










method void setPingNeeded(bool)
prethis.pingNeeded != null










method bool getPingNeeded()
prethis.pingNeeded != null
postinit'ed(return_value)










method ClientInfo getMyself()
preinit'ed(this.cMyself)
postreturn_value == this.cMyself
postinit'ed(return_value)










method String getMyNickname()
prethis.cMyself != null
preinit'ed(this.cMyself.bIsFake)
pre(soft) init'ed(this.cMyself.sNickname)
pre(soft) init'ed(this.sThinkNickname)
postreturn_value == One-of{this.sThinkNickname, this.cMyself.sNickname}
postinit'ed(return_value)
test_vectorthis.cMyself.bIsFake: {0}, {1}










method String getMyUsername()
prethis.me != null
preinit'ed(this.me.username)
postreturn_value == this.me.username
postinit'ed(return_value)










method void addClient(ClientInfo)
preclient != null
preclient.sNickname != null
preinit'ed(this.stringConverter)
prethis.hClientList != null
pre(soft) this.stringConverter.lowercase != null
pre(soft) init'ed(this.stringConverter.lowercase[...])
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postthis.stringConverter != null
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew IRCStringConverter(getIRCStringConverter#1). limit == 4
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == &amp;new char[](IRCStringConverter#1)
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == &amp;new char[](IRCStringConverter#2)
postnew char[](IRCStringConverter#1).length == 127
postnew char[](IRCStringConverter#2).length == 127
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String










method void removeClient(ClientInfo)
preinit'ed(this.cMyself)
pre(soft) client != null
pre(soft) client.sNickname != null
pre(soft) init'ed(this.stringConverter)
pre(soft) this.hClientList != null
pre(soft) this.stringConverter.lowercase != null
pre(soft) init'ed(this.stringConverter.lowercase[...])
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postinit'ed(this.stringConverter)
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew IRCStringConverter(getIRCStringConverter#1). limit == 4
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == &amp;new char[](IRCStringConverter#1)
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == &amp;new char[](IRCStringConverter#2)
postnew char[](IRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1).length == 127
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postnew char[](IRCStringConverter#2).length == 127
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on getNickname
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.util.Map:remove
test_vectorclient == this.cMyself: {1}, {0}










method void forceRemoveClient(ClientInfo)
preclient != null
preclient.sNickname != null
preinit'ed(this.stringConverter)
prethis.hClientList != null
pre(soft) this.stringConverter.lowercase != null
pre(soft) init'ed(this.stringConverter.lowercase[...])
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postthis.stringConverter != null
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew IRCStringConverter(getIRCStringConverter#1). limit == 4
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == &amp;new char[](IRCStringConverter#1)
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == &amp;new char[](IRCStringConverter#2)
postnew char[](IRCStringConverter#1).length == 127
postnew char[](IRCStringConverter#2).length == 127
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String










method int knownClients()
prethis.hClientList != null
postinit'ed(return_value)










method Collection getClients()
prethis.hClientList != null
postinit'ed(return_value)










method void clearClients()
preinit'ed(this.stringConverter)
prethis.cMyself != null
prethis.cMyself.sNickname != null
prethis.hClientList != null
pre(soft) this.stringConverter.lowercase != null
pre(soft) init'ed(this.stringConverter.lowercase[...])
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postthis.stringConverter != null
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
postnew IRCStringConverter(getIRCStringConverter#1). limit == 4
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == &amp;new char[](IRCStringConverter#1)
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == &amp;new char[](IRCStringConverter#2)
postnew char[](IRCStringConverter#1).length == 127
postnew char[](IRCStringConverter#2).length == 127
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on getNickname
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String
unanalyzedcall on java.util.Map:put










method void addChannel(ChannelInfo)
prechannel != null
prechannel.sName != null
preinit'ed(this.stringConverter)
prethis.hChannelList != null
pre(soft) this.stringConverter.lowercase != null
pre(soft) init'ed(this.stringConverter.lowercase[...])
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postthis.stringConverter != null
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew IRCStringConverter(getIRCStringConverter#1). limit == 4
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == &amp;new char[](IRCStringConverter#1)
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == &amp;new char[](IRCStringConverter#2)
postnew char[](IRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1).length == 127
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postnew char[](IRCStringConverter#2).length == 127
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String










method void removeChannel(ChannelInfo)
prechannel != null
prechannel.sName != null
preinit'ed(this.stringConverter)
prethis.hChannelList != null
pre(soft) this.stringConverter.lowercase != null
pre(soft) init'ed(this.stringConverter.lowercase[...])
postthis.stringConverter == One-of{old this. stringConverter, &amp;new IRCStringConverter(getIRC StringConverter#1)}
postthis.stringConverter != null
postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
postnew IRCStringConverter(getIRCStringConverter#1). limit == 4
postnew IRCStringConverter(getIRCStringConverter#1). lowercase == &amp;new char[](IRCStringConverter#1)
postnew IRCStringConverter(getIRCStringConverter#1). uppercase == &amp;new char[](IRCStringConverter#2)
postnew char[](IRCStringConverter#1) num objects <= 1
postnew char[](IRCStringConverter#1).length == 127
postpossibly_updated(new char[](IRCStringConverter#1)[...])
postnew char[](IRCStringConverter#2) num objects <= 1
postnew char[](IRCStringConverter#2).length == 127
postpossibly_updated(new char[](IRCStringConverter#2)[...])
unanalyzedcall on java.lang.String:toCharArray
unanalyzedcall on java.lang.String:length
unanalyzedcall on java.lang.String










method int knownChannels()
prethis.hChannelList != null
postinit'ed(return_value)










method Collection getChannels()
prethis.hChannelList != null
postinit'ed(return_value)










method void clearChannels()
prethis.hChannelList != null