pthread_mutex_unlock(&rtsp_lock);
}
+/*
+ *
+ */
+static void
+rtsp_stream_status ( void *opaque, htsmsg_t *m )
+{
+ http_connection_t *hc = opaque;
+ htsmsg_add_str(m, "type", "SAT>IP");
+ if (hc->hc_username)
+ htsmsg_add_str(m, "user", hc->hc_username);
+}
+
/*
*
*/
struct sockaddr_storage *self)
{
http_connection_t hc;
+ access_t aa;
+ char buf[128];
+ void *tcp;
memset(&hc, 0, sizeof(http_connection_t));
*opaque = &hc;
+
+ memset(&aa, 0, sizeof(aa));
+ strcpy(buf, "SAT>IP Client ");
+ tcp_get_ip_str((struct sockaddr *)peer, buf + strlen(buf), sizeof(buf) - strlen(buf));
+ aa.aa_representative = buf;
+
+ tcp = tcp_connection_launch(fd, rtsp_stream_status, &aa);
+
/* Note: global_lock held on entry */
pthread_mutex_unlock(&global_lock);
/* Note: leave global_lock held for parent */
pthread_mutex_lock(&global_lock);
*opaque = NULL;
+
+ tcp_connection_land(tcp);
}
/*