osmo_io: Remove osmo_iofd_read/write_enable/disable

This API is not really used or needed, so remove it.
See discussion in https://gerrit.osmocom.org/c/libosmocore/+/33084

Change-Id: I0dbc14a8cbbdc7b6e4688942c0dac865bbd72c8b
diff --git a/include/osmocom/core/osmo_io.h b/include/osmocom/core/osmo_io.h
index a5e6165..d278ce0 100644
--- a/include/osmocom/core/osmo_io.h
+++ b/include/osmocom/core/osmo_io.h
@@ -74,10 +74,6 @@
 void osmo_iofd_txqueue_clear(struct osmo_io_fd *iofd);
 int osmo_iofd_close(struct osmo_io_fd *iofd);
 void osmo_iofd_free(struct osmo_io_fd *iofd);
-void osmo_iofd_read_enable(struct osmo_io_fd *iofd);
-void osmo_iofd_read_disable(struct osmo_io_fd *iofd);
-void osmo_iofd_write_enable(struct osmo_io_fd *iofd);
-void osmo_iofd_write_disable(struct osmo_io_fd *iofd);
 
 int osmo_iofd_write_msgb(struct osmo_io_fd *iofd, struct msgb *msg);
 int osmo_iofd_sendto_msgb(struct osmo_io_fd *iofd, struct msgb *msg, int sendto_flags,
diff --git a/src/core/osmo_io.c b/src/core/osmo_io.c
index 9960fb4..d260da4 100644
--- a/src/core/osmo_io.c
+++ b/src/core/osmo_io.c
@@ -170,7 +170,7 @@
 	llist_add_tail(&msghdr->list, &iofd->tx_queue.msg_queue);
 	iofd->tx_queue.current_length++;
 
-	if (iofd->write_enabled && iofd->tx_queue.current_length == 1)
+	if (iofd->tx_queue.current_length == 1)
 		osmo_iofd_ops.write_enable(iofd);
 
 	return 0;
@@ -368,46 +368,6 @@
 	return 0;
 }
 
-/*! Enable reading from this iofd
- *
- *  \param[in] iofd the file descriptor
- */
-void osmo_iofd_read_enable(struct osmo_io_fd *iofd)
-{
-	iofd->read_enabled = true;
-	osmo_iofd_ops.read_enable(iofd);
-}
-
-/*! Disable reading from this iofd
- *
- *  \param[in] iofd the file descriptor
- */
-void osmo_iofd_read_disable(struct osmo_io_fd *iofd)
-{
-	iofd->read_enabled = false;
-	osmo_iofd_ops.read_disable(iofd);
-}
-
-/*! Enable writing to this iofd
- *
- *  \param[in] iofd the file descriptor
- */
-void osmo_iofd_write_enable(struct osmo_io_fd *iofd)
-{
-	iofd->write_enabled = true;
-	osmo_iofd_ops.write_enable(iofd);
-}
-
-/*! Disable writing to this iofd
- *
- *  \param[in] iofd the file descriptor
- */
-void osmo_iofd_write_disable(struct osmo_io_fd *iofd)
-{
-	iofd->write_enabled = false;
-	osmo_iofd_ops.write_disable(iofd);
-}
-
 /*! Allocate and setup a new iofd
  *  \param[in] ctx the parent context from which to allocate
  *  \param[in] fd the underlying system file descriptor
@@ -454,14 +414,19 @@
 */
 int osmo_iofd_register(struct osmo_io_fd *iofd, int fd)
 {
+	int rc = 0;
+
 	if (fd >= 0)
 		iofd->fd = fd;
 	iofd->closed = false;
 
 	if (osmo_iofd_ops.register_fd)
-		return osmo_iofd_ops.register_fd(iofd);
+		rc = osmo_iofd_ops.register_fd(iofd);
 
-	return 0;
+	osmo_iofd_ops.read_enable(iofd);
+	osmo_iofd_ops.write_enable(iofd);
+
+	return rc;
 }
 
 /*! Unregister the fd from the underlying backend
diff --git a/src/core/osmo_io_internal.h b/src/core/osmo_io_internal.h
index 7fc4b6b..bdd2ac5 100644
--- a/src/core/osmo_io_internal.h
+++ b/src/core/osmo_io_internal.h
@@ -38,13 +38,11 @@
 	enum osmo_io_fd_mode mode;
 
 	/*! flags to guard closing/freeing of iofd */
+	/* TODO: Move to bitfield */
 	bool closed;
 	bool in_callback;
 	bool to_free;
 
-	bool write_enabled;
-	bool read_enabled;
-
 	/*! human-readable name to associte with fd */
 	const char *name;
 
diff --git a/src/gb/gprs_ns2_udp.c b/src/gb/gprs_ns2_udp.c
index 0fc1b4b..f24eae6 100644
--- a/src/gb/gprs_ns2_udp.c
+++ b/src/gb/gprs_ns2_udp.c
@@ -337,9 +337,6 @@
 	osmo_iofd_register(priv->iofd, rc);
 	osmo_iofd_set_alloc_info(priv->iofd, 4096, 128);
 
-	osmo_iofd_read_enable(priv->iofd);
-	osmo_iofd_write_enable(priv->iofd);
-
 	/* IPv4: max fragmented payload can be (13 bit) * 8 byte => 65535.
 	 * IPv6: max payload can be 65535 (RFC 2460).
 	 * UDP header = 8 byte */
diff --git a/tests/osmo_io/osmo_io_test.c b/tests/osmo_io/osmo_io_test.c
index bb99b54..3683ee3 100644
--- a/tests/osmo_io/osmo_io_test.c
+++ b/tests/osmo_io/osmo_io_test.c
@@ -85,10 +85,6 @@
 	memcpy(buf, TESTDATA, sizeof(TESTDATA));
 
 	osmo_iofd_write_msgb(iofd1, msg);
-	osmo_iofd_write_enable(iofd1);
-	osmo_iofd_write_enable(iofd2);
-	osmo_iofd_read_enable(iofd1);
-	osmo_iofd_read_enable(iofd2);
 
 
 	/* Allow enough cycles to handle the messages */
@@ -142,11 +138,6 @@
 	memcpy(buf, TESTDATA, sizeof(TESTDATA));
 
 	osmo_iofd_sendto_msgb(iofd1, msg, 0, NULL);
-	osmo_iofd_write_enable(iofd1);
-	osmo_iofd_write_enable(iofd2);
-	osmo_iofd_read_enable(iofd1);
-	osmo_iofd_read_enable(iofd2);
-
 
 	/* Allow enough cycles to handle the messages */
 	for (int i = 0; i < 128; i++)