From e14bc61ce5f9fed5467a69538b50344ea339b77f Mon Sep 17 00:00:00 2001 From: Tom Early Date: Sun, 7 Apr 2019 13:11:12 -0700 Subject: [PATCH] whoops, forgot the g2 port! --- QnetGateway.cpp | 11 +++-------- defaults | 2 +- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/QnetGateway.cpp b/QnetGateway.cpp index 7860741..17b0cfb 100644 --- a/QnetGateway.cpp +++ b/QnetGateway.cpp @@ -338,27 +338,22 @@ bool CQnetGateway::ReadConfig(char *cfgFile) // Create ports int CQnetGateway::open_port(const SPORTIP &pip) { - struct sockaddr_in sin; + CSockAddress sin(af_family, pip.port, pip.ip.c_str()); - int sock = socket(PF_INET, SOCK_DGRAM, 0); + int sock = socket(af_family, SOCK_DGRAM, 0); if (0 > sock) { printf("Failed to create socket on %s:%d, errno=%d, %s\n", pip.ip.c_str(), pip.port, errno, strerror(errno)); return -1; } fcntl(sock, F_SETFL, O_NONBLOCK); - memset(&sin, 0, sizeof(struct sockaddr_in)); - sin.sin_family = AF_INET; - sin.sin_port = htons(pip.port); - sin.sin_addr.s_addr = inet_addr(pip.ip.c_str()); - // int reuse = 1; // if (::setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, (char *)&reuse, sizeof(reuse)) == -1) { // printf("Cannot set the UDP socket (port %u) option, err: %d, %s\n", pip.port, errno, strerror(errno)); // return -1; // } - if (bind(sock, (struct sockaddr *)&sin, sizeof(struct sockaddr_in)) != 0) { + if (bind(sock, sin.GetPointer(), sizeof(struct sockaddr_storage)) != 0) { printf("Failed to bind %s:%d, errno=%d, %s\n", pip.ip.c_str(), pip.port, errno, strerror(errno)); close(sock); return -1; diff --git a/defaults b/defaults index f00a759..cc78ece 100644 --- a/defaults +++ b/defaults @@ -44,7 +44,7 @@ ircddb_password_d='1111111111111' # not needed for rr.openquad.net # gateway_header_regen_d=true # regenerate headers from incoming data gateway_send_qrgs_maps_d=true # send frequency, offset, coordinates and url to irc-server -gateway_ip_d='0.0.0.0' # the g2 port +gateway_ip_d='ANY_PORT' # the g2 port gateway_port_d=40000 # don't change gateway_gate2link_d='gate2link' # Unix sockets between qngateway and QnetLink gateway_link2gate_d='link2gate' # all Unix sockets are on the file system, but hidden from view