eclipse-paho / eclipse-paho/paho.mqtt.java
IPv6 address literals are not supported
- Dominant language
- Java
- Stars
- 2.3k
- Forks
- 919
- PR merge metrics
- No merged PRs in 30d
Description
- [x] Bug exists Release Version 1.1.0 ( Master Branch)
- [x] Bug exists in Snapshot Version 1.1.1-SNAPSHOT (Develop Branch)
While IPv4 address literals (such as 10.1.2.3) are supported, IPv6 address literals (such as fe80::f31d:72d1:98e1:9ab5%eth0) are not fully handled. Suggestion: use the java.net.URI class to parse the URL and use getScheme/getHost/getPort to extract the addresses/ports.
Output from 1.1.0:
```
Trying to connect to MQTT broker: tcp://[fe80::f31d:72d1:98e1:9ab5%eth0]
Exception in thread "main" java.lang.NumberFormatException: For input string: "9ab5%eth0]"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:580)
at java.lang.Integer.parseInt(Integer.java:615)
at org.eclipse.paho.client.mqttv3.MqttAsyncClient.getPort(MqttAsyncClient.java:485)
at org.eclipse.paho.client.mqttv3.MqttAsyncClient.createNetworkModule(MqttAsyncClient.java:381)
at org.eclipse.paho.client.mqttv3.MqttAsyncClient.createNetworkModules(MqttAsyncClient.java:349)
at org.eclipse.paho.client.mqttv3.MqttAsyncClient.connect(MqttAsyncClient.java:557)
```
Another one, with port:
```
Trying to connect to MQTT broker: tcp://[fe80::f31d:72d1:98e1:9ab5%eth0]:1883
Cannot connect to MQTT broker
MqttException (0) - java.net.UnknownHostException: [fe80
at org.eclipse.paho.client.mqttv3.internal.ExceptionHelper.createMqttException(ExceptionHelper.java:38)
at org.eclipse.paho.client.mqttv3.internal.ClientComms$ConnectBG.run(ClientComms.java:664)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.net.UnknownHostException: [fe80
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:184)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at org.eclipse.paho.client.mqttv3.internal.TCPNetworkModule.start(TCPNetworkModule.java:70)
at org.eclipse.paho.client.mqttv3.internal.ClientComms$ConnectBG.run(ClientComms.java:650)
... 1 more
```
Contributor guide
Assessment
This issue has not been assessed yet.