The session and relay daemons both define their own "session"
APIs (ltt_session and relay_session) which define a session_put()
function.
Coverity reports that a fair amount of callers now assume that
session_put() assumes that a NULL check is performed (as in the
sessiond).
Since the session daemon's variant checks for NULL, it makes sense to
bring both implementation to parity to fix the problems reported and
make this function less confusing to use. This also allows
simplifications to the error handling paths in the relay daemon
(not included in this patch).
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
void session_put(struct relay_session *session)
{
+ if (!session) {
+ return;
+ }
rcu_read_lock();
urcu_ref_put(&session->ref, session_release);
rcu_read_unlock();