private static void serializeIdentity(final PreSharedKeyIdentity principal, final DatagramWriter writer) { writer.writeByte(ClientAuthenticationType.PSK.code); writeBytes(principal.getName().getBytes(StandardCharsets.UTF_8), writer); }
@Override protected void addExtensionData(final DatagramWriter writer) { if (serverNames == null) { writer.write(0, LENGTH_BITS); } else { writer.write(serverNames.getEncodedLength() + 2, LENGTH_BITS); //extension_length writer.write(serverNames.getEncodedLength(), LIST_LENGTH_BITS); //server_names_list_length for (ServerName serverName : serverNames) { writer.writeByte(serverName.getType().getCode()); // name type writer.write(serverName.getName().length, LENGTH_BITS); // name length writer.writeBytes(serverName.getName()); // name } } }
writer.writeByte(PAYLOAD_MARKER); writer.writeBytes(payload);
private static void serializeSubjectInfo(final RawPublicKeyIdentity principal, final DatagramWriter writer) { writer.writeByte(ClientAuthenticationType.RPK.code); writeBytes(principal.getSubjectInfo(), writer); }
private static void serializeCertChain(final X509CertPath principal, final DatagramWriter writer) { writer.writeByte(ClientAuthenticationType.CERT.code); writeBytes(principal.toByteArray(), writer); }
throw new NullPointerException("Writer must not be null"); } else if (principal == null) { writer.writeByte(ClientAuthenticationType.ANONYMOUS.code); } else if (principal instanceof PreSharedKeyIdentity) { serializeIdentity((PreSharedKeyIdentity) principal, writer);