Example #1
0
File: socks.c Project: GNOME/gnet
/**
 *  gnet_socks_set_server:
 *  @inetaddr: SOCKS server address
 *
 *  Sets the address of the SOCKS server.
 *
 **/
void
gnet_socks_set_server (const GInetAddr* inetaddr)
{
  g_return_if_fail (inetaddr);

  G_LOCK (socks);

  if (socks_server)
    gnet_inetaddr_delete (socks_server);
  socks_server = gnet_inetaddr_clone (inetaddr);

  G_UNLOCK (socks);
}
Example #2
0
File: socks.c Project: GNOME/gnet
/**
 *  gnet_socks_get_server
 *
 *  Gets the address of the SOCKS server (regardless of whether SOCKS
 *  is enabled).  This function checks the gnet_socks_set_server()
 *  value and, if not set, the SOCKS_SERVER environment variable.  The
 *  SOCKS_SERVER enviroment variable should be in the form HOSTNAME or
 *  HOSTNAME:PORT.
 *
 *  Returns: a copy of the address; NULL if there is no server.
 *
 **/
GInetAddr*
gnet_socks_get_server (void)
{
  GInetAddr* rv = NULL;
  const gchar* var;

  G_LOCK (socks);

  /* If no socks_server, check the environment variable. */
  if (!socks_server && (var = g_getenv("SOCKS_SERVER")))
    {
      gchar* hostname;
      gint port = GNET_SOCKS_PORT;
      int i;
	  
      for (i = 0; var[i] && var[i] != ':'; ++i) 
	;
      if (i == 0) 
	goto done;

      hostname = g_strndup (var, i);

      if (var[i] == ':')
	{
	  char* ep;
	  port = (gint) strtoul(&var[i+1], &ep, 10);
	  if (*ep != '\0')
	    {
	      g_free (hostname);
	      goto done;
	    }
	}

      socks_server = gnet_inetaddr_new (hostname, port);
    }
 done:

  /* Return copy of socks server */
  if (socks_server)
    rv = gnet_inetaddr_clone (socks_server);

  G_UNLOCK (socks);

  return rv;
}
Example #3
0
SimEvent*
sim_event_clone(SimEvent *event)
{
  SimEvent *new_event;
  int i;

  new_event = SIM_EVENT (g_object_new (SIM_TYPE_EVENT, NULL));
  new_event->id = event->id;
  new_event->snort_sid = event->snort_sid;
  new_event->snort_cid = event->snort_cid;

  new_event->type = event->type;

  new_event->time = event->time;

  (event->sensor) ? new_event->sensor = g_strdup(event->sensor) : NULL;
  (event->device) ? new_event->device = g_strdup(event->device) : NULL;
  (event->interface) ? new_event->interface = g_strdup(event->interface) : NULL;

  new_event->plugin_id = event->plugin_id;
  new_event->plugin_sid = event->plugin_sid;

  new_event->plugin = event->plugin;
  new_event->pluginsid = event->pluginsid;
  (event->plugin_sid_name) ? new_event->plugin_sid_name = g_strdup(
      event->plugin_sid_name) : NULL;

  new_event->protocol = event->protocol;
  (event->src_ia) ? new_event->src_ia = gnet_inetaddr_clone(event->src_ia)
      : NULL;
  (event->dst_ia) ? new_event->dst_ia = gnet_inetaddr_clone(event->dst_ia)
      : NULL;
  new_event->src_port = event->src_port;
  new_event->dst_port = event->dst_port;

  new_event->condition = event->condition;
  (event->value) ? new_event->value = g_strdup(event->value) : NULL;
  new_event->interval = event->interval;

  new_event->alarm = event->alarm;
  new_event->priority = event->priority;
  new_event->reliability = event->reliability;
  new_event->asset_src = event->asset_src;
  new_event->asset_dst = event->asset_dst;
  new_event->risk_c = event->risk_c;
  new_event->risk_a = event->risk_a;

  if (event->role)
    {
      new_event->role = g_new0(SimRole, 1);
      new_event->role->correlate = event->role->correlate;
      new_event->role->cross_correlate = event->role->cross_correlate;
      new_event->role->store = event->role->store;
      new_event->role->qualify = event->role->qualify;
      new_event->role->resend_event = event->role->resend_event;
      new_event->role->resend_alarm = event->role->resend_alarm;
    }

  new_event->log = g_strdup (event->log);
  new_event->rep_act_src = g_strdup (event->rep_act_src);
  new_event->rep_act_dst = g_strdup (event->rep_act_dst);
  new_event->rep_prio_src = event->rep_prio_src;
  new_event->rep_prio_dst = event->rep_prio_dst;
  new_event->rep_rel_src = event->rep_rel_src;
  new_event->rep_rel_dst = event->rep_rel_dst;

  for (i = 0; i < N_TEXT_FIELDS; i++)
    {
      if (event->textfields[i] != NULL)
        new_event->textfields[i] = g_strdup(event->textfields[i]);
      else
        new_event->textfields[i] = NULL;
    }
  /*
   (event->filename) ? new_event->filename = g_strdup (event->filename) : NULL;
   (event->username) ? new_event->username = g_strdup (event->username) : NULL;
   (event->password) ? new_event->password = g_strdup (event->password) : NULL;
   (event->userdata1) ? new_event->userdata1 = g_strdup (event->userdata1) : NULL;
   (event->userdata2) ? new_event->userdata2 = g_strdup (event->userdata2) : NULL;
   (event->userdata3) ? new_event->userdata3 = g_strdup (event->userdata3) : NULL;
   (event->userdata4) ? new_event->userdata4 = g_strdup (event->userdata4) : NULL;
   (event->userdata5) ? new_event->userdata5 = g_strdup (event->userdata5) : NULL;
   (event->userdata6) ? new_event->userdata6 = g_strdup (event->userdata6) : NULL;
   (event->userdata7) ? new_event->userdata7 = g_strdup (event->userdata7) : NULL;
   (event->userdata8) ? new_event->userdata8 = g_strdup (event->userdata8) : NULL;
   (event->userdata9) ? new_event->userdata9 = g_strdup (event->userdata9) : NULL;
   */

  (event->buffer) ? new_event->buffer = g_strdup(event->buffer) : NULL;
  uuid_generate(new_event->uuid);

  return new_event;
}