[java-shib-attribute] 01/05: IDP-2069 Null handling task

Rod Widdowson rdw at steadingsoftware.com
Wed May 3 13:53:28 UTC 2023


This is an automated email from the git hooks/post-receive script.

rdw pushed a commit to branch main
in repository java-shib-attribute.

View the commit online:
http://git.shibboleth.net/view/?p=java-shib-attribute.git;a=commit;h=2f3eb4c5e932279bbcded44a04983bb5af6e9364

commit 2f3eb4c5e932279bbcded44a04983bb5af6e9364
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Mon May 1 14:49:23 2023 +0100

    IDP-2069 Null handling task
    
    https://shibboleth.atlassian.net/browse/IDP-2069
    
    Fix the easier-to-fix warnings in shib-attribute-filter-impl
---
 .../filter/policyrule/logic/impl/AbstractComposedPolicyRule.java    | 1 +
 .../idp/attribute/filter/policyrule/logic/impl/NotPolicyRule.java   | 6 ++++--
 .../net/shibboleth/idp/attribute/impl/ComputedPairwiseIdStore.java  | 6 ++++--
 3 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/AbstractComposedPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/AbstractComposedPolicyRule.java
index e46e1e68c..831c135b1 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/AbstractComposedPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/AbstractComposedPolicyRule.java
@@ -69,6 +69,7 @@ public abstract class AbstractComposedPolicyRule extends AbstractIdentifiableIni
      * @return the composed matchers
      */
     @Nonnull @NonnullElements @Unmodifiable @NotLive public List<PolicyRequirementRule> getComposedRules() {
+        assert rules != null;
         return rules;
     }
 
diff --git a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/NotPolicyRule.java b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/NotPolicyRule.java
index 4ff9875a7..b641dbac6 100644
--- a/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/NotPolicyRule.java
+++ b/shib-attribute-filter-impl/src/main/java/net/shibboleth/idp/attribute/filter/policyrule/logic/impl/NotPolicyRule.java
@@ -54,7 +54,9 @@ public final class NotPolicyRule extends AbstractIdentifiableInitializableCompon
      * 
      * @return matcher that is being negated
      */
-    @NonnullAfterInit public PolicyRequirementRule getNegatedRule() {
+    @Nonnull public PolicyRequirementRule getNegatedRule() {
+        checkComponentActive();
+        assert negatedRule!=null;
         return negatedRule;
     }
     
@@ -87,4 +89,4 @@ public final class NotPolicyRule extends AbstractIdentifiableInitializableCompon
     @Override public String toString() {
         return MoreObjects.toStringHelper(this).add("Negated Policy Rule", negatedRule).toString();
     }
-}
\ No newline at end of file
+}
diff --git a/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/impl/ComputedPairwiseIdStore.java b/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/impl/ComputedPairwiseIdStore.java
index d852e5fcb..7ad92d33a 100644
--- a/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/impl/ComputedPairwiseIdStore.java
+++ b/shib-attribute-impl/src/main/java/net/shibboleth/idp/attribute/impl/ComputedPairwiseIdStore.java
@@ -299,10 +299,12 @@ public class ComputedPairwiseIdStore extends AbstractInitializableComponent impl
             md.update(sourceId.getBytes());
             md.update((byte) '!');
 
+            final byte digestedEffectiveSalt[] = md.digest(effectiveSalt);
+            assert digestedEffectiveSalt!=null;
             if (encoding == Encoding.BASE32) {
-                pid.setPairwiseId(Base32Support.encode(md.digest(effectiveSalt), Base32Support.UNCHUNKED));
+                pid.setPairwiseId(Base32Support.encode(digestedEffectiveSalt, Base32Support.UNCHUNKED));
             } else if (encoding == Encoding.BASE64) {
-                pid.setPairwiseId(Base64Support.encode(md.digest(effectiveSalt), Base64Support.UNCHUNKED));
+                pid.setPairwiseId(Base64Support.encode(digestedEffectiveSalt, Base64Support.UNCHUNKED));
             } else {
                 throw new IOException("Desired encoding was not recognized, unable to compute ID");
             }

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list