This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
laforge gerrit-no-reply at lists.osmocom.orglaforge has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bsc/+/20735 ) Change subject: use osmo_fd_setup() whenever applicable ...................................................................... use osmo_fd_setup() whenever applicable Change-Id: Iee26d14e997cc77c49b8fc1a9f388e4e2f783105 --- M src/ipaccess/abisip-find.c M src/ipaccess/ipaccess-proxy.c M src/osmo-bsc/bsc_rf_ctrl.c M src/osmo-bsc/pcu_sock.c 4 files changed, 16 insertions(+), 34 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/35/20735/1 diff --git a/src/ipaccess/abisip-find.c b/src/ipaccess/abisip-find.c index 11b2851..a414d16 100644 --- a/src/ipaccess/abisip-find.c +++ b/src/ipaccess/abisip-find.c @@ -446,13 +446,12 @@ else if (cmdline_opts.send_interval >= cmdline_opts.list_view_timeout) fprintf(stdout, "\nWARNING: the --timeout should be larger than --interval.\n\n"); - bfd.cb = bfd_cb; - bfd.when = OSMO_FD_READ | OSMO_FD_WRITE; - bfd.fd = udp_sock(cmdline_opts.ifname, cmdline_opts.bind_ip); - if (bfd.fd < 0) { + rc = udp_sock(cmdline_opts.ifname, cmdline_opts.bind_ip); + if (rc < 0) { perror("Cannot create local socket for broadcast udp"); exit(1); } + osmo_fd_setup(&bfd, rc, OSMO_FD_READ | OSMO_FD_WRITE, bfd_cb, NULL, 0); rc = osmo_fd_register(&bfd); if (rc < 0) { diff --git a/src/ipaccess/ipaccess-proxy.c b/src/ipaccess/ipaccess-proxy.c index d5dd8d4..1ed215d 100644 --- a/src/ipaccess/ipaccess-proxy.c +++ b/src/ipaccess/ipaccess-proxy.c @@ -936,11 +936,7 @@ } bfd = &ipc->fd; - bfd->fd = ret; - bfd->data = ipc; - bfd->priv_nr = listen_bfd->priv_nr; - bfd->cb = proxy_ipaccess_fd_cb; - bfd->when = OSMO_FD_READ; + osmo_fd_setup(bfd, ret, OSMO_FD_READ, proxy_ipaccess_fd_cb, ipc, listen_bfd->priv_nr); ret = osmo_fd_register(bfd); if (ret < 0) { LOGP(DLINP, LOGL_ERROR, "could not register FD\n"); @@ -1016,20 +1012,17 @@ ipc->bts_conn = data; - bfd = &ipc->fd; - bfd->fd = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); - bfd->cb = ipaccess_fd_cb; - bfd->when = OSMO_FD_READ | OSMO_FD_WRITE; - bfd->data = ipc; - bfd->priv_nr = priv_nr; - - if (bfd->fd < 0) { + ret = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); + if (ret < 0) { LOGP(DLINP, LOGL_ERROR, "Could not create socket: %s\n", strerror(errno)); talloc_free(ipc); return NULL; } + bfd = &ipc->fd; + osmo_fd_setup(bfd, ret, OSMO_FD_READ | OSMO_FD_WRITE, ipaccess_fd_cb, ipc, priv_nr); + ret = setsockopt(bfd->fd, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on)); if (ret < 0) { LOGP(DLINP, LOGL_ERROR, "Could not set socket option\n"); diff --git a/src/osmo-bsc/bsc_rf_ctrl.c b/src/osmo-bsc/bsc_rf_ctrl.c index 1e04f21..a845859 100644 --- a/src/osmo-bsc/bsc_rf_ctrl.c +++ b/src/osmo-bsc/bsc_rf_ctrl.c @@ -372,9 +372,7 @@ } osmo_wqueue_init(&conn->queue, 10); - conn->queue.bfd.data = conn; - conn->queue.bfd.fd = fd; - conn->queue.bfd.when = OSMO_FD_READ | OSMO_FD_WRITE; + osmo_fd_setup(&conn->queue.bfd, fd, OSMO_FD_READ | OSMO_FD_WRITE, osmo_wqueue_bfd_cb, conn, 0); conn->queue.read_cb = rf_read_cmd; conn->queue.write_cb = rf_write_cmd; conn->rf = rf; @@ -484,9 +482,7 @@ return -1; } - bfd->when = OSMO_FD_READ; - bfd->cb = rf_ctrl_accept; - bfd->data = rf; + osmo_fd_setup(bfd, bfd->fd, OSMO_FD_READ, rf_ctrl_accept, rf, 0); if (osmo_fd_register(bfd) != 0) { LOGP(DLINP, LOGL_ERROR, "Failed to register bfd.\n"); diff --git a/src/osmo-bsc/pcu_sock.c b/src/osmo-bsc/pcu_sock.c index a1a1cfc..7d99419 100644 --- a/src/osmo-bsc/pcu_sock.c +++ b/src/osmo-bsc/pcu_sock.c @@ -667,15 +667,12 @@ LOGP(DPCU, LOGL_NOTICE, "PCU connects but we already have " "another active connection ?!?\n"); /* We already have one PCU connected, this is all we support */ - state->listen_bfd.when &= ~OSMO_FD_READ; + osmo_bfd_read_disable(&state->listen_bfd); close(rc); return 0; } - conn_bfd->fd = rc; - conn_bfd->when = OSMO_FD_READ; - conn_bfd->cb = pcu_sock_cb; - conn_bfd->data = state; + osmo_fd_setup(conn_bfd, rc, OSMO_FD_READ, pcu_sock_cb, state, 0); if (osmo_fd_register(conn_bfd) != 0) { LOGP(DPCU, LOGL_ERROR, "Failed to register new connection " @@ -707,18 +704,15 @@ bfd = &state->listen_bfd; - bfd->fd = osmo_sock_unix_init(SOCK_SEQPACKET, 0, path, - OSMO_SOCK_F_BIND); - if (bfd->fd < 0) { + rc = osmo_sock_unix_init(SOCK_SEQPACKET, 0, path, OSMO_SOCK_F_BIND); + if (rc < 0) { LOGP(DPCU, LOGL_ERROR, "Could not create unix socket: %s\n", strerror(errno)); talloc_free(state); return -1; } - bfd->when = OSMO_FD_READ; - bfd->cb = pcu_sock_accept; - bfd->data = state; + osmo_fd_setup(bfd, rc, OSMO_FD_READ, pcu_sock_accept, state, 0); rc = osmo_fd_register(bfd); if (rc < 0) { -- To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/20735 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-Change-Id: Iee26d14e997cc77c49b8fc1a9f388e4e2f783105 Gerrit-Change-Number: 20735 Gerrit-PatchSet: 1 Gerrit-Owner: laforge <laforge at osmocom.org> Gerrit-MessageType: newchange -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20201018/64b64e4b/attachment.htm>