aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Welte <laforge@osmocom.org>2020-10-18 22:04:30 +0200
committerlaforge <laforge@osmocom.org>2020-10-19 15:06:08 +0000
commit629824ac14e5ddf3f1374882e3529a2ce033e3e2 (patch)
tree7a90d4f078582cf84bc7c0f75503c711f0a0f876
parent1b5b62962431060559bb5c8516b5fb340c67875f (diff)
use osmo_fd_setup() everywhere
-rw-r--r--src/common/pcu_sock.c14
-rw-r--r--src/osmo-bts-litecell15/l1_transp_hw.c12
-rw-r--r--src/osmo-bts-oc2g/l1_transp_hw.c12
-rw-r--r--src/osmo-bts-oc2g/misc/oc2gbts_mgr_calib.c6
-rw-r--r--src/osmo-bts-octphy/l1_if.c5
-rw-r--r--src/osmo-bts-sysmo/l1_fwd_main.c4
-rw-r--r--src/osmo-bts-sysmo/l1_transp_fwd.c5
-rw-r--r--src/osmo-bts-sysmo/l1_transp_hw.c12
-rw-r--r--src/osmo-bts-sysmo/misc/sysmobts_mgr_calib.c6
-rw-r--r--src/osmo-bts-virtual/osmo_mcast_sock.c4
10 files changed, 18 insertions, 62 deletions
diff --git a/src/common/pcu_sock.c b/src/common/pcu_sock.c
index 6586af8b..0466698d 100644
--- a/src/common/pcu_sock.c
+++ b/src/common/pcu_sock.c
@@ -1071,10 +1071,7 @@ static int pcu_sock_accept(struct osmo_fd *bfd, unsigned int flags)
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 "
@@ -1108,18 +1105,15 @@ int pcu_sock_init(const char *path)
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 %s unix socket: %s\n",
path, 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) {
diff --git a/src/osmo-bts-litecell15/l1_transp_hw.c b/src/osmo-bts-litecell15/l1_transp_hw.c
index c353f43f..ffe8613e 100644
--- a/src/osmo-bts-litecell15/l1_transp_hw.c
+++ b/src/osmo-bts-litecell15/l1_transp_hw.c
@@ -265,11 +265,7 @@ int l1if_transport_open(int q, struct lc15l1_hdl *hdl)
buf, strerror(errno));
return rc;
}
- read_ofd->fd = rc;
- read_ofd->priv_nr = q;
- read_ofd->data = hdl;
- read_ofd->cb = l1if_fd_cb;
- read_ofd->when = OSMO_FD_READ;
+ osmo_fd_setup(read_ofd, rc, OSMO_FD_READ, l1if_fd_cb, hdl, q);
rc = osmo_fd_register(read_ofd);
if (rc < 0) {
close(read_ofd->fd);
@@ -288,11 +284,7 @@ int l1if_transport_open(int q, struct lc15l1_hdl *hdl)
}
osmo_wqueue_init(wq, 10);
wq->write_cb = l1fd_write_cb;
- write_ofd->cb = wqueue_vector_cb;
- write_ofd->fd = rc;
- write_ofd->priv_nr = q;
- write_ofd->data = hdl;
- write_ofd->when = OSMO_FD_WRITE;
+ osmo_fd_setup(write_ofd, rc, OSMO_FD_WRITE, wqueue_vector_cb, hdl, q);
rc = osmo_fd_register(write_ofd);
if (rc < 0) {
close(write_ofd->fd);
diff --git a/src/osmo-bts-oc2g/l1_transp_hw.c b/src/osmo-bts-oc2g/l1_transp_hw.c
index f9d4510f..daebf602 100644
--- a/src/osmo-bts-oc2g/l1_transp_hw.c
+++ b/src/osmo-bts-oc2g/l1_transp_hw.c
@@ -265,11 +265,7 @@ int l1if_transport_open(int q, struct oc2gl1_hdl *hdl)
buf, strerror(errno));
return rc;
}
- read_ofd->fd = rc;
- read_ofd->priv_nr = q;
- read_ofd->data = hdl;
- read_ofd->cb = l1if_fd_cb;
- read_ofd->when = OSMO_FD_READ;
+ osmo_fd_setup(read_ofd, rc, OSMO_FD_READ, l1if_fd_cb, hdl, q);
rc = osmo_fd_register(read_ofd);
if (rc < 0) {
close(read_ofd->fd);
@@ -288,11 +284,7 @@ int l1if_transport_open(int q, struct oc2gl1_hdl *hdl)
}
osmo_wqueue_init(wq, 10);
wq->write_cb = l1fd_write_cb;
- write_ofd->cb = wqueue_vector_cb;
- write_ofd->fd = rc;
- write_ofd->priv_nr = q;
- write_ofd->data = hdl;
- write_ofd->when = OSMO_FD_WRITE;
+ osmo_fd_setup(write_ofd, rc, OSMO_FD_WRITE, wqueue_vector_cb, hdl, q);
rc = osmo_fd_register(write_ofd);
if (rc < 0) {
close(write_ofd->fd);
diff --git a/src/osmo-bts-oc2g/misc/oc2gbts_mgr_calib.c b/src/osmo-bts-oc2g/misc/oc2gbts_mgr_calib.c
index bb2984ed..b9f8dc57 100644
--- a/src/osmo-bts-oc2g/misc/oc2gbts_mgr_calib.c
+++ b/src/osmo-bts-oc2g/misc/oc2gbts_mgr_calib.c
@@ -220,10 +220,8 @@ static void mgr_gps_open(struct oc2gbts_mgr_instance *mgr)
mgr->gps.gps_open = 1;
gps_stream(&mgr->gps.gpsdata, WATCH_ENABLE, NULL);
- mgr->gps.gpsfd.data = mgr;
- mgr->gps.gpsfd.cb = mgr_gps_read;
- mgr->gps.gpsfd.when = OSMO_FD_READ | OSMO_FD_EXCEPT;
- mgr->gps.gpsfd.fd = mgr->gps.gpsdata.gps_fd;
+ osmo_fd_setup(&mgr->gps.gpsfd, mgr->gps.gpsdata.gps_fd, OSMO_FD_READ | OSMO_FD_EXCEPT,
+ mgr_gps_read, mgr, 0);
if (osmo_fd_register(&mgr->gps.gpsfd) < 0) {
LOGP(DCALIB, LOGL_ERROR, "Failed to register GPSD fd\n");
calib_state_reset(mgr, CALIB_FAIL_GPSFIX);
diff --git a/src/osmo-bts-octphy/l1_if.c b/src/osmo-bts-octphy/l1_if.c
index c03b4112..f20f21a5 100644
--- a/src/osmo-bts-octphy/l1_if.c
+++ b/src/osmo-bts-octphy/l1_if.c
@@ -1826,10 +1826,7 @@ struct octphy_hdl *l1if_open(struct phy_link *plink)
osmo_wqueue_init(&fl1h->phy_wq, 10);
fl1h->phy_wq.write_cb = octphy_write_cb;
fl1h->phy_wq.read_cb = octphy_read_cb;
- fl1h->phy_wq.bfd.fd = sfd;
- fl1h->phy_wq.bfd.when = OSMO_FD_READ;
- fl1h->phy_wq.bfd.cb = osmo_wqueue_bfd_cb;
- fl1h->phy_wq.bfd.data = fl1h;
+ osmo_fd_setup(&fl1h->phy_wq.bfd, sfd, OSMO_FD_READ, osmo_wqueue_bfd_cb, fl1h, 0);
rc = osmo_fd_register(&fl1h->phy_wq.bfd);
if (rc < 0) {
close(sfd);
diff --git a/src/osmo-bts-sysmo/l1_fwd_main.c b/src/osmo-bts-sysmo/l1_fwd_main.c
index 8e8bd83f..db35ec3b 100644
--- a/src/osmo-bts-sysmo/l1_fwd_main.c
+++ b/src/osmo-bts-sysmo/l1_fwd_main.c
@@ -213,9 +213,7 @@ int main(int argc, char **argv)
wq->write_cb = udp_write_cb;
wq->read_cb = udp_read_cb;
- wq->bfd.when |= OSMO_FD_READ;
- wq->bfd.data = l1fh;
- wq->bfd.priv_nr = i;
+ osmo_fd_setup(&wq->bfd, -1, OSMO_FD_READ, osmo_wqueue_bfd_cb, l1fh, i);
rc = osmo_sock_init_ofd(&wq->bfd, AF_UNSPEC, SOCK_DGRAM,
IPPROTO_UDP, NULL, fwd_udp_ports[i],
OSMO_SOCK_F_BIND);
diff --git a/src/osmo-bts-sysmo/l1_transp_fwd.c b/src/osmo-bts-sysmo/l1_transp_fwd.c
index 97200ce9..ef272eb1 100644
--- a/src/osmo-bts-sysmo/l1_transp_fwd.c
+++ b/src/osmo-bts-sysmo/l1_transp_fwd.c
@@ -126,10 +126,7 @@ int l1if_transport_open(int q, struct femtol1_hdl *fl1h)
wq->write_cb = prim_write_cb;
wq->read_cb = fwd_read_cb;
- ofd->data = fl1h;
- ofd->priv_nr = q;
- ofd->when |= OSMO_FD_READ;
-
+ osmo_fd_setup(ofd, -1, OSMO_FD_READ, osmo_wqueue_bfd_cb, fl1h, q);
rc = osmo_sock_init_ofd(ofd, AF_UNSPEC, SOCK_DGRAM, IPPROTO_UDP,
bts_host, fwd_udp_ports[q],
OSMO_SOCK_F_CONNECT);
diff --git a/src/osmo-bts-sysmo/l1_transp_hw.c b/src/osmo-bts-sysmo/l1_transp_hw.c
index 45f4a071..5561af47 100644
--- a/src/osmo-bts-sysmo/l1_transp_hw.c
+++ b/src/osmo-bts-sysmo/l1_transp_hw.c
@@ -271,11 +271,7 @@ int l1if_transport_open(int q, struct femtol1_hdl *hdl)
q, rd_devnames[q], strerror(errno));
return rc;
}
- read_ofd->fd = rc;
- read_ofd->priv_nr = q;
- read_ofd->data = hdl;
- read_ofd->cb = l1if_fd_cb;
- read_ofd->when = OSMO_FD_READ;
+ osmo_fd_setup(read_ofd, rc, OSMO_FD_READ, l1if_fd_cb, hdl, q);
rc = osmo_fd_register(read_ofd);
if (rc < 0) {
close(read_ofd->fd);
@@ -291,11 +287,7 @@ int l1if_transport_open(int q, struct femtol1_hdl *hdl)
}
osmo_wqueue_init(wq, 10);
wq->write_cb = l1fd_write_cb;
- write_ofd->cb = wqueue_vector_cb;
- write_ofd->fd = rc;
- write_ofd->priv_nr = q;
- write_ofd->data = hdl;
- write_ofd->when = OSMO_FD_WRITE;
+ osmo_fd_setup(write_ofd, rc, OSMO_FD_WRITE, wqueue_vector_cb, hdl, q);
rc = osmo_fd_register(write_ofd);
if (rc < 0) {
close(write_ofd->fd);
diff --git a/src/osmo-bts-sysmo/misc/sysmobts_mgr_calib.c b/src/osmo-bts-sysmo/misc/sysmobts_mgr_calib.c
index 2fbdfa6c..0126aaa5 100644
--- a/src/osmo-bts-sysmo/misc/sysmobts_mgr_calib.c
+++ b/src/osmo-bts-sysmo/misc/sysmobts_mgr_calib.c
@@ -167,10 +167,8 @@ static void mgr_gps_open(struct sysmobts_mgr_instance *mgr)
#else
gps_stream(mgr->calib.gpsdata, WATCH_ENABLE, NULL);
#endif
- mgr->calib.gpsfd.data = mgr;
- mgr->calib.gpsfd.cb = mgr_gps_read;
- mgr->calib.gpsfd.when = OSMO_FD_READ | OSMO_FD_EXCEPT;
- mgr->calib.gpsfd.fd = mgr->calib.gpsdata->gps_fd;
+ osmo_fd_setup(&mgr->calib.gpsfd, mgr->calib.gpsdata->gps_fd, OSMO_FD_READ | OSMO_FD_EXCEPT,
+ mgr_gps_read, mgr, 0);
if (osmo_fd_register(&mgr->calib.gpsfd) < 0) {
LOGP(DCALIB, LOGL_ERROR, "Failed to register GPSD fd\n");
calib_state_reset(mgr, CALIB_FAIL_GPS);
diff --git a/src/osmo-bts-virtual/osmo_mcast_sock.c b/src/osmo-bts-virtual/osmo_mcast_sock.c
index 91203b7b..3e565142 100644
--- a/src/osmo-bts-virtual/osmo_mcast_sock.c
+++ b/src/osmo-bts-virtual/osmo_mcast_sock.c
@@ -43,9 +43,7 @@ int mcast_client_sock_setup(struct osmo_fd *ofd, const char *mcast_group, uint16
int rc;
unsigned int flags = OSMO_SOCK_F_BIND | OSMO_SOCK_F_NO_MCAST_ALL | OSMO_SOCK_F_UDP_REUSEADDR;
- ofd->cb = fd_rx_cb;
- ofd->when = OSMO_FD_READ;
- ofd->data = osmo_fd_data;
+ osmo_fd_setup(ofd, -1, OSMO_FD_READ, fd_rx_cb, osmo_fd_data, 0);
/* Create mcast client socket */
rc = osmo_sock_init_ofd(ofd, AF_INET, SOCK_DGRAM, IPPROTO_UDP,