Skip to content

Commit 6a47494

Browse files
committed
Bind WebcamStreamer server socket to 0.0.0.0
1 parent 3876d3c commit 6a47494

File tree

1 file changed

+16
-8
lines changed

1 file changed

+16
-8
lines changed

webcam-capture/src/main/java/com/github/sarxos/webcam/WebcamStreamer.java

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import java.io.Closeable;
88
import java.io.IOException;
99
import java.io.InputStreamReader;
10+
import java.net.InetAddress;
1011
import java.net.ServerSocket;
1112
import java.net.Socket;
1213
import java.net.SocketException;
@@ -40,7 +41,7 @@ private class Acceptor implements Runnable {
4041

4142
@Override
4243
public void run() {
43-
try (ServerSocket server = new ServerSocket(port)) {
44+
try (ServerSocket server = new ServerSocket(port, 50, InetAddress.getByName("0.0.0.0"))) {
4445
while (started.get()) {
4546
executor.execute(new Connection(server.accept()));
4647
}
@@ -63,9 +64,9 @@ public void run() {
6364

6465
LOG.info("New connection from {}", socket.getRemoteSocketAddress());
6566

66-
BufferedReader br = null;
67-
BufferedOutputStream bos = null;
68-
ByteArrayOutputStream baos = new ByteArrayOutputStream();
67+
final BufferedReader br;
68+
final BufferedOutputStream bos;
69+
final ByteArrayOutputStream baos = new ByteArrayOutputStream();
6970

7071
try {
7172
br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
@@ -149,8 +150,12 @@ public void run() {
149150
LOG.debug("Connection to client is closed");
150151
}
151152

152-
br.close();
153-
bos.close();
153+
try {
154+
br.close();
155+
bos.close();
156+
} catch (SocketException se) {
157+
LOG.debug("Exception when closing socket", se);
158+
}
154159

155160
LOG.debug("Socket exception from " + socket.getRemoteSocketAddress(), e);
156161

@@ -185,17 +190,20 @@ public void run() {
185190
}
186191

187192
} finally {
193+
194+
LOG.info("Closing connection from {}", socket.getRemoteSocketAddress());
195+
188196
for (Closeable closeable : new Closeable[] { br, bos, baos }) {
189197
try {
190198
closeable.close();
191199
} catch (IOException e) {
192-
LOG.error("Cannot close socket", e);
200+
LOG.debug("Cannot close socket", e);
193201
}
194202
}
195203
try {
196204
socket.close();
197205
} catch (IOException e) {
198-
LOG.error("Cannot close socket", e);
206+
LOG.debug("Cannot close socket", e);
199207
}
200208
}
201209
}

0 commit comments

Comments
 (0)