File tree Expand file tree Collapse file tree
src/main/java/io/cos/cas/osf/model Expand file tree Collapse file tree Original file line number Diff line number Diff line change 44import lombok .Getter ;
55import lombok .NoArgsConstructor ;
66import lombok .ToString ;
7+ import lombok .extern .slf4j .Slf4j ;
78
89import org .apache .commons .codec .binary .Base32 ;
910
2829@ NoArgsConstructor
2930@ Getter
3031@ ToString
32+ @ Slf4j
3133public class OsfTotp extends AbstractOsfModel {
3234
3335 @ OneToOne
@@ -50,8 +52,14 @@ private boolean isDeleted() {
5052 }
5153
5254 public String getTotpSecretBase32 () {
53- final byte [] bytes = DatatypeConverter .parseHexBinary (totpSecret );
54- return new Base32 ().encodeAsString (bytes );
55+ try {
56+ // Handle totpSecret generated before OSF Python 3.12 upgrade
57+ final byte [] bytes = DatatypeConverter .parseHexBinary (totpSecret );
58+ return new Base32 ().encodeAsString (bytes );
59+ } catch (final IllegalArgumentException e ) {
60+ // Handle totpSecret generated after OSF Python 3.12 upgrade
61+ return new Base32 ().encodeAsString (totpSecret .getBytes ());
62+ }
5563 }
5664
5765 public boolean isActive () {
You can’t perform that action at this time.
0 commit comments