FindBugs Bug Detector Report

The following document contains the results of FindBugs

FindBugs Version is 3.0.1

Threshold is medium

Effort is min

Summary

Classes Bugs Errors Missing Classes
418 27 0 69

io.github.hapjava.characteristics.impl.base.EnumCharacteristic

Bug Category Details Line Priority
io.github.hapjava.characteristics.impl.base.EnumCharacteristic.getValidValues() may expose internal representation by returning EnumCharacteristic.validValues MALICIOUS_CODE EI_EXPOSE_REP 160 Medium
new io.github.hapjava.characteristics.impl.base.EnumCharacteristic(String, String, CharacteristicEnum[], Optional, Optional, Optional, Optional) may expose internal representation by storing an externally mutable object into EnumCharacteristic.validValues MALICIOUS_CODE EI_EXPOSE_REP2 56 Medium

io.github.hapjava.server.impl.HomekitRoot

Bug Category Details Line Priority
Inconsistent synchronization of io.github.hapjava.server.impl.HomekitRoot.nestedBatches; locked 71% of time MT_CORRECTNESS IS2_INCONSISTENT_SYNC 132 Medium

io.github.hapjava.server.impl.HomekitUtils

Bug Category Details Line Priority
Comparison of String objects using == or != in io.github.hapjava.server.impl.HomekitUtils.generatePin() BAD_PRACTICE ES_COMPARING_STRINGS_WITH_EQ 46 High
Comparison of String objects using == or != in io.github.hapjava.server.impl.HomekitUtils.generatePin() BAD_PRACTICE ES_COMPARING_STRINGS_WITH_EQ 46 High
Comparison of String objects using == or != in io.github.hapjava.server.impl.HomekitUtils.generatePin() BAD_PRACTICE ES_COMPARING_STRINGS_WITH_EQ 46 High
Comparison of String objects using == or != in io.github.hapjava.server.impl.HomekitUtils.generatePin() BAD_PRACTICE ES_COMPARING_STRINGS_WITH_EQ 46 High
Comparison of String objects using == or != in io.github.hapjava.server.impl.HomekitUtils.generatePin() BAD_PRACTICE ES_COMPARING_STRINGS_WITH_EQ 46 High
Comparison of String objects using == or != in io.github.hapjava.server.impl.HomekitUtils.generatePin() BAD_PRACTICE ES_COMPARING_STRINGS_WITH_EQ 46 High
Comparison of String objects using == or != in io.github.hapjava.server.impl.HomekitUtils.generatePin() BAD_PRACTICE ES_COMPARING_STRINGS_WITH_EQ 46 High
Comparison of String objects using == or != in io.github.hapjava.server.impl.HomekitUtils.generatePin() BAD_PRACTICE ES_COMPARING_STRINGS_WITH_EQ 46 High
Comparison of String objects using == or != in io.github.hapjava.server.impl.HomekitUtils.generatePin() BAD_PRACTICE ES_COMPARING_STRINGS_WITH_EQ 46 High
Comparison of String objects using == or != in io.github.hapjava.server.impl.HomekitUtils.generatePin() BAD_PRACTICE ES_COMPARING_STRINGS_WITH_EQ 46 High
Comparison of String objects using == or != in io.github.hapjava.server.impl.HomekitUtils.generatePin() BAD_PRACTICE ES_COMPARING_STRINGS_WITH_EQ 46 High
Comparison of String objects using == or != in io.github.hapjava.server.impl.HomekitUtils.generatePin() BAD_PRACTICE ES_COMPARING_STRINGS_WITH_EQ 46 High

io.github.hapjava.server.impl.connections.SubscriptionManager

Bug Category Details Line Priority
Comparison of String objects using == or != in io.github.hapjava.server.impl.connections.SubscriptionManager.resync(HomekitRegistry) BAD_PRACTICE ES_COMPARING_STRINGS_WITH_EQ 188 Medium

io.github.hapjava.server.impl.crypto.ChachaDecoder

Bug Category Details Line Priority
new io.github.hapjava.server.impl.crypto.ChachaDecoder(byte[], byte[]) may expose internal representation by storing an externally mutable object into ChachaDecoder.key MALICIOUS_CODE EI_EXPOSE_REP2 18 Medium

io.github.hapjava.server.impl.crypto.ChachaEncoder

Bug Category Details Line Priority
Dead store to len in io.github.hapjava.server.impl.crypto.ChachaEncoder.encodeCiphertext(byte[], byte[]) STYLE DLS_DEAD_LOCAL_STORE 76 Medium
new io.github.hapjava.server.impl.crypto.ChachaEncoder(byte[], byte[]) may expose internal representation by storing an externally mutable object into ChachaEncoder.key MALICIOUS_CODE EI_EXPOSE_REP2 16 Medium

io.github.hapjava.server.impl.crypto.HAPSetupCodeUtils

Bug Category Details Line Priority
Boxing/unboxing to parse a primitive io.github.hapjava.server.impl.crypto.HAPSetupCodeUtils.getSetupURI(String, String, int) PERFORMANCE DM_BOXED_PRIMITIVE_FOR_PARSING 61 High
Found reliance on default encoding in io.github.hapjava.server.impl.crypto.HAPSetupCodeUtils.calculateHash(String, Digest): String.getBytes() I18N DM_DEFAULT_ENCODING 24 High
Vacuous lor operation on HAPSetupCodeUtils.java:[line 54] in io.github.hapjava.server.impl.crypto.HAPSetupCodeUtils.getSetupURI(String, String, int) STYLE INT_VACUOUS_BIT_OPERATION 54 Medium

io.github.hapjava.server.impl.jmdns.JmdnsHomekitAdvertiser

Bug Category Details Line Priority
Comparison of String parameter using == or != in io.github.hapjava.server.impl.jmdns.JmdnsHomekitAdvertiser.setMac(String) BAD_PRACTICE ES_COMPARING_PARAMETER_STRING_WITH_EQ 83 High

io.github.hapjava.server.impl.json.AccessoryController

Bug Category Details Line Priority
Nullcheck of jsonWriter at line 70 of value previously dereferenced in io.github.hapjava.server.impl.json.AccessoryController.listing() CORRECTNESS RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 70 Medium

io.github.hapjava.server.impl.json.CharacteristicsController

Bug Category Details Line Priority
Nullcheck of jsonWriter at line 63 of value previously dereferenced in io.github.hapjava.server.impl.json.CharacteristicsController.get(HttpRequest) CORRECTNESS RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 63 Medium

io.github.hapjava.server.impl.json.EventController

Bug Category Details Line Priority
Nullcheck of jsonWriter at line 30 of value previously dereferenced in io.github.hapjava.server.impl.json.EventController.getMessage(int, int, EventableCharacteristic) CORRECTNESS RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 30 Medium
Nullcheck of jsonWriter at line 51 of value previously dereferenced in io.github.hapjava.server.impl.json.EventController.getMessage(List) CORRECTNESS RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE 51 Medium