RDK Documentation (Open Sourced RDK Components)
idm_client.c File Reference

This source file contains functions that will run as task for maintaining the device list. More...

#include <libgupnp/gupnp-control-point.h>
#include <string.h>
#include <unistd.h>
#include <libgssdp/gssdp.h>
#include <ifaddrs.h>
#include <arpa/inet.h>
#include <sys/ioctl.h>
#include <net/if.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include <sys/stat.h>
#include <errno.h>
#include <signal.h>
#include "xdiscovery.h"
#include "secure_wrapper.h"
#include <sysevent/sysevent.h>
#include <glib/gprintf.h>
#include <glib/gstdio.h>
#include "rdk_safeclib.h"
#include <libsoup/soup.h>
#include <idm_client.h>
Include dependency graph for idm_client.c:

Go to the source code of this file.

Macros

#define _GNU_SOURCE
 
#define CLIENT_CONTEXT_PORT   50767
 
#define IDM_CLIENT_DEVICE   "urn:schemas-upnp-org:device:IDM:1"
 
#define IDM_SERVICE   "urn:schemas-upnp-org:service:X1IDM:1"
 
#define IDM_DP_CLIENT_DEVICE   "urn:schemas-upnp-org:device:IDM_DP:1"
 
#define IDM_DP_SERVICE   "urn:schemas-upnp-org:service:X1IDM_DP:1"
 
#define IDM_CERT_FILE   "/tmp/idm_xpki_cert"
 
#define IDM_KEY_FILE   "/tmp/idm_xpki_key"
 
#define IDM_CA_FILE   "/tmp/idm_UPnP_CA"
 

Typedefs

typedef GTlsInteraction XupnpTlsInteraction
 
typedef GTlsInteractionClass XupnpTlsInteractionClass
 

Functions

static void xupnp_tls_interaction_init (XupnpTlsInteraction *interaction)
 
static void xupnp_tls_interaction_class_init (XupnpTlsInteractionClass *xupnpClass)
 
int s_sysevent_connect (token_t *out_se_token)
 
int SE_msg_receive (int fd, char *replymsg, unsigned int *replymsg_size, token_t *who)
 
GType xupnp_tls_interaction_get_type (void)
 
 G_DEFINE_TYPE (XupnpTlsInteraction, xupnp_tls_interaction, G_TYPE_TLS_INTERACTION)
 
static gint g_list_compare_sno (GwyDeviceData *gwData1, GwyDeviceData *gwData2, gpointer user_data)
 
static gint g_list_find_sno (GwyDeviceData *gwData, gconstpointer *sno)
 
int EventListen (void)
 
void * EventHandler (void *args)
 
static GTlsInteractionResult xupnp_tls_interaction_request_certificate (GTlsInteraction *interaction, GTlsConnection *connection, GTlsCertificateRequestFlags flags, GCancellable *cancellable, GError **error)
 
gboolean init_gwydata (GwyDeviceData *gwydata)
 
gboolean processStringRequest (const GUPnPServiceProxy *sproxy, const char *requestFn, const char *responseFn, gchar **result, gboolean isInCriticalPath)
 
void * verify_devices ()
 
gboolean delete_gwyitem (const char *serial_num)
 
static void device_proxy_unavailable_cb_bgw (GUPnPControlPoint *cp, GUPnPDeviceProxy *dproxy)
 
static void device_proxy_available_cb_bgw (GUPnPControlPoint *cp, GUPnPDeviceProxy *dproxy)
 
void remove_entries_in_list ()
 
int stop_discovery ()
 
void start_discovery (discovery_config_t *dc_obj, int(*func_callback)(device_info_t *, uint, uint))
 

Variables

static int fd = -1
 
int idm_upnp_restart_triggered = 0
 
guint deviceAddNo =0
 

yes

This source file contains functions that will run as task for maintaining the device list.

Definition in file idm_client.c.