static void client_connected_cb (GServer *server, GConn *conn, gpointer user_data) { OdccmDeviceManager *self = ODCCM_DEVICE_MANAGER (user_data); OdccmDeviceManagerPrivate *priv = ODCCM_DEVICE_MANAGER_GET_PRIVATE (self); struct in_addr addr; OdccmDevice *dev = NULL; GSList *cur; if (conn == NULL) { g_warning ("%s: an error occurred", G_STRFUNC); return; } gnet_inetaddr_get_bytes (gnet_tcp_socket_get_remote_inetaddr (conn->socket), (gchar *) &(addr.s_addr)); for (cur = priv->devices; cur != NULL && dev == NULL; cur = cur->next) { guint32 cur_addr; g_object_get (cur->data, "ip-address", &cur_addr, NULL); if (cur_addr == addr.s_addr) { dev = cur->data; } } if (dev != NULL) { _odccm_device_client_connected (dev, conn); } else { #ifdef ENABLE_LEGACY_SUPPORT GInetAddr *local_inet_addr = gnet_tcp_socket_get_local_inetaddr (conn->socket); if (gnet_inetaddr_get_port(local_inet_addr) == 5679) { dev = g_object_new (ODCCM_TYPE_DEVICE_LEGACY, "connection", conn, NULL); g_signal_connect(dev, "device-legacy-noping", G_CALLBACK(legacy_device_noping_cb), self); } else dev = g_object_new (ODCCM_TYPE_DEVICE, "connection", conn, NULL); gnet_inetaddr_unref(local_inet_addr); #else dev = g_object_new (ODCCM_TYPE_DEVICE, "connection", conn, NULL); #endif priv->devices = g_slist_append (priv->devices, dev); g_signal_connect (dev, "notify::object-path", (GCallback) device_obj_path_changed_cb, self); gnet_conn_unref (conn); } }
static void sim_host_level_impl_finalize (GObject *gobject) { SimHostLevel *host_level = SIM_HOST_LEVEL (gobject); if (host_level->_priv->ia) gnet_inetaddr_unref (host_level->_priv->ia); g_free (host_level->_priv); G_OBJECT_CLASS (parent_class)->finalize (gobject); }
static void sim_host_impl_finalize (GObject *gobject) { SimHost *host = SIM_HOST (gobject); if (host->_priv->ia) gnet_inetaddr_unref (host->_priv->ia); if (host->_priv->name) g_free (host->_priv->name); g_free (host->_priv); G_OBJECT_CLASS (parent_class)->finalize (gobject); }
/* initialize GNet testing */ static void gnet_check_init (int *argc, char **argv[]) { gnet_init (); /* GST_DEBUG_CATEGORY_INIT (check_debug, "check", 0, "check regression tests"); */ if (g_getenv ("GNET_TEST_DEBUG")) _gnet_check_debug = TRUE; if (g_getenv ("SOCKS_SERVER")) { GInetAddr *ia; ia = gnet_socks_get_server (); if (ia) { gchar *name; name = gnet_inetaddr_get_canonical_name (ia); g_print ("\nUsing SOCKS %u proxy: %s\n", gnet_socks_get_version(), name); g_free (name); gnet_inetaddr_unref (ia); gnet_socks_set_enabled (TRUE); } } g_log_set_handler (NULL, G_LOG_LEVEL_MESSAGE, gnet_check_log_message_func, NULL); g_log_set_handler (NULL, G_LOG_LEVEL_CRITICAL | G_LOG_LEVEL_WARNING, gnet_check_log_critical_func, NULL); g_log_set_handler ("GNet", G_LOG_LEVEL_CRITICAL | G_LOG_LEVEL_WARNING, gnet_check_log_critical_func, NULL); g_log_set_handler ("GLib", G_LOG_LEVEL_CRITICAL | G_LOG_LEVEL_WARNING, gnet_check_log_critical_func, NULL); g_log_set_handler ("GLib-GObject", G_LOG_LEVEL_CRITICAL | G_LOG_LEVEL_WARNING, gnet_check_log_critical_func, NULL); check_cond = g_cond_new (); check_mutex = g_mutex_new (); }
static void sim_event_impl_finalize(GObject *gobject) { int i; g_log(G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG,"sim_event_impl_finalize"); SimEvent *event = (SimEvent *) gobject; g_log(G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, "sim_event_impl_finalize: Id %u, Sid %u, Cid %u", event->id, event->snort_sid, event->snort_cid); if (event->sensor) { g_free(event->sensor); event->sensor = NULL; } if (event->device) { g_free(event->device); event->device = NULL; } if (event->interface) { g_free(event->interface); event->interface = NULL; } if (event->src_ia) gnet_inetaddr_unref(event->src_ia); if (event->dst_ia) gnet_inetaddr_unref(event->dst_ia); if (event->data) { g_free(event->data); event->data = NULL; } if (event->time_str) { g_free(event->time_str); event->time_str = NULL; } if (event->role) g_free(event->role); if (event->log) { g_free(event->log); event->log = NULL; } if (event->sql_text_fields) { g_free(event->sql_text_fields); event->sql_text_fields = NULL; } if (event->value) { g_free(event->value); event->value = NULL; } g_free (event->rep_act_src); g_free (event->rep_act_dst); for (i = 0; i < N_TEXT_FIELDS; i++) { if(event->textfields[i]) { g_free(event->textfields[i]); event->textfields[i] = NULL; } } if (event->buffer) { g_free(event->buffer); event->buffer = NULL; } if (event->plugin_sid_name) { g_free(event->plugin_sid_name); event->plugin_sid_name = NULL; } if (event->packet) { g_object_unref(event->packet); } if (event->backlog_list) { GList *node; for (node = g_list_first(event->backlog_list); node != NULL; node = g_list_next(node)) { g_object_unref(G_OBJECT(node->data)); } g_list_free(event->backlog_list); } G_OBJECT_CLASS(parent_class)->finalize(gobject); }