Skip to content

Commit

Permalink
Merge pull request #685 from sandeepdhankar-okta/patch-1
Browse files Browse the repository at this point in the history
add support for additional BE and BS flags
  • Loading branch information
ynojima committed Aug 5, 2022
2 parents 524329d + e8cf707 commit e17a0cc
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@
public class AuthenticatorData<T extends ExtensionAuthenticatorOutput> implements Serializable {
public static final byte BIT_UP = (byte) 0b00000001;
public static final byte BIT_UV = (byte) 0b00000100;
public static final byte BIT_BE = (byte) 0b00001000;
public static final byte BIT_BS = (byte) 0b00010000;
public static final byte BIT_AT = (byte) 0b01000000;
public static final byte BIT_ED = (byte) 0b10000000;

Expand Down Expand Up @@ -100,6 +102,14 @@ public static boolean checkFlagUV(byte flags) {
return (flags & BIT_UV) != 0;
}

public static boolean checkFlagBE(byte flags) {
return (flags & BIT_BE) != 0;
}

public static boolean checkFlagBS(byte flags) {
return (flags & BIT_BS) != 0;
}

public static boolean checkFlagAT(byte flags) {
return (flags & BIT_AT) != 0;
}
Expand All @@ -124,6 +134,14 @@ public boolean isFlagUV() {
return checkFlagUV(this.flags);
}

public boolean isFlagBE() {
return checkFlagBE(this.flags);
}

public boolean isFlagBS() {
return checkFlagBS(this.flags);
}

public boolean isFlagAT() {
return checkFlagAT(this.flags);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,27 +35,52 @@ void flag_operation_test() {
AuthenticatorData<RegistrationExtensionAuthenticatorOutput> target2 = new AuthenticatorData<>(new byte[32], BIT_UV, 0);
AuthenticatorData<RegistrationExtensionAuthenticatorOutput> target3 = new AuthenticatorData<>(new byte[32], BIT_AT, 0);
AuthenticatorData<RegistrationExtensionAuthenticatorOutput> target4 = new AuthenticatorData<>(new byte[32], BIT_ED, 0);
AuthenticatorData<RegistrationExtensionAuthenticatorOutput> target5 = new AuthenticatorData<>(new byte[32], BIT_BE, 0);
AuthenticatorData<RegistrationExtensionAuthenticatorOutput> target6 = new AuthenticatorData<>(new byte[32], BIT_BS, 0);

assertAll(
() -> assertThat(target1.isFlagUP()).isTrue(),
() -> assertThat(target1.isFlagUV()).isFalse(),
() -> assertThat(target1.isFlagAT()).isFalse(),
() -> assertThat(target1.isFlagED()).isFalse(),
() -> assertThat(target1.isFlagBE()).isFalse(),
() -> assertThat(target1.isFlagBS()).isFalse(),

() -> assertThat(target2.isFlagUP()).isFalse(),
() -> assertThat(target2.isFlagUV()).isTrue(),
() -> assertThat(target2.isFlagAT()).isFalse(),
() -> assertThat(target2.isFlagED()).isFalse(),
() -> assertThat(target2.isFlagBE()).isFalse(),
() -> assertThat(target2.isFlagBS()).isFalse(),

() -> assertThat(target3.isFlagUP()).isFalse(),
() -> assertThat(target3.isFlagUV()).isFalse(),
() -> assertThat(target3.isFlagAT()).isTrue(),
() -> assertThat(target3.isFlagED()).isFalse(),
() -> assertThat(target3.isFlagBE()).isFalse(),
() -> assertThat(target3.isFlagBS()).isFalse(),

() -> assertThat(target4.isFlagUP()).isFalse(),
() -> assertThat(target4.isFlagUV()).isFalse(),
() -> assertThat(target4.isFlagAT()).isFalse(),
() -> assertThat(target4.isFlagED()).isTrue()
() -> assertThat(target4.isFlagED()).isTrue(),
() -> assertThat(target4.isFlagBE()).isFalse(),
() -> assertThat(target4.isFlagBS()).isFalse(),

() -> assertThat(target5.isFlagUP()).isFalse(),
() -> assertThat(target5.isFlagUV()).isFalse(),
() -> assertThat(target5.isFlagAT()).isFalse(),
() -> assertThat(target5.isFlagED()).isFalse(),
() -> assertThat(target5.isFlagBE()).isTrue(),
() -> assertThat(target5.isFlagBS()).isFalse(),

() -> assertThat(target6.isFlagUP()).isFalse(),
() -> assertThat(target6.isFlagUV()).isFalse(),
() -> assertThat(target6.isFlagAT()).isFalse(),
() -> assertThat(target6.isFlagED()).isFalse(),
() -> assertThat(target6.isFlagBE()).isFalse(),
() -> assertThat(target6.isFlagBS()).isTrue()

);
}

Expand Down

0 comments on commit e17a0cc

Please sign in to comment.