diff options
author | Harald Welte <laforge@gnumonks.org> | 2017-08-12 11:43:14 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2017-08-12 11:43:14 +0200 |
commit | 6c0a0e645d4663fdd15de41d3e4dc3f45d6ce708 (patch) | |
tree | 06ed565351f628b8e62c90b000493bd9c583aca2 /src | |
parent | 4a29f348135671ba59107a1659fab6c8c9362f58 (diff) |
add osmo_fd_setup() convenience function to fill-in osmo_fd
This basically follows the concept of osmo_timer_setup() and allows
the caller to fill-in all configurable fields of osmo_fd in one
line of code, rather than open-coding it in 5 lines everywhere.
Change-Id: I6dbf19ea22fd65302bfc5424c10418d1b7939094
Diffstat (limited to 'src')
-rw-r--r-- | src/select.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/select.c b/src/select.c index 0ba8bc60..4b98b623 100644 --- a/src/select.c +++ b/src/select.c @@ -47,6 +47,24 @@ static int maxfd = 0; static LLIST_HEAD(osmo_fds); static int unregistered_count; +/*! Set up an osmo-fd. Will not register it. + * \param[inout] ofd Osmo FD to be set-up + * \param[in] fd OS-level file descriptor number + * \param[in] when bit-mask of BSC_FD_{READ,WRITE,EXECEPT} + * \param[in] cb Call-back function to be called + * \param[in] data Private context pointer + * \param[in] priv_nr Private number + */ +void osmo_fd_setup(struct osmo_fd *ofd, int fd, unsigned int when, + int (*cb)(struct osmo_fd *fd, unsigned int what), + void *data, unsigned int priv_nr) +{ + ofd->fd = fd; + ofd->when = when; + ofd->cb = cb; + ofd->data = data; + ofd->priv_nr = priv_nr; +} /*! Check if a file descriptor is already registered * \param[in] fd osmocom file descriptor to be checked |