OmemoVerifiedIceUdpTransportInfo.java

 1package eu.siacs.conversations.xmpp.jingle.stanzas;
 2
 3import eu.siacs.conversations.xml.Namespace;
 4
 5public class OmemoVerifiedIceUdpTransportInfo extends IceUdpTransportInfo {
 6
 7
 8    public void ensureNoPlaintextFingerprint() {
 9        if (this.findChild("fingerprint", Namespace.JINGLE_APPS_DTLS) != null) {
10            throw new IllegalStateException("OmemoVerifiedIceUdpTransportInfo contains plaintext fingerprint");
11        }
12    }
13
14    public static IceUdpTransportInfo upgrade(final IceUdpTransportInfo transportInfo) {
15        if (transportInfo.hasChild("fingerprint", Namespace.JINGLE_APPS_DTLS)) {
16            return transportInfo;
17        }
18        if (transportInfo.hasChild("fingerprint", Namespace.OMEMO_DTLS_SRTP_VERIFICATION)) {
19            final OmemoVerifiedIceUdpTransportInfo omemoVerifiedIceUdpTransportInfo = new OmemoVerifiedIceUdpTransportInfo();
20            omemoVerifiedIceUdpTransportInfo.setAttributes(transportInfo.getAttributes());
21            omemoVerifiedIceUdpTransportInfo.setChildren(transportInfo.getChildren());
22            return omemoVerifiedIceUdpTransportInfo;
23        }
24        return transportInfo;
25    }
26
27}