protected boolean doTunnelAuthentication(byte id, byte[] in) throws RadiusException, SSLException, NoSuchAlgorithmException { if (tunnelChallenge != null && in != null) { AttributeList list = tunnelChallenge.getAttributes(); list.clear(); ByteBuffer buffer = ByteBuffer.wrap(in); diameterFormat.unpackAttributes(list, buffer, buffer.limit(), false); if (tunnelAuth instanceof EAPAuthenticator && tunnelChallenge.findAttribute(Attr_EAPMessage.TYPE) == null) tunnelAuth.setupRequest(client, tunnelRequest); else tunnelAuth.processChallenge(tunnelRequest, tunnelChallenge); } else tunnelChallenge = new AccessChallenge(); ByteBuffer buffer = ByteBuffer.allocate(1500); diameterFormat.packAttributeList(tunnelRequest.getAttributes(), buffer, true); putAppBuffer(buffer.array(), 0, buffer.position()); RadiusLog.debug("Tunnel Request:\n" + tunnelRequest.toString()); return true; }
protected boolean doTunnelAuthentication(byte id, byte[] in) throws RadiusException, SSLException, NoSuchAlgorithmException { if (tunnelChallenge != null && in != null) { AttributeList list = tunnelChallenge.getAttributes(); list.clear(); ByteBuffer buffer = ByteBuffer.wrap(in); diameterFormat.unpackAttributes(list, buffer, buffer.limit(), false); if (tunnelAuth instanceof EAPAuthenticator && tunnelChallenge.findAttribute(Attr_EAPMessage.TYPE) == null) tunnelAuth.setupRequest(client, tunnelRequest); else tunnelAuth.processChallenge(tunnelRequest, tunnelChallenge); } else tunnelChallenge = new AccessChallenge(); ByteBuffer buffer = ByteBuffer.allocate(1500); diameterFormat.packAttributeList(tunnelRequest.getAttributes(), buffer, true); putAppBuffer(buffer.array(), 0, buffer.position()); RadiusLog.debug("Tunnel Request:\n" + tunnelRequest.toString()); return true; }
protected boolean doTunnelAuthentication(byte id, byte[] in) throws RadiusException, SSLException, NoSuchAlgorithmException { if (tunnelChallenge != null && in != null) { AttributeList list = tunnelChallenge.getAttributes(); list.clear(); ByteBuffer buffer = ByteBuffer.wrap(in); diameterFormat.unpackAttributes(list, buffer, buffer.limit(), false); if (tunnelAuth instanceof EAPAuthenticator && tunnelChallenge.findAttribute(Attr_EAPMessage.TYPE) == null) tunnelAuth.setupRequest(client, tunnelRequest); else tunnelAuth.processChallenge(tunnelRequest, tunnelChallenge); } else tunnelChallenge = new AccessChallenge(); ByteBuffer buffer = ByteBuffer.allocate(1500); diameterFormat.packAttributeList(tunnelRequest.getAttributes(), buffer, true); putAppBuffer(buffer.array(), 0, buffer.position()); RadiusLog.debug("Tunnel Request:\n" + tunnelRequest.toString()); return true; }