aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMistivia <i@mistivia.com>2025-09-14 19:24:54 +0800
committerMistivia <i@mistivia.com>2025-09-14 19:24:54 +0800
commitea1ee974e7034c8ebc903b434b5b9f1cb466fee8 (patch)
tree436913a9b059be75e54f35a5c57a05eb582887f7
parent998d4b94f3d71ee3dbc3d7d1f2d140826d45218e (diff)
use listening address and port in config
-rw-r--r--rtmpserver.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/rtmpserver.cpp b/rtmpserver.cpp
index 3d0d4f0..313c31f 100644
--- a/rtmpserver.cpp
+++ b/rtmpserver.cpp
@@ -15,9 +15,14 @@
#include <sys/time.h>
#include <unistd.h>
#include <fcntl.h>
+#include <arpa/inet.h>
#include "rtmpserver.h"
+extern "C" {
+#include "ezlive_config.h"
+}
+
#define APP_NAME "live"
RtmpCallbacks g_rtmp_server_cbs;
@@ -790,8 +795,13 @@ void start_rtmpserver(RtmpCallbacks cbs, void *ctx) {
}
sockaddr_in sin;
sin.sin_family = AF_INET;
- sin.sin_port = htons(PORT);
- sin.sin_addr.s_addr = INADDR_ANY;
+ sin.sin_port = htons(ezlive_config->listening_port);
+ struct in_addr addr;
+ if (inet_pton(AF_INET, ezlive_config->listening_addr, &addr) <= 0) {
+ fprintf(stderr, "Invalid IP address\n");
+ exit(-1);
+ }
+ sin.sin_addr.s_addr = addr.s_addr;
if (bind(listen_fd, (sockaddr *) &sin, sizeof sin) < 0) {
throw std::runtime_error(strf("Unable to listen: %s",strerror(errno)));
return;