ClientInfo.java


current inspection = 2009-09-03 21:56:13 (id #1)


Filter Options
Annotation Kind:
pre
presumption
post
unanalyzed
test_vector


  • void addChannelClientInfo(ChannelClientInfo)

  • Kind Annotation Text
    pre(soft) init'ed(this.myParser.stringConverter. lowercase[...])
    pre(soft) this.myParser.stringConverter.lowercase != null
    precci != null
    precci.myChannel != null
    precci.myChannel.sName != null
    preinit'ed(this.myParser.stringConverter)
    prethis.myChannelClientInfos != null
    prethis.myParser != 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 == new IRCStringConverter(getIRCStringConverter#1) num objects
    postnew char[](IRCStringConverter#1).length == 127
    postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
    postnew char[](IRCStringConverter#2).length == 127
    postpossibly_updated(new char[](IRCStringConverter#1)[...])
    postpossibly_updated(new char[](IRCStringConverter#2)[...])
    postthis.myParser.stringConverter != null
    postthis.myParser.stringConverter == One-of{old this.myParser.stringConverter, &amp;new IRCStringConverter(getIRCStringConverter#1)}
    unanalyzedcall on java.lang.String
    unanalyzedcall on java.lang.String:length
    unanalyzedcall on java.lang.String:toCharArray
    test_vectorjava.util.Map:containsKey(...)@301: {1}, {0}

  • void alterMode(bool, Character)

  • Kind Annotation Text
    pre(soft) init'ed(this.myParser.currentSocketState)
    pre(soft) init'ed(this.myParser.out)
    pre(soft) init'ed(this.myParser.stringConverter)
    pre(soft) init'ed(this.sNickname)
    pre(soft) this.lModeQueue != null
    pre(soft) this.myParser != null
    pre(soft) this.myParser.cMyself != null
    pre(soft) this.myParser.h005Info != null
    pre(soft) this.myParser.hChanModesOther != null
    pre(soft) this.myParser.hChannelList != null
    pre(soft) this.myParser.hUserModes != null
    pre(soft) this.myParser.myCallbackManager != null
    pre(soft) this.myParser.myCallbackManager. callbackHash != null
    preinit'ed(this.bIsFake)
    postinit'ed(java.lang.String:substring(...)._tainted)
    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)
    postinit'ed(new char[](IRCStringConverter#2).length)
    postinit'ed(this.myParser.stringConverter)
    postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
    postnew char[](IRCStringConverter#1) num objects <= 1
    postnew char[](IRCStringConverter#2) num objects <= 1
    postpossibly_updated(new char[](IRCStringConverter#1)[...])
    postpossibly_updated(new char[](IRCStringConverter#2)[...])
    postpossibly_updated(this...myAwayReason)
    postthis.myParser.stringConverter == One-of{old this.myParser.stringConverter, &amp;new IRCStringConverter(getIRCStringConverter#1)}
    unanalyzedcall on call
    unanalyzedcall on callDebugInfo
    unanalyzedcall on doSendString
    unanalyzedcall on getListModeQueue
    unanalyzedcall on java.io.PrintWriter:printf
    unanalyzedcall on java.lang.Boolean:valueOf
    unanalyzedcall on java.lang.Byte:byteValue
    unanalyzedcall on java.lang.Character:valueOf
    unanalyzedcall on java.lang.Integer:valueOf
    unanalyzedcall on java.lang.RuntimeException
    unanalyzedcall on java.lang.String
    unanalyzedcall on java.lang.String:charAt
    unanalyzedcall on java.lang.String:equalsIgnoreCase
    unanalyzedcall on java.lang.String:format
    unanalyzedcall on java.lang.String:indexOf
    unanalyzedcall on java.lang.String:length
    unanalyzedcall on java.lang.String:split
    unanalyzedcall on java.lang.String:substring
    unanalyzedcall on java.lang.String:toCharArray
    unanalyzedcall on java.lang.String:toLowerCase
    unanalyzedcall on java.lang.System:currentTimeMillis
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj
    unanalyzedcall on java.util.LinkedList
    unanalyzedcall on java.util.LinkedList:contains
    unanalyzedcall on java.util.LinkedList:offer
    unanalyzedcall on java.util.List:clear
    unanalyzedcall on java.util.List:get
    unanalyzedcall on java.util.List:isEmpty
    unanalyzedcall on java.util.List:size
    unanalyzedcall on java.util.Map:containsKey
    unanalyzedcall on java.util.Map:get
    unanalyzedcall on java.util.Queue:offer
    unanalyzedcall on setAwayReason
    test_vectorjava.util.List:contains(...)@373: {0}, {1}
    test_vectorjava.util.List:contains(...)@376: {0}, {1}
    test_vectorjava.util.Map:containsKey(...)@363: {0}, {1}
    test_vectorjava.util.Map:containsKey(...)@371: {1}, {0}
    test_vectorthis.bIsFake: {0}, {1}

  • int channelCount()

  • Kind Annotation Text
    prethis.myChannelClientInfos != null
    postinit'ed(return_value)

  • bool checkVisibility()

  • Kind Annotation Text
    prethis.myChannelClientInfos != null
    postinit'ed(return_value)

  • void clearModeQueue()

  • Kind Annotation Text
    prethis.lModeQueue != null

  • void com.dmdirc.parser.irc.ClientInfo(IRCParser, String)

  • Kind Annotation Text
    presHostmask != null
    postinit'ed(this.myParser)
    postnew HashMap(ClientInfo#3) num objects == 1
    postnew Hashtable(ClientInfo#1) num objects == 1
    postnew LinkedList(ClientInfo#2) num objects == 1
    postthis.lModeQueue == &amp;new LinkedList(ClientInfo#2 )
    postthis.myAwayReason == &amp;""
    postthis.myChannelClientInfos == &amp;new Hashtable(ClientInfo#1)
    postthis.myMap == &amp;new HashMap(ClientInfo#3)
    postthis.myParser == tParser
    postthis.sHost == One-of{this.myAwayReason, undefined}
    postthis.sHost in Addr_Set{null,&amp;""}
    postthis.sIdent == One-of{this.myAwayReason, undefined}
    postthis.sIdent in Addr_Set{null,&amp;""}
    postthis.sNickname == null
    postthis.sNickname == undefined
    postthis.sRealName == &amp;""
    unanalyzedcall on java.lang.String:charAt
    unanalyzedcall on java.lang.String:isEmpty
    unanalyzedcall on java.lang.String:split
    unanalyzedcall on java.lang.String:substring

  • com.dmdirc.parser.irc.ClientInfo__static_init

  • Kind Annotation Text

  • void delChannelClientInfo(ChannelClientInfo)

  • Kind Annotation Text
    pre(soft) init'ed(this.myParser.stringConverter. lowercase[...])
    pre(soft) this.myParser.stringConverter.lowercase != null
    precci != null
    precci.myChannel != null
    precci.myChannel.sName != null
    preinit'ed(this.myParser.stringConverter)
    prethis.myChannelClientInfos != null
    prethis.myParser != 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 == new IRCStringConverter(getIRCStringConverter#1) num objects
    postnew char[](IRCStringConverter#1).length == 127
    postnew char[](IRCStringConverter#2) num objects == new IRCStringConverter(getIRCStringConverter#1) num objects
    postnew char[](IRCStringConverter#2).length == 127
    postpossibly_updated(new char[](IRCStringConverter#1)[...])
    postpossibly_updated(new char[](IRCStringConverter#2)[...])
    postthis.myParser.stringConverter != null
    postthis.myParser.stringConverter == One-of{old this.myParser.stringConverter, &amp;new IRCStringConverter(getIRCStringConverter#1)}
    unanalyzedcall on java.lang.String
    unanalyzedcall on java.lang.String:length
    unanalyzedcall on java.lang.String:toCharArray
    test_vectorjava.util.Map:containsKey(...)@313: {0}, {1}

  • String getAwayReason()

  • Kind Annotation Text
    preinit'ed(this.myAwayReason)
    postinit'ed(return_value)
    postreturn_value == this.myAwayReason

  • bool getAwayState()

  • Kind Annotation Text
    preinit'ed(this.bIsAway)
    postinit'ed(return_value)
    postreturn_value == this.bIsAway

  • List getChannelClients()

  • Kind Annotation Text
    prethis.myChannelClientInfos != null
    presumptionjava.util.Map:values(...)@343 != null
    postnew ArrayList(getChannelClients#1) num objects == 1
    postreturn_value == &amp;new ArrayList(getChannelClient s#1)
    test_vectorjava.util.Iterator:hasNext(...)@343: {0}, {1}

  • String getHost()

  • Kind Annotation Text
    preinit'ed(this.sHost)
    postinit'ed(return_value)
    postreturn_value == this.sHost

  • String getIdent()

  • Kind Annotation Text
    preinit'ed(this.sIdent)
    postinit'ed(return_value)
    postreturn_value == this.sIdent

  • Map getMap()

  • Kind Annotation Text
    preinit'ed(this.myMap)
    postinit'ed(return_value)
    postreturn_value == this.myMap

  • String getNickname()

  • Kind Annotation Text
    preinit'ed(this.sNickname)
    postinit'ed(return_value)
    postreturn_value == this.sNickname

  • IRCParser getParser()

  • Kind Annotation Text
    postinit'ed(return_value)
    postreturn_value == this.myParser

  • String getRealName()

  • Kind Annotation Text
    preinit'ed(this.sRealName)
    postinit'ed(return_value)
    postreturn_value == this.sRealName

  • long getUserMode()

  • Kind Annotation Text
    preinit'ed(this.nModes)
    postinit'ed(return_value)
    postreturn_value == this.nModes

  • String getUserModeStr()

  • Kind Annotation Text
    preinit'ed(this.nModes)
    prethis.myParser != null
    prethis.myParser.hUserModes != null
    presumptionjava.util.Iterator:next(...)@274 != null
    presumptionjava.util.Map:get(...)@275 != null
    presumptionjava.util.Map:keySet(...)@274 != null
    postjava.lang.StringBuilder:toString(...)._tainted == 0
    postreturn_value == &amp;java.lang.StringBuilder:toStri ng(...)
    test_vectorjava.util.Iterator:hasNext(...)@274: {0}, {1}

  • bool isFake()

  • Kind Annotation Text
    preinit'ed(this.bIsFake)
    postinit'ed(return_value)
    postreturn_value == this.bIsFake

  • bool isOper()

  • Kind Annotation Text
    preinit'ed(this.nModes)
    prethis.myParser != null
    prethis.myParser.hUserModes != null
    postinit'ed(return_value)
    unanalyzedcall on java.lang.Character:charValue
    unanalyzedcall on java.lang.Character:valueOf
    unanalyzedcall on java.lang.Long:longValue
    unanalyzedcall on java.util.Map:get
    unanalyzedcall on java.util.Map:keySet
    unanalyzedcall on java.util.Set:iterator

  • bool isServer()

  • Kind Annotation Text
    prethis.sNickname != null
    postinit'ed(return_value)

  • String parseHost(String)

  • Kind Annotation Text
    presWho != null
    postreturn_value == null
    postreturn_value == undefined
    unanalyzedcall on java.lang.String:charAt
    unanalyzedcall on java.lang.String:isEmpty
    unanalyzedcall on java.lang.String:split
    unanalyzedcall on java.lang.String:substring

  • String[] parseHostFull(String)

  • Kind Annotation Text
    presWho != null
    postnew String[](parseHostFull#1) num objects == 1
    postreturn_value == &amp;new String[](parseHostFull#1)
    postreturn_value.length == 3
    postreturn_value[0] == null
    postreturn_value[0] == undefined
    postreturn_value[1] == null
    postreturn_value[2] == null
    test_vectorjava.lang.String:charAt(...)@139: {0..57, 59..216-1}, {58}
    test_vectorjava.lang.String:isEmpty(...)@139: {1}, {0}

  • void sendModes()

  • Kind Annotation Text
    pre(soft) init'ed(this.myParser.currentSocketState)
    pre(soft) init'ed(this.myParser.out)
    pre(soft) init'ed(this.myParser.stringConverter)
    pre(soft) init'ed(this.sNickname)
    pre(soft) this.myParser != null
    pre(soft) this.myParser.cMyself != null
    pre(soft) this.myParser.hChanModesOther != null
    pre(soft) this.myParser.hChannelList != null
    pre(soft) this.myParser.myCallbackManager != null
    pre(soft) this.myParser.myCallbackManager. callbackHash != null
    prethis.lModeQueue != null
    presumptionjava.util.List:get(...)@398 != null
    postinit'ed(java.lang.String:substring(...)._tainted)
    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)
    postinit'ed(new char[](IRCStringConverter#2).length)
    postinit'ed(this.myParser.stringConverter)
    postnew IRCStringConverter(getIRCStringConverter#1) num objects <= 1
    postnew char[](IRCStringConverter#1) num objects <= 1
    postnew char[](IRCStringConverter#2) num objects <= 1
    postpossibly_updated(new char[](IRCStringConverter#1)[...])
    postpossibly_updated(new char[](IRCStringConverter#2)[...])
    postpossibly_updated(this...myAwayReason)
    postthis.myParser.stringConverter == One-of{old this.myParser.stringConverter, &amp;new IRCStringConverter(getIRCStringConverter#1)}
    unanalyzedcall on call
    unanalyzedcall on callDebugInfo
    unanalyzedcall on doSendString
    unanalyzedcall on getListModeQueue
    unanalyzedcall on java.io.PrintWriter:printf
    unanalyzedcall on java.lang.Boolean:valueOf
    unanalyzedcall on java.lang.Byte:byteValue
    unanalyzedcall on java.lang.Character:valueOf
    unanalyzedcall on java.lang.Integer:valueOf
    unanalyzedcall on java.lang.RuntimeException
    unanalyzedcall on java.lang.String
    unanalyzedcall on java.lang.String:charAt
    unanalyzedcall on java.lang.String:equalsIgnoreCase
    unanalyzedcall on java.lang.String:format
    unanalyzedcall on java.lang.String:indexOf
    unanalyzedcall on java.lang.String:length
    unanalyzedcall on java.lang.String:split
    unanalyzedcall on java.lang.String:substring
    unanalyzedcall on java.lang.String:toCharArray
    unanalyzedcall on java.lang.String:toLowerCase
    unanalyzedcall on java.lang.System:currentTimeMillis
    unanalyzedcall on java.lang.Throwable:__curr_excep_obj
    unanalyzedcall on java.util.LinkedList
    unanalyzedcall on java.util.LinkedList:contains
    unanalyzedcall on java.util.LinkedList:offer
    unanalyzedcall on java.util.List:clear
    unanalyzedcall on java.util.Map:containsKey
    unanalyzedcall on java.util.Map:get
    unanalyzedcall on java.util.Queue:offer
    unanalyzedcall on setAwayReason
    test_vectorjava.lang.String:charAt(...)@399: {0..42, 44..216-1}, {43}
    test_vectorjava.lang.StringBuilder:length(...)@406: {-231..0}, {1..232-1}
    test_vectorjava.lang.StringBuilder:length(...)@407: {-231..0}, {1..232-1}
    test_vectorjava.util.List:isEmpty(...)@391: {0}, {1}

  • void setAwayReason(String)

  • Kind Annotation Text
    postinit'ed(this.myAwayReason)
    postthis.myAwayReason == newValue

  • void setAwayState(bool)

  • Kind Annotation Text
    postinit'ed(this.bIsAway)
    postthis.bIsAway == bNewState
    postthis.myAwayReason == One-of{old this.myAwayReason, &amp;""}
    test_vectorbNewState: {1}, {0}

  • ClientInfo setFake(bool)

  • Kind Annotation Text
    postinit'ed(this.bIsFake)
    postreturn_value != null
    postreturn_value == this
    postthis.bIsFake == newValue

  • void setMap(Map)

  • Kind Annotation Text
    postinit'ed(this.myMap)
    postthis.myMap == newMap

  • void setRealName(String)

  • Kind Annotation Text
    postinit'ed(this.sRealName)
    postthis.sRealName == newValue

  • void setUserBits(String, bool)

  • Kind Annotation Text
    presHostmask != null
    postthis.sHost == One-of{old this.sHost, &amp;"", undefined}
    postthis.sIdent == One-of{old this.sIdent, &amp;"", undefined}
    postthis.sNickname == One-of{old this.sNickname, undefined}
    unanalyzedcall on java.lang.String:charAt
    unanalyzedcall on java.lang.String:isEmpty
    unanalyzedcall on java.lang.String:split
    unanalyzedcall on java.lang.String:substring

  • void setUserBits(String, bool, bool)

  • Kind Annotation Text
    presHostmask != null
    postthis.sHost == One-of{old this.sHost, &amp;"", undefined}
    postthis.sIdent == One-of{old this.sIdent, &amp;"", undefined}
    postthis.sNickname == One-of{old this.sNickname, undefined}
    unanalyzedcall on java.lang.String:charAt
    unanalyzedcall on java.lang.String:isEmpty
    unanalyzedcall on java.lang.String:split
    unanalyzedcall on java.lang.String:substring
    test_vectorallowBlank: {0}, {1}
    test_vectorbUpdateNick: {0}, {1}

  • void setUserMode(long)

  • Kind Annotation Text
    postinit'ed(this.nModes)
    postthis.nModes == nNewMode

  • String toString()

  • Kind Annotation Text
    preinit'ed(this.sHost)
    preinit'ed(this.sIdent)
    preinit'ed(this.sNickname)
    postinit'ed(java.lang.StringBuilder:toString(...)._ tainted)
    postjava.lang.StringBuilder:toString(...)._tainted == this.sHost._tainted | this.sNickname._tainted | this.sIdent._tainted
    postreturn_value == &amp;java.lang.StringBuilder:toStri ng(...)