ipacces: Fix e1inp_line reference put in ipaccess_close
Drop the function e1inp_close_socket since it's only used by the caller
at hand, and it's only exported through "internal.h", so no app is using
it. Remove it because there's only a caller, and furthermore because
keeping it (and putting bfd->data==line) would introduce a layer
violation because the bfd->data==line is only used for ipaccess so far.
Triggering path:
handle_ts1_read ret=0 "Sign link vanished"
ipaccess_drop
line->ops->sign_link_down
(osmo-bsc) ipaccess_drop_oml
e1inp_sign_link_destroy
link->ts->line->driver->close
ipaccess_close
Related: OS#4624
Change-Id: If23cc722106a9f70c998e591369a4acafa52c519
diff --git a/src/e1_input.c b/src/e1_input.c
index fc0370d..df61c7b 100644
--- a/src/e1_input.c
+++ b/src/e1_input.c
@@ -816,8 +816,7 @@
return msg;
}
-static int e1inp_int_snd_event(struct e1inp_ts *ts,
- struct e1inp_sign_link *link, int evt)
+int e1inp_int_snd_event(struct e1inp_ts *ts, struct e1inp_sign_link *link, int evt)
{
struct input_signal_data isd;
isd.line = ts->line;
@@ -844,19 +843,6 @@
return e1inp_int_snd_event(ts, link, evt);
}
-void e1inp_close_socket(struct e1inp_ts *ts,
- struct e1inp_sign_link *sign_link,
- struct osmo_fd *bfd)
-{
- e1inp_int_snd_event(ts, sign_link, S_L_INP_TEI_DN);
- /* the first e1inp_sign_link_destroy call closes the socket. */
- if (bfd->fd != -1) {
- osmo_fd_unregister(bfd);
- close(bfd->fd);
- bfd->fd = -1;
- }
-}
-
/* register a driver with the E1 core */
int e1inp_driver_register(struct e1inp_driver *drv)
{