@Override public void write(byte[] b, int off, int len) throws IOException { // Important not to cache InetAddress and let the JVM/OS to handle DNS caching. datagramSocket.send(new DatagramPacket(b, off, len, InetAddress.getByName(host), port)); }
@Override public void run() { try (DatagramSocket socket = new DatagramSocket()) { for (int i = 0; i < 4; i++) { String message = clientName + " - Log request: " + i; DatagramPacket request = new DatagramPacket(message.getBytes(), message.getBytes().length, remoteAddress); socket.send(request); byte[] data = new byte[1024]; DatagramPacket reply = new DatagramPacket(data, data.length); socket.receive(reply); if (reply.getLength() == 0) { LOGGER.info("Read zero bytes"); } else { LOGGER.info(new String(reply.getData(), 0, reply.getLength())); } artificialDelayOf(100); } } catch (IOException e1) { LOGGER.error("error sending packets", e1); } } }
public void write(final String string) throws IOException { if(this.ds != null && this.address != null) { byte[] bytes = string.getBytes(); // // syslog packets must be less than 1024 bytes // int bytesLength = bytes.length; if (bytesLength >= 1024) { bytesLength = 1024; } DatagramPacket packet = new DatagramPacket(bytes, bytesLength, address, port); ds.send(packet); } }
ds = new DatagramSocket(); DatagramPacket dp; dp = new DatagramPacket(Message.getBytes(), Message.length(), Main.BroadcastAddress, Main.SERVER_PORT); ds.setBroadcast(true); ds.send(dp);
DatagramPacket packet = new DatagramPacket(buffer, buffer.length); udpSocket.receive(packet); udpSocket.send(new DatagramPacket(ack.getBytes(Charset.forName("UTF-8")), ack.getBytes(Charset.forName("UTF-8")).length, packet.getSocketAddress())); } catch (Exception e) {
DatagramSocket c = new DatagramSocket(); c.send(255.255.255.255:8888,msg) //(3) c.receive //(4)
DatagramSocket socket = new DatagramSocket(PORT); socket.setBroadcast(true); DatagramPacket packet = new DatagramPacket(data.getBytes(), data.length(), getBroadcastAddress(), DISCOVERY_PORT); socket.send(packet); byte[] buf = new byte[1024]; DatagramPacket packet = new DatagramPacket(buf, buf.length); socket.receive(packet);
@Override public void run() { try { InputStream in = localTcpSocket.getInputStream(); InetAddress remoteHost = InetAddress.getByName(remoteUdpHost); process.start(); while (true) { byte[] b = new byte[500]; int s = in.read(b); // if (s == -1) continue; LOGGER.fine("TCP Client:" + new String(b, 0, s, "UTF-8")); DatagramPacket udpPacket = new DatagramPacket(b, s); udpPacket.setAddress(remoteHost); udpPacket.setPort(remoteUdpPort); localUdpSocket.send(udpPacket); } } catch (IOException e) { LOGGER.log(Level.WARNING, "exception", e); } }
@Override public void broadcast(byte[] data) throws Exception { DatagramPacket packet = new DatagramPacket(data, data.length, groupAddress, groupPort); broadcastingSocket.send(packet); }
static public boolean sendUdp(InetAddress IPAddress, int port, byte [] byteArray){ DatagramSocket datagram = null; try { Configure conf = Configure.getInstance(); if (byteArray.length > conf.net_udp_packet_max_bytes) { return sendMTU(IPAddress, port, byteArray, conf.net_udp_packet_max_bytes); } datagram = new DatagramSocket(); DatagramPacket packet = new DatagramPacket(byteArray, byteArray.length); packet.setAddress(IPAddress); packet.setPort(port); datagram.send(packet); return true; } catch (Exception e) { e.printStackTrace(); } finally{ if(datagram != null){ try { datagram.close(); } catch(Exception ex){} } } return false; }
byte b[] = new byte[36]; ByteBuffer responseBuffer = ByteBuffer.wrap(b); DatagramPacket packet = new DatagramPacket(b, b.length); while (running) { udpSocket.receive(packet); if (packet.getLength() != 4) { LOG.warn("Got more than just an xid! Len = " udpSocket.send(packet);
protected void forwardPacket(DatagramPacket outPacket, IpPacket parsedPacket) throws DaedalusVpnService.VpnNetworkException { DatagramSocket dnsSocket; try { // Packets to be sent to the real DNS server will need to be protected from the VPN dnsSocket = new DatagramSocket(); service.protect(dnsSocket); dnsSocket.send(outPacket); if (parsedPacket != null) { dnsIn.add(new WaitingOnSocketPacket(dnsSocket, parsedPacket)); } else { dnsSocket.close(); } } catch (IOException e) { handleDnsResponse(parsedPacket, outPacket.getData()); Logger.warning("DNSProvider: Could not send packet to upstream, forwarding packet directly"); } }
protected static Collection<InetAddress> getPhysicalAddresses(InetAddress addr, InetAddress bind_addr, int port, final long timeout) throws Exception { final DatagramSocket sock=new DatagramSocket(new InetSocketAddress(bind_addr, 0)); byte[] payload="member-addrs".getBytes(); DatagramPacket probe=new DatagramPacket(payload, 0, payload.length, addr, port); sock.send(probe); new Thread(() -> { Util.sleep(timeout); sock.close(); }).start(); long end_time=System.currentTimeMillis() + timeout; while(System.currentTimeMillis() < end_time) { byte[] buf=new byte[70000]; DatagramPacket rsp=new DatagramPacket(buf, 0, buf.length); try { sock.receive(rsp); } catch(Throwable t) { break; } byte[] data=rsp.getData(); String response=new String(data, 0, rsp.getLength()); Collection<InetAddress> retval=parseAddresses(response); if(retval != null && !retval.isEmpty()) return retval; } return null; }
@Override public void run() { try { localTcpSocket = serverTcpSocket.accept(); process.start(); InputStream in = localTcpSocket.getInputStream(); InetAddress remoteHost = InetAddress.getByName(remoteUdpHost); while (true) { byte[] b = new byte[500]; int s = in.read(b); // if (s == -1) continue; LOGGER.fine("TCP Server:" + new String(b, 0, s, "UTF-8")); DatagramPacket udpPacket = new DatagramPacket(b, s); udpPacket.setAddress(remoteHost); udpPacket.setPort(remoteUdpPort); localUdpSocket.send(udpPacket); } } catch (IOException e) { LOGGER.log(Level.WARNING, "exception", e); } }
public void send(Object dest, byte[] buf, int offset, int length) throws Exception { DatagramPacket packet=new DatagramPacket(buf, offset, length, (SocketAddress)dest); sock.send(packet); }
@Override public void run() { try { DatagramSocket socket = new DatagramSocket(); InetAddress dummyAddr = InetAddress.getByAddress(DUMMY_ADDRESS); DatagramPacket packet = new DatagramPacket(new byte[0], 0, dummyAddr, DUMMY_PORT); socket.send(packet); } catch (IOException e) { // ignore } } });
@Override public void run() { try { //System.out.println("Listening for ECHO: " + socket.getLocalAddress().getHostAddress() + ":" + socket.getLocalPort()); while (true) { DatagramPacket packet = new DatagramPacket(new byte[8], 8); socket.receive(packet); System.out.println("ECHO Packet Received in: " + socket.getLocalAddress().getHostAddress() + ":" + socket.getLocalPort() + " From: " + packet.getAddress().getHostAddress() + ":" + packet.getPort()); for (DatagramListener listener : listeners) { listener.datagramReceived(packet); } packet.setAddress(packet.getAddress()); packet.setPort(packet.getPort()); if (!Arrays.equals(packet.getData(), password)) for (int i = 0; i < 3; i++) socket.send(packet); } } catch (IOException ioe) { if (enabled) { } } }
@SuppressWarnings("unchecked") @Test public void testMulticastReceiver() throws Exception { QueueChannel channel = new QueueChannel(2); MulticastReceivingChannelAdapter adapter = new MulticastReceivingChannelAdapter(this.multicastRule.getGroup(), 0); adapter.setOutputChannel(channel); String nic = this.multicastRule.getNic(); adapter.setLocalAddress(nic); adapter.start(); SocketTestUtils.waitListening(adapter); int port = adapter.getPort(); Message<byte[]> message = MessageBuilder.withPayload("ABCD".getBytes()).build(); DatagramPacketMessageMapper mapper = new DatagramPacketMessageMapper(); DatagramPacket packet = mapper.fromMessage(message); packet.setSocketAddress(new InetSocketAddress(this.multicastRule.getGroup(), port)); DatagramSocket datagramSocket = new DatagramSocket(0, Inet4Address.getByName(nic)); datagramSocket.send(packet); datagramSocket.close(); Message<byte[]> receivedMessage = (Message<byte[]>) channel.receive(10000); assertNotNull(receivedMessage); assertEquals(new String(message.getPayload()), new String(receivedMessage.getPayload())); adapter.stop(); }
DatagramSocket ds=new DatagramSocket(); int pos = 0; byte[] buffer = new byte[100]; ds.send(new DatagramPacket(buffer, pos, address, 3000)); byte[] buffer = new byte[100]; InetAddress address = InetAddress.getLocalHost(); DatagramSocket ds = new DatagramSocket(3000, address); DatagramPacket dp = new DatagramPacket(buffer, buffer.length); ds.receive(dp); System.out.print(new String(dp.getData(), 0, dp.getLength()));