void proto_reg_handoff_gsm_ipa(void)
{
    static gboolean ipa_initialized = FALSE;
    static range_t *ipa_tcp_ports, *ipa_udp_ports;

    if (!ipa_initialized) {
        sub_handles[SUB_RSL] = find_dissector("gsm_abis_rsl");
        sub_handles[SUB_OML] = find_dissector("gsm_abis_oml");
        sub_handles[SUB_SCCP] = find_dissector("sccp");
        sub_handles[SUB_MGCP] = find_dissector("mgcp");
        sub_handles[SUB_DATA] = find_dissector("data");

        ipa_handle = create_dissector_handle(dissect_ipa, proto_ipa);
        ipa_initialized = TRUE;
    } else {
        range_foreach(ipa_tcp_ports, ipa_tcp_delete_callback);
        g_free(ipa_tcp_ports);
        range_foreach(ipa_udp_ports, ipa_udp_delete_callback);
        g_free(ipa_udp_ports);
    }

    ipa_tcp_ports = range_copy(global_ipa_tcp_ports);
    ipa_udp_ports = range_copy(global_ipa_udp_ports);

    range_foreach(ipa_tcp_ports, ipa_tcp_add_callback);
    range_foreach(ipa_udp_ports, ipa_udp_add_callback);
}
void proto_reg_handoff_inap(void) {

    static gboolean inap_prefs_initialized = FALSE;
    static range_t *ssn_range;

    if (!inap_prefs_initialized) {
	    inap_prefs_initialized = TRUE;
	    inap_handle = find_dissector("inap");
		data_handle = find_dissector("data");
	    oid_add_from_string("Core-INAP-CS1-Codes","0.4.0.1.1.0.3.0");
		oid_add_from_string("iso(1) identified-organization(3) icd-ecma(12) member-company(2) 1107 oen(3) inap(3) extensions(2)","1.3.12.2.1107.3.3.2");
		oid_add_from_string("alcatel(1006)","1.3.12.2.1006.64");
		oid_add_from_string("Siemens (1107)","1.3.12.2.1107");
		oid_add_from_string("iso(1) member-body(2) gb(826) national(0) ericsson(1249) inDomain(51) inNetwork(1) inNetworkcapabilitySet1plus(1) ","1.2.826.0.1249.51.1.1");
    }
    else {
	    range_foreach(ssn_range, range_delete_callback);
            g_free(ssn_range);
    }

    ssn_range = range_copy(global_ssn_range);

    range_foreach(ssn_range, range_add_callback);

}
static void nasdaq_soup_prefs(void)
{
    range_foreach(nasdaq_soup_tcp_range, range_delete_nasdaq_soup_tcp_callback);
    g_free(nasdaq_soup_tcp_range);
    nasdaq_soup_tcp_range = range_copy(global_nasdaq_soup_tcp_range);
    range_foreach(nasdaq_soup_tcp_range, range_add_nasdaq_soup_tcp_callback);
}
Esempio n. 4
0
static void
gopher_prefs_apply(void) {
    range_foreach(gopher_tcp_range, range_delete_gopher_tcp_callback);
    g_free(gopher_tcp_range);
    gopher_tcp_range = range_copy(global_gopher_tcp_range);
    range_foreach(gopher_tcp_range, range_add_gopher_tcp_callback);
}
static void init_tcap(void) {
    if (ssn_range) {
        range_foreach(ssn_range, range_delete_callback);
        g_free(ssn_range);
    }

    ssn_range = range_copy(global_ssn_range);
    range_foreach(ssn_range, range_add_callback);
    tcapsrt_init_routine();
}
Esempio n. 6
0
Unit::~Unit() {
  if (debug) {
    // poison released bytecode
    memset(m_bc, 0xff, m_bclen);
  }
  free(m_bc);
  free(m_bc_meta);

  // Delete all Func's.
  range_foreach(mutableFuncs(), boost::checked_deleter<Func>());

  // ExecutionContext and the TC may retain references to Class'es, so
  // it is possible for Class'es to outlive their Unit.
  for (int i = m_preClasses.size(); i--; ) {
    PreClass* pcls = m_preClasses[i].get();
    Class * const* clsh = pcls->namedEntity()->clsList();
    if (clsh) {
      Class *cls = *clsh;
      while (cls) {
        Class* cur = cls;
        cls = cls->m_nextClass;
        if (cur->preClass() == pcls) {
          if (!cur->decAtomicCount()) {
            cur->atomicRelease();
          }
        }
      }
    }
  }

  if (!RuntimeOption::RepoAuthoritative && m_initialMergeDone) {
    Transl::unmergePreConsts(m_preConsts, this);
  }
}
/*--- proto_reg_handoff_pcap ---------------------------------------*/
void
proto_reg_handoff_pcap(void)
{
    static gboolean prefs_initialized = FALSE;
    static range_t *ssn_range;

    if (! prefs_initialized) {
        pcap_handle = find_dissector("pcap");
        sccp_ssn_table = find_dissector_table("sccp.ssn");
        prefs_initialized = TRUE;
#include "packet-pcap-dis-tab.c"
    } else {
        range_foreach(ssn_range, range_delete_callback);
        g_free(ssn_range);
    }
    ssn_range = range_copy(global_ssn_range);
    range_foreach(ssn_range, range_add_callback);
}
Esempio n. 8
0
void
proto_reg_handoff_nsip(void) {
  static gboolean nsip_prefs_initialized = FALSE;
  static range_t *nsip_udp_port_range;

  if (!nsip_prefs_initialized) {
    nsip_handle = find_dissector("gprs_ns");
    bssgp_handle = find_dissector("bssgp");
    nsip_prefs_initialized = TRUE;
  } else {
    range_foreach(nsip_udp_port_range, range_delete_callback);
    g_free(nsip_udp_port_range);
  }

  nsip_udp_port_range = range_copy(global_nsip_udp_port_range);

  range_foreach(nsip_udp_port_range, range_add_callback);

}
void proto_reg_handoff_inap(void) {

    static gboolean inap_prefs_initialized = FALSE;
    static range_t *ssn_range;

    if (!inap_prefs_initialized) {
        inap_prefs_initialized = TRUE;
        inap_handle = find_dissector("inap");
        oid_add_from_string("Core-INAP-CS1-Codes","0.4.0.1.1.0.3.0");
    }
    else {
        range_foreach(ssn_range, range_delete_callback);
        g_free(ssn_range);
    }

    ssn_range = range_copy(global_ssn_range);

    range_foreach(ssn_range, range_add_callback);

}