Skip to content

Commit 939c344

Browse files
authored
Merge pull request #67 from ccutrer/listen_correct_interface
fix a pairing issue
2 parents 0788d47 + c1e558a commit 939c344

File tree

3 files changed

+13
-7
lines changed

3 files changed

+13
-7
lines changed

src/main/java/com/beowulfe/hap/HomekitServer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ public class HomekitServer {
4040
*/
4141
public HomekitServer(InetAddress localAddress, int port, int nThreads) throws IOException {
4242
this.localAddress = localAddress;
43-
http = new HomekitHttpServer(port, nThreads);
43+
http = new HomekitHttpServer(localAddress, port, nThreads);
4444
}
4545

4646
/**

src/main/java/com/beowulfe/hap/impl/http/impl/HomekitHttpServer.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,13 @@
22

33
import com.beowulfe.hap.impl.HomekitWebHandler;
44
import com.beowulfe.hap.impl.http.HomekitClientConnectionFactory;
5+
import java.net.InetAddress;
56
import java.util.concurrent.CompletableFuture;
67

78
public class HomekitHttpServer implements HomekitWebHandler {
89

910
private NettyHomekitHttpService service = null;
11+
private final InetAddress localAddress;
1012
private final int port;
1113
private final int nThreads;
1214

@@ -17,15 +19,16 @@ public void stop() {
1719
}
1820
}
1921

20-
public HomekitHttpServer(int port, int nThreads) {
22+
public HomekitHttpServer(InetAddress localAddress, int port, int nThreads) {
23+
this.localAddress = localAddress;
2124
this.port = port;
2225
this.nThreads = nThreads;
2326
}
2427

2528
@Override
2629
public CompletableFuture<Integer> start(HomekitClientConnectionFactory clientConnectionFactory) {
2730
if (service == null) {
28-
this.service = NettyHomekitHttpService.create(port, nThreads);
31+
this.service = NettyHomekitHttpService.create(localAddress, port, nThreads);
2932
return this.service.create(clientConnectionFactory);
3033
} else {
3134
throw new RuntimeException("HomekitHttpServer can only be started once");

src/main/java/com/beowulfe/hap/impl/http/impl/NettyHomekitHttpService.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import io.netty.handler.logging.LogLevel;
1111
import io.netty.handler.logging.LoggingHandler;
1212
import io.netty.util.concurrent.*;
13+
import java.net.InetAddress;
1314
import java.net.InetSocketAddress;
1415
import java.net.SocketAddress;
1516
import java.util.concurrent.CompletableFuture;
@@ -23,16 +24,18 @@ class NettyHomekitHttpService {
2324

2425
private static final Logger logger = LoggerFactory.getLogger(NettyHomekitHttpService.class);
2526
private final ChannelGroup allChannels = new DefaultChannelGroup(GlobalEventExecutor.INSTANCE);
27+
private final InetAddress localAddress;
2628
private final int port;
2729
private final int nThreads;
2830

29-
public static NettyHomekitHttpService create(int port, int nThreads) {
30-
return new NettyHomekitHttpService(port, nThreads);
31+
public static NettyHomekitHttpService create(InetAddress localAddress, int port, int nThreads) {
32+
return new NettyHomekitHttpService(localAddress, port, nThreads);
3133
}
3234

33-
private NettyHomekitHttpService(int port, int nThreads) {
35+
private NettyHomekitHttpService(InetAddress localAddress, int port, int nThreads) {
3436
bossGroup = new NioEventLoopGroup();
3537
workerGroup = new NioEventLoopGroup();
38+
this.localAddress = localAddress;
3639
this.port = port;
3740
this.nThreads = nThreads;
3841
}
@@ -46,7 +49,7 @@ public CompletableFuture<Integer> create(HomekitClientConnectionFactory connecti
4649
.childHandler(new ServerInitializer(connectionFactory, allChannels, nThreads))
4750
.option(ChannelOption.SO_BACKLOG, 128)
4851
.childOption(ChannelOption.SO_KEEPALIVE, true);
49-
final ChannelFuture bindFuture = b.bind(port);
52+
final ChannelFuture bindFuture = b.bind(localAddress, port);
5053
bindFuture.addListener(
5154
new GenericFutureListener<Future<? super Void>>() {
5255

0 commit comments

Comments
 (0)