Package de.fhkn.in.uce.stun.attribute

Examples of de.fhkn.in.uce.stun.attribute.Token


                    Socket s = new Socket();
                    s.connect(relayServerEndpoint);
                    MessageWriter dataConnectionWriter = new MessageWriter(s.getOutputStream());
                    Message connectionBindRequestMessage = MessageStaticFactory.newSTUNMessageInstance(
                            STUNMessageClass.REQUEST, RelayingMethod.CONNECTION_BIND);
                    connectionBindRequestMessage.addAttribute(new Token(message.getAttribute(Token.class).getToken()));
                    dataConnectionWriter.writeMessage(connectionBindRequestMessage);
                    // TODO erfolgs oder fehlermeldung abwarten
                    socketQueue.add(s);
                } else if (message.isMethod(STUNMessageMethod.KEEP_ALIVE) && message.isSuccessResponse()) {
                    int lifetime = message.getAttribute(RelayingLifetime.class).getLifeTime();
View Full Code Here


        BlockingQueue<Socket> connectionBindQueue = new ArrayBlockingQueue<Socket>(1);
        connIDToQueue.put(connectionId, connectionBindQueue);
        try {
            Message connectionAttemptMessage = MessageStaticFactory.newSTUNMessageInstance(STUNMessageClass.INDICATION,
                    RelayingMethod.CONNECTION_ATTEMPT);
            connectionAttemptMessage.addAttribute(new Token(connectionId));
            controlConnection.writeMessage(connectionAttemptMessage);
        } catch (IOException ex) {
            logger.error("IOException while sending Connection Attempt: {}", ex);
            connIDToQueue.remove(connectionId);
            try {
View Full Code Here

        final MessageWriter messageWriter = new MessageWriter(toBeAuthenticated.getOutputStream());
        final MessageReader messageReader = this.hpUtil.getCustomHolePunchingMessageReader();
        final Message receivedMessage = messageReader.readSTUNMessage(toBeAuthenticated.getInputStream());
        if ((receivedMessage.getMessageMethod() == STUNMessageMethod.AUTHENTICATE)
                && receivedMessage.hasAttribute(Token.class)) {
            final Token receivedToken = receivedMessage.getAttribute(Token.class);
            if (receivedToken.getToken().equals(this.authentikationToken)) {
                final Message tokenAckMessage = receivedMessage.buildSuccessResponse();
                synchronized (sharedLock) {
                    messageWriter.writeMessage(tokenAckMessage);
                    final Message receveidAckMessage = messageReader
                            .readSTUNMessage(toBeAuthenticated.getInputStream());
View Full Code Here

        if (this.started) {
            throw new IllegalStateException("Target is already started"); //$NON-NLS-1$
        }
        this.started = true;
        final List<XorMappedAddress> endpoints = connectionRequestMessage.getAttributes(XorMappedAddress.class);
        final Token authentificationToken = connectionRequestMessage.getAttribute(Token.class);
        this.startMessageHandler(endpoints, authentificationToken);
    }
View Full Code Here

    public Socket establishSourceSideConnection(final String targetId, final Socket controlConnection)
            throws IOException {
        Socket result = null;
        logger.debug("Trying to connect to {}", targetId); //$NON-NLS-1$
        // this.connectToMediator(mediatorAddress);
        final Token token = new Token(UUID.randomUUID());
        this.sendConnectionRequest(controlConnection, targetId, token);
        final Message receivedMessage = this.receiveMessage(controlConnection);
        // if (this.isForwardedEndpointsMessage(receivedMessage)) {
        logger.debug("Received forwarding endpoints message"); //$NON-NLS-1$
        final List<XorMappedAddress> addresses = receivedMessage.getAttributes(XorMappedAddress.class);
        final BlockingQueue<Socket> socketQueue = new ArrayBlockingQueue<Socket>(1);
        final InetSocketAddress localAddress = (InetSocketAddress) controlConnection.getLocalSocketAddress();
        final ConnectionListener connectionListener = new ConnectionListener(localAddress.getAddress(),
                localAddress.getPort());
        logger.debug("Starting hole puncher"); //$NON-NLS-1$
        final SourceConnectionAuthenticator authentification = new SourceConnectionAuthenticator(token.getToken());
        final HolePuncher hp = new HolePuncher(connectionListener, localAddress, socketQueue);
        this.startHolePunching(addresses, authentification, hp);
        boolean interrupted = false;
        try {
            while (result == null) {
View Full Code Here

        final MessageWriter messageWriter = new MessageWriter(toBeAuthenticated.getOutputStream());
        final MessageReader messageReader = this.hpUtil.getCustomHolePunchingMessageReader();
        // sending authentication message
        final Message authenticationMessage = MessageStaticFactory.newSTUNMessageInstance(STUNMessageClass.REQUEST,
                STUNMessageMethod.AUTHENTICATE);
        authenticationMessage.addAttribute(new Token(this.authentikationToken));
        logger.info("Sending AuthenticationMessage: {}", authenticationMessage); //$NON-NLS-1$
        messageWriter.writeMessage(authenticationMessage);
        // receiving authentication acknowledgment message
        final Message reveivedAckMessage = messageReader.readSTUNMessage(toBeAuthenticated.getInputStream());
        if (this.hpUtil.isAuthenticationAcknowledgmentMessage(reveivedAckMessage)) {
View Full Code Here

TOP

Related Classes of de.fhkn.in.uce.stun.attribute.Token

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.