<p>laforge <strong>submitted</strong> this change.</p><p><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/20735">View Change</a></p><div style="white-space:pre-wrap">Approvals:
Jenkins Builder: Verified
laforge: Looks good to me, approved
pespin: Looks good to me, but someone else must approve
</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">use osmo_fd_setup() whenever applicable<br><br>Change-Id: Iee26d14e997cc77c49b8fc1a9f388e4e2f783105<br>---<br>M src/ipaccess/abisip-find.c<br>M src/ipaccess/ipaccess-proxy.c<br>M src/osmo-bsc/bsc_rf_ctrl.c<br>M src/osmo-bsc/pcu_sock.c<br>4 files changed, 15 insertions(+), 33 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/ipaccess/abisip-find.c b/src/ipaccess/abisip-find.c</span><br><span>index 11b2851..a414d16 100644</span><br><span>--- a/src/ipaccess/abisip-find.c</span><br><span>+++ b/src/ipaccess/abisip-find.c</span><br><span>@@ -446,13 +446,12 @@</span><br><span> else if (cmdline_opts.send_interval >= cmdline_opts.list_view_timeout)</span><br><span> fprintf(stdout, "\nWARNING: the --timeout should be larger than --interval.\n\n");</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- bfd.cb = bfd_cb;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd.when = OSMO_FD_READ | OSMO_FD_WRITE;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd.fd = udp_sock(cmdline_opts.ifname, cmdline_opts.bind_ip);</span><br><span style="color: hsl(0, 100%, 40%);">- if (bfd.fd < 0) {</span><br><span style="color: hsl(120, 100%, 40%);">+ rc = udp_sock(cmdline_opts.ifname, cmdline_opts.bind_ip);</span><br><span style="color: hsl(120, 100%, 40%);">+ if (rc < 0) {</span><br><span> perror("Cannot create local socket for broadcast udp");</span><br><span> exit(1);</span><br><span> }</span><br><span style="color: hsl(120, 100%, 40%);">+ osmo_fd_setup(&bfd, rc, OSMO_FD_READ | OSMO_FD_WRITE, bfd_cb, NULL, 0);</span><br><span> </span><br><span> rc = osmo_fd_register(&bfd);</span><br><span> if (rc < 0) {</span><br><span>diff --git a/src/ipaccess/ipaccess-proxy.c b/src/ipaccess/ipaccess-proxy.c</span><br><span>index d5dd8d4..1ed215d 100644</span><br><span>--- a/src/ipaccess/ipaccess-proxy.c</span><br><span>+++ b/src/ipaccess/ipaccess-proxy.c</span><br><span>@@ -936,11 +936,7 @@</span><br><span> }</span><br><span> </span><br><span> bfd = &ipc->fd;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->fd = ret;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->data = ipc;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->priv_nr = listen_bfd->priv_nr;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->cb = proxy_ipaccess_fd_cb;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->when = OSMO_FD_READ;</span><br><span style="color: hsl(120, 100%, 40%);">+ osmo_fd_setup(bfd, ret, OSMO_FD_READ, proxy_ipaccess_fd_cb, ipc, listen_bfd->priv_nr);</span><br><span> ret = osmo_fd_register(bfd);</span><br><span> if (ret < 0) {</span><br><span> LOGP(DLINP, LOGL_ERROR, "could not register FD\n");</span><br><span>@@ -1016,20 +1012,17 @@</span><br><span> </span><br><span> ipc->bts_conn = data;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- bfd = &ipc->fd;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->fd = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->cb = ipaccess_fd_cb;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->when = OSMO_FD_READ | OSMO_FD_WRITE;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->data = ipc;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->priv_nr = priv_nr;</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">- if (bfd->fd < 0) {</span><br><span style="color: hsl(120, 100%, 40%);">+ ret = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);</span><br><span style="color: hsl(120, 100%, 40%);">+ if (ret < 0) {</span><br><span> LOGP(DLINP, LOGL_ERROR, "Could not create socket: %s\n",</span><br><span> strerror(errno));</span><br><span> talloc_free(ipc);</span><br><span> return NULL;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+ bfd = &ipc->fd;</span><br><span style="color: hsl(120, 100%, 40%);">+ osmo_fd_setup(bfd, ret, OSMO_FD_READ | OSMO_FD_WRITE, ipaccess_fd_cb, ipc, priv_nr);</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> ret = setsockopt(bfd->fd, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on));</span><br><span> if (ret < 0) {</span><br><span> LOGP(DLINP, LOGL_ERROR, "Could not set socket option\n");</span><br><span>diff --git a/src/osmo-bsc/bsc_rf_ctrl.c b/src/osmo-bsc/bsc_rf_ctrl.c</span><br><span>index 1e04f21..a845859 100644</span><br><span>--- a/src/osmo-bsc/bsc_rf_ctrl.c</span><br><span>+++ b/src/osmo-bsc/bsc_rf_ctrl.c</span><br><span>@@ -372,9 +372,7 @@</span><br><span> }</span><br><span> </span><br><span> osmo_wqueue_init(&conn->queue, 10);</span><br><span style="color: hsl(0, 100%, 40%);">- conn->queue.bfd.data = conn;</span><br><span style="color: hsl(0, 100%, 40%);">- conn->queue.bfd.fd = fd;</span><br><span style="color: hsl(0, 100%, 40%);">- conn->queue.bfd.when = OSMO_FD_READ | OSMO_FD_WRITE;</span><br><span style="color: hsl(120, 100%, 40%);">+ osmo_fd_setup(&conn->queue.bfd, fd, OSMO_FD_READ | OSMO_FD_WRITE, osmo_wqueue_bfd_cb, conn, 0);</span><br><span> conn->queue.read_cb = rf_read_cmd;</span><br><span> conn->queue.write_cb = rf_write_cmd;</span><br><span> conn->rf = rf;</span><br><span>@@ -484,9 +482,7 @@</span><br><span> return -1;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- bfd->when = OSMO_FD_READ;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->cb = rf_ctrl_accept;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->data = rf;</span><br><span style="color: hsl(120, 100%, 40%);">+ osmo_fd_setup(bfd, bfd->fd, OSMO_FD_READ, rf_ctrl_accept, rf, 0);</span><br><span> </span><br><span> if (osmo_fd_register(bfd) != 0) {</span><br><span> LOGP(DLINP, LOGL_ERROR, "Failed to register bfd.\n");</span><br><span>diff --git a/src/osmo-bsc/pcu_sock.c b/src/osmo-bsc/pcu_sock.c</span><br><span>index a1a1cfc..d59df33 100644</span><br><span>--- a/src/osmo-bsc/pcu_sock.c</span><br><span>+++ b/src/osmo-bsc/pcu_sock.c</span><br><span>@@ -672,10 +672,7 @@</span><br><span> return 0;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- conn_bfd->fd = rc;</span><br><span style="color: hsl(0, 100%, 40%);">- conn_bfd->when = OSMO_FD_READ;</span><br><span style="color: hsl(0, 100%, 40%);">- conn_bfd->cb = pcu_sock_cb;</span><br><span style="color: hsl(0, 100%, 40%);">- conn_bfd->data = state;</span><br><span style="color: hsl(120, 100%, 40%);">+ osmo_fd_setup(conn_bfd, rc, OSMO_FD_READ, pcu_sock_cb, state, 0);</span><br><span> </span><br><span> if (osmo_fd_register(conn_bfd) != 0) {</span><br><span> LOGP(DPCU, LOGL_ERROR, "Failed to register new connection "</span><br><span>@@ -707,18 +704,15 @@</span><br><span> </span><br><span> bfd = &state->listen_bfd;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- bfd->fd = osmo_sock_unix_init(SOCK_SEQPACKET, 0, path,</span><br><span style="color: hsl(0, 100%, 40%);">- OSMO_SOCK_F_BIND);</span><br><span style="color: hsl(0, 100%, 40%);">- if (bfd->fd < 0) {</span><br><span style="color: hsl(120, 100%, 40%);">+ rc = osmo_sock_unix_init(SOCK_SEQPACKET, 0, path, OSMO_SOCK_F_BIND);</span><br><span style="color: hsl(120, 100%, 40%);">+ if (rc < 0) {</span><br><span> LOGP(DPCU, LOGL_ERROR, "Could not create unix socket: %s\n",</span><br><span> strerror(errno));</span><br><span> talloc_free(state);</span><br><span> return -1;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- bfd->when = OSMO_FD_READ;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->cb = pcu_sock_accept;</span><br><span style="color: hsl(0, 100%, 40%);">- bfd->data = state;</span><br><span style="color: hsl(120, 100%, 40%);">+ osmo_fd_setup(bfd, rc, OSMO_FD_READ, pcu_sock_accept, state, 0);</span><br><span> </span><br><span> rc = osmo_fd_register(bfd);</span><br><span> if (rc < 0) {</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-bsc/+/20735">change 20735</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-bsc/+/20735"/><meta itemprop="name" content="View Change"/></div></div>
<div style="display:none"> Gerrit-Project: osmo-bsc </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: Iee26d14e997cc77c49b8fc1a9f388e4e2f783105 </div>
<div style="display:none"> Gerrit-Change-Number: 20735 </div>
<div style="display:none"> Gerrit-PatchSet: 3 </div>
<div style="display:none"> Gerrit-Owner: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: merged </div>