コード例 #1
0
ファイル: irssi.c プロジェクト: svn2github/irssi
void noui_init(void)
{
	static struct poptOption options[] = {
		POPT_AUTOHELP
		{ "load", 'l', POPT_ARG_STRING, &autoload_module, 0, "Module to load (default = bot)", "MODULE" },
		{ NULL, '\0', 0, NULL }
	};

	autoload_module = NULL;
	args_register(options);

	irssi_gui = IRSSI_GUI_NONE;
	core_init();
	irc_init();

	module_register("core", "fe-none");

	signal_add("reload", (SIGNAL_FUNC) sig_reload);
	signal_add("gui exit", (SIGNAL_FUNC) sig_exit);

#ifdef HAVE_STATIC_PERL
        perl_core_init();
#endif

	signal_emit("irssi init finished", 0);
}
コード例 #2
0
ファイル: pycore.c プロジェクト: irssi-import/irssi-python
void python_init(void)
{
    Py_InitializeEx(0);

    pysignals_init();
    pystatusbar_init();
    if (!pyloader_init() || !pymodule_init() || !factory_init() || !pythemes_init()) 
    {
        printtext(NULL, NULL, MSGLEVEL_CLIENTERROR, "Failed to load Python");
        return;
    }
    pyconstants_init();

    /*PyImport_ImportModule("irssi_startup");*/
    /* Install the custom output handlers, import hook and reload function */
    /* XXX: handle import error */
    PyRun_SimpleString(
            "import irssi_startup\n"
    );

    pyloader_auto_load();
    
    /* assert(signal(SIGINT, intr_catch) != SIG_ERR); */
    
    command_bind("py", NULL, (SIGNAL_FUNC) cmd_default);
    command_bind("py load", NULL, (SIGNAL_FUNC) cmd_load);
    command_bind("py unload", NULL, (SIGNAL_FUNC) cmd_unload);
    command_bind("py list", NULL, (SIGNAL_FUNC) cmd_list);
    command_bind("py exec", NULL, (SIGNAL_FUNC) cmd_exec);
    module_register(MODULE_NAME, "core");
}
コード例 #3
0
ファイル: melodik.c プロジェクト: CiaranG/ZXdroid
int
melodik_init( void )
{
  module_register( &melodik_module_info );

  return 0;
}
コード例 #4
0
/**
 * @brief This function initializes video compression.
 *
 * This function wrapps the call of compress_init_real().
 * @param[in] parent        parent module
 * @param[in] config_string configuration (in format <driver>:<options>)
 * @param[out] state        created state
 * @retval     0            if state created sucessfully
 * @retval    <0            if error occured
 * @retval    >0            finished successfully, no state created (eg. displayed help)
 */
int compress_init(struct module *parent, char *config_string, struct compress_state **state) {
    struct compress_state_real *s;

    compress_state_proxy *proxy;
    proxy = malloc(sizeof(compress_state_proxy));

    module_init_default(&proxy->mod);
    proxy->mod.cls = MODULE_CLASS_COMPRESS;
    proxy->mod.priv_data = proxy;
    proxy->mod.deleter = compress_done;
    proxy->mod.msg_callback = compress_change_callback;

    int ret = compress_init_real(&proxy->mod, config_string, &s);
    if(ret == 0) {
        proxy->ptr = s;

        platform_spin_init(&proxy->spin);
        *state = proxy;
        module_register(&proxy->mod, parent);
    } else {
        free(proxy);
    }

    return ret;
}
コード例 #5
0
ファイル: zxcf.c プロジェクト: CiaranG/ZXdroid
int
zxcf_init( void )
{
  int error;

  last_memctl = 0x00;
                                
  zxcf_idechn = libspectrum_ide_alloc( LIBSPECTRUM_IDE_DATA16 );

  ui_menu_activate( UI_MENU_ITEM_MEDIA_IDE_ZXCF_EJECT, 0 );

  if( settings_current.zxcf_pri_file ) {
    error = libspectrum_ide_insert( zxcf_idechn, LIBSPECTRUM_IDE_MASTER,
				    settings_current.zxcf_pri_file );
    if( error ) return error;
    ui_menu_activate( UI_MENU_ITEM_MEDIA_IDE_ZXCF_EJECT, 1 );
  }

  module_register( &zxcf_module_info );

  if( periph_register_paging_events( event_type_string, &page_event,
				     &unpage_event ) )
    return 1;

  return 0;
}
コード例 #6
0
void
text_xmpp_init(void)
{
	text_xep_init();

	module_register("xmpp", "text");
}
コード例 #7
0
ファイル: wire.c プロジェクト: Protospace/protobot
char *wire_start(Function *global_funcs)
{
  p_tcl_bind_list H_temp;

  global = global_funcs;

  module_register(MODULE_NAME, wire_table, 2, 0);
  if (!module_depend(MODULE_NAME, "eggdrop", 106, 0)) {
    module_undepend(MODULE_NAME);
    return "This module requires Eggdrop 1.6.0 or later.";
  }

  if (!(encryption_funcs = module_depend(MODULE_NAME, "encryption", 2, 1))) {
    module_undepend(MODULE_NAME);
    return "This module requires an encryption module.";
  }

  add_help_reference("wire.help");
  add_builtins(H_dcc, wire_dcc);
  H_temp = find_bind_table("filt");
  add_builtins(H_filt, wire_filt);
  H_temp = find_bind_table("chof");
  add_builtins(H_chof, wire_chof);
  wirelist = NULL;
  add_lang_section("wire");
  return NULL;
}
コード例 #8
0
ファイル: ctcp.c プロジェクト: asterIRC/kaosdal
char *ctcp_start(Function *global_funcs)
{
  global = global_funcs;

  module_register(MODULE_NAME, ctcp_table, 1, 1);
  if (!module_depend(MODULE_NAME, "eggdrop", 108, 0)) {
    module_undepend(MODULE_NAME);
    return "This module requires Eggdrop 1.8.0 or later.";
  }
  if (!(server_funcs = module_depend(MODULE_NAME, "server", 1, 0))) {
    module_undepend(MODULE_NAME);
    return "This module requires server module 1.0 or later.";
  }
  add_tcl_strings(mystrings);
  add_tcl_ints(myints);
  add_builtins(H_ctcp, myctcp);
  add_help_reference("ctcp.help");
  if (!ctcp_version[0]) {
    strncpy(ctcp_version, ver, 120);
    ctcp_version[120] = 0;
  }
  if (!ctcp_finger[0]) {
    strncpy(ctcp_finger, ver, 120);
    ctcp_finger[120] = 0;
  }
  if (!ctcp_userinfo[0]) {
    strncpy(ctcp_userinfo, ver, 120);
    ctcp_userinfo[120] = 0;
  }
  return NULL;
}
コード例 #9
0
ファイル: fe-icb.c プロジェクト: jperkin/irssi-icb
void fe_icb_init(void)
{
	theme_register(fecommon_icb_formats);

        signal_add("icb event error", (SIGNAL_FUNC) event_error);
        signal_add("icb event important", (SIGNAL_FUNC) event_important);
        signal_add("icb event beep", (SIGNAL_FUNC) event_beep);
        signal_add("icb event open", (SIGNAL_FUNC) event_open);
        signal_add("icb event personal", (SIGNAL_FUNC) event_personal);
        signal_add("icb cmdout co", (SIGNAL_FUNC) cmdout_co);
        signal_add("icb cmdout wl", (SIGNAL_FUNC) cmdout_wl);
        signal_add("default icb cmdout", (SIGNAL_FUNC) cmdout_default);
        signal_add("icb status arrive", (SIGNAL_FUNC) status_arrive);
        signal_add("icb status depart", (SIGNAL_FUNC) status_depart);
        signal_add("icb status sign-on", (SIGNAL_FUNC) status_signon);
        signal_add("icb status sign-off", (SIGNAL_FUNC) status_signoff);
        signal_add("icb status status", (SIGNAL_FUNC) status_join);
        signal_add("icb status topic", (SIGNAL_FUNC) status_topic);
        signal_add("icb status name", (SIGNAL_FUNC) status_name);
        signal_add("icb status pass", (SIGNAL_FUNC) status_pass);
        signal_add("default icb status", (SIGNAL_FUNC) status_default);

	signal_add("server add fill", (SIGNAL_FUNC) sig_server_add_fill);
	command_set_options("server add", "-icbnet");

	module_register("icb", "fe");
}
コード例 #10
0
ファイル: filesys.c プロジェクト: Abysim/NyanLion
char *filesys_start(Function *global_funcs)
{
  global = global_funcs;

  module_register(MODULE_NAME, filesys_table, 2, 0);
  if (!module_depend(MODULE_NAME, "eggdrop", 106, 0)) {
    module_undepend(MODULE_NAME);
    return "This module requires Eggdrop 1.6.0 or later.";
  }
  if (!(transfer_funcs = module_depend(MODULE_NAME, "transfer", 2, 0))) {
    module_undepend(MODULE_NAME);
    return "This module requires transfer module 2.0 or later.";
  }
  add_tcl_commands(mytcls);
  add_tcl_strings(mystrings);
  add_tcl_ints(myints);
  H_fil = add_bind_table("fil", 0, builtin_fil);
  add_builtins(H_dcc, mydcc);
  add_builtins(H_fil, myfiles);
  add_builtins(H_load, myload);
  add_help_reference("filesys.help");
  init_server_ctcps(0);
  my_memcpy(&USERENTRY_DCCDIR, &USERENTRY_INFO,
            sizeof(struct user_entry_type) - sizeof(char *));

  USERENTRY_DCCDIR.got_share = 0;       /* We dont want it shared tho */
  add_entry_type(&USERENTRY_DCCDIR);
  DCC_FILES_PASS.timeout_val = &password_timeout;
  add_lang_section("filesys");
  return NULL;
}
コード例 #11
0
static int
zxcf_init( void *context )
{
  int error, i;

  last_memctl = 0x00;
                                
  zxcf_idechn = libspectrum_ide_alloc( LIBSPECTRUM_IDE_DATA16 );

  ui_menu_activate( UI_MENU_ITEM_MEDIA_IDE_ZXCF_EJECT, 0 );

  if( settings_current.zxcf_pri_file ) {
    error = libspectrum_ide_insert( zxcf_idechn, LIBSPECTRUM_IDE_MASTER,
				    settings_current.zxcf_pri_file );
    if( error ) return error;
    ui_menu_activate( UI_MENU_ITEM_MEDIA_IDE_ZXCF_EJECT, 1 );
  }

  module_register( &zxcf_module_info );

  zxcf_memory_source = memory_source_register( "ZXCF" );
  for( i = 0; i < MEMORY_PAGES_IN_16K; i++ )
    zxcf_memory_map_romcs[i].source = zxcf_memory_source;

  periph_register( PERIPH_TYPE_ZXCF, &zxcf_periph );
  periph_register_paging_events( event_type_string, &page_event,
                                 &unpage_event );

  return 0;
}
コード例 #12
0
ファイル: dcc.c プロジェクト: Manishearth/irssi
void irc_dcc_init(void)
{
	dcc_conns = NULL;
	dcc_timeouttag = g_timeout_add(1000, (GSourceFunc) dcc_timeout_func, NULL);

	settings_add_str("dcc", "dcc_port", "0");
	settings_add_time("dcc", "dcc_timeout", "5min");
	settings_add_str("dcc", "dcc_own_ip", "");

	signal_add("event connected", (SIGNAL_FUNC) sig_connected);
	signal_add("server disconnected", (SIGNAL_FUNC) sig_server_disconnected);
	signal_add("server nick changed", (SIGNAL_FUNC) sig_server_nick_changed);
	signal_add("ctcp msg", (SIGNAL_FUNC) ctcp_msg);
	signal_add("ctcp reply", (SIGNAL_FUNC) ctcp_reply);
	signal_add("ctcp msg dcc", (SIGNAL_FUNC) ctcp_msg_dcc);
	signal_add("ctcp reply dcc", (SIGNAL_FUNC) ctcp_reply_dcc);
	signal_add("ctcp reply dcc reject", (SIGNAL_FUNC) ctcp_reply_dcc_reject);
	signal_add("event 401", (SIGNAL_FUNC) event_no_such_nick);
	command_bind("dcc", NULL, (SIGNAL_FUNC) cmd_dcc);
	command_bind("dcc close", NULL, (SIGNAL_FUNC) cmd_dcc_close);

	dcc_chat_init();
	dcc_get_init();
	dcc_send_init();
	dcc_resume_init();
	dcc_autoget_init();
	dcc_server_init();

	settings_check();
	module_register("dcc", "irc");
}
コード例 #13
0
ファイル: notes.c プロジェクト: ArNz8o8/Fr3shness
char *notes_start(Function *global_funcs)
{

  global = global_funcs;

  notefile[0] = 0;
  module_register(MODULE_NAME, notes_table, 2, 2);
  if (!module_depend(MODULE_NAME, "eggdrop", 108, 0)) {
    module_undepend(MODULE_NAME);
    return "This module requires Eggdrop 1.8.0 or later.";
  }
  add_hook(HOOK_HOURLY, (Function) notes_hourly);
  add_hook(HOOK_MATCH_NOTEREJ, (Function) match_note_ignore);
  add_tcl_ints(notes_ints);
  add_tcl_strings(notes_strings);
  add_tcl_commands(notes_tcls);
  add_builtins(H_dcc, notes_cmds);
  add_builtins(H_chon, notes_chon);
  add_builtins(H_away, notes_away);
  add_builtins(H_nkch, notes_nkch);
  add_builtins(H_load, notes_load);
  add_help_reference("notes.help");
  add_lang_section("notes");
  notes_server_setup(0);
  notes_irc_setup(0);
  my_memcpy(&USERENTRY_FWD, &USERENTRY_INFO, sizeof(void *) * 12);
  add_entry_type(&USERENTRY_FWD);
  return NULL;
}
コード例 #14
0
ファイル: kern_module.c プロジェクト: kusumi/DragonFlyBSD
void
module_register_init(const void *arg)
{
    const moduledata_t* data = (const moduledata_t*) arg;
    int error;
    module_t mod;

    mod = module_lookupbyname(data->name);
    if (mod == NULL) {
#if 0
	panic("module_register_init: module named %s not found", data->name);
#else
	/* temporary kludge until kernel `file' attachment registers modules */
	error = module_register(data, linker_kernel_file);
	if (error)
	    panic("module_register_init: register of module failed! %d", error);
	mod = module_lookupbyname(data->name);
	if (mod == NULL)
	    panic("module_register_init: module STILL not found!");
#endif
    }
    error = MOD_EVENT(mod, MOD_LOAD);
    if (error) {
	module_unload(mod);	/* ignore error */
	module_release(mod);
	kprintf("module_register_init: MOD_LOAD (%s, %lx, %p) error %d\n",
	       data->name, (u_long)(uintfptr_t)data->evhand, data->priv, error);
    }
}
コード例 #15
0
ファイル: dns.c プロジェクト: Protospace/protobot
char *dns_start(Function *global_funcs)
{
  int idx;

  global = global_funcs;

  module_register(MODULE_NAME, dns_table, 1, 0);
  if (!module_depend(MODULE_NAME, "eggdrop", 106, 0)) {
    module_undepend(MODULE_NAME);
    return "This module requires Eggdrop 1.6.0 or later.";
  }

  idx = new_dcc(&DCC_DNS, 0);
  if (idx < 0)
    return "NO MORE DCC CONNECTIONS -- Can't create DNS socket.";
  if (!init_dns_core()) {
    lostdcc(idx);
    return "DNS initialisation failed.";
  }
  dcc[idx].sock = resfd;
  dcc[idx].timeval = now;
  strcpy(dcc[idx].nick, "(dns)");

  add_hook(HOOK_SECONDLY, (Function) dns_check_expires);
  add_hook(HOOK_DNS_HOSTBYIP, (Function) dns_lookup);
  add_hook(HOOK_DNS_IPBYHOST, (Function) dns_forward);
  return NULL;
}
コード例 #16
0
ファイル: filesys.c プロジェクト: Estella/eggdrop-1.4
char *filesys_start(Function * global_funcs)
{
  global = global_funcs;

  Context;
  dccdir[0] = 0;
  dccin[0] = 0;
  filedb_path[0] = 0;
  module_register(MODULE_NAME, filesys_table, 2, 0);
  if (!(transfer_funcs = module_depend(MODULE_NAME, "transfer", 2, 0)))
    return "You need the transfer module to user the file system.";
  if (!module_depend(MODULE_NAME, "eggdrop", 104, 0))
    return "You need at least eggdrop1.4.0 to run this module.";
  add_tcl_commands(mytcls);
  add_tcl_strings(mystrings);
  add_tcl_ints(myints);
  H_fil = add_bind_table("fil", 0, builtin_fil);
  add_builtins(H_dcc, mydcc);
  add_builtins(H_fil, myfiles);
  add_builtins(H_load, myload);
  add_help_reference("filesys.help");
  init_server_ctcps(0);
  my_memcpy(&USERENTRY_DCCDIR, &USERENTRY_INFO,
	    sizeof(struct user_entry_type) - sizeof(char *));

  USERENTRY_DCCDIR.got_share = 0;	/* we dont want it shared tho */
  add_entry_type(&USERENTRY_DCCDIR);
  DCC_FILES_PASS.timeout_val = &password_timeout;
  add_lang_section("filesys");
  return NULL;
}
コード例 #17
0
ファイル: kempmouse.c プロジェクト: CiaranG/ZXdroid
int
kempmouse_init( void )
{
  module_register( &kempmouse_module_info );

  return 0;
}
コード例 #18
0
ファイル: sample.c プロジェクト: Estella/eggdrop-1.7
/* This function is called as the module is loaded. */
char *sample_start(Function *global_funcs)
{
  /* Assign the global function table. After this point, you can use all
   * normal functions defined in src/mod/modules.h. */
  global = global_funcs;

  /* Register the module. */
  module_register(MODULE_NAME, sample_table, 2, 0);
  /*                                            ^--- minor module version
   *                                         ^------ major module version
   *                           ^-------------------- module function table
   *              ^--------------------------------- module name
   */

  /* Depend on the Eggdrop core, version 1.7.0 or later. */
  if (!module_depend(MODULE_NAME, "eggdrop", 107, 0)) {
    module_undepend(MODULE_NAME);
    return "This module requires Eggdrop 1.7.0 or later.";
  }

  /* Add command table to bind list H_dcc, responsible for DCC/partyline
   * commands. Currently we only add one command, 'sample'. */
  add_builtins(H_dcc, mydcc);

  /* Return NULL unless we're passing an error message. */
  return NULL;
}
コード例 #19
0
ファイル: xmpp-core.c プロジェクト: edmondas/irssi-xmpp
void
xmpp_core_init(void)
{
	CHAT_PROTOCOL_REC *rec;

	rec = g_new0(CHAT_PROTOCOL_REC, 1);
	rec->name = XMPP_PROTOCOL_NAME;
	rec->fullname = "XMPP, Extensible messaging and presence protocol";
	rec->chatnet = "xmppnet";
	rec->case_insensitive = FALSE;
	rec->create_chatnet = create_chatnet;
	rec->create_server_setup = create_server_setup;
	rec->create_server_connect = create_server_connect;
	rec->create_channel_setup = create_channel_setup;
	rec->destroy_server_connect =
	    (void (*)(SERVER_CONNECT_REC *))destroy_server_connect;
	rec->server_init_connect = xmpp_server_init_connect;
	rec->server_connect = (void (*)(SERVER_REC *))xmpp_server_connect;
	rec->channel_create = channel_create;
	rec->query_create = xmpp_query_create;
	chat_protocol_register(rec);
	g_free(rec);

	xmpp_commands_init();
	xmpp_servers_init();
	xmpp_servers_reconnect_init();
	xmpp_settings_init();
	protocol_init();
	rosters_init();
	stanzas_init();
	xep_init();

	module_register("xmpp", "core");
}
コード例 #20
0
ファイル: fe-common-irc.c プロジェクト: Liaf/irssi
void fe_common_irc_init(void)
{
	settings_add_bool("lookandfeel", "show_away_once", TRUE);

	theme_register(fecommon_irc_formats);

	fe_irc_channels_init();
	fe_irc_queries_init();
	fe_irc_messages_init();
	fe_irc_commands_init();
	fe_ircnet_init();
	fe_irc_server_init();
	fe_ctcp_init();
	fe_events_init();
	fe_events_numeric_init();
	fe_modes_init();
	fe_netsplit_init();
	fe_netjoin_init();
        fe_whois_init();
	fe_sasl_init();
        irc_completion_init();

	settings_check();
	module_register("core", "fe-irc");

	fe_irc_modules_init();
}
コード例 #21
0
ファイル: FiSH.c プロジェクト: kelek-/FiSH-irssi
void fish_init(void)
{
	char iniPasswordHash[50];

        printtext(NULL, NULL, MSGLEVEL_CLIENTNOTICE,
		"FiSH " FISH_VERSION " - encryption module for irssi loaded!\n"
                 "URL: https://github.com/falsovsky/FiSH-irssi\n"
                 "Try /helpfish or /fishhelp for a short command overview");

	command_bind("fishhelp", NULL, (SIGNAL_FUNC) cmd_helpfish);
	command_bind("helpfish", NULL, (SIGNAL_FUNC) cmd_helpfish);
	command_bind("fishlogin", NULL, (SIGNAL_FUNC) cmd_fishlogin);
 
	if (DH1080_Init() == FALSE)
		return;

        get_ini_password_hash(sizeof(iniPasswordHash), iniPasswordHash);
 
        if (strlen(iniPasswordHash) != 43) {
 		strcpy(iniKey, default_iniKey);
		printtext(NULL, NULL, MSGLEVEL_CRAP,
			  "\002FiSH:\002 Using default password to decrypt blow.ini... Try /setinipw to set a custom password.");
 
                setup_fish();
        } else {
		printtext(NULL, NULL, MSGLEVEL_CRAP,
				"\002FiSH:\002 Current blow.ini is password protected.");
		cmd_fishlogin(NULL, NULL, NULL);
        }

	module_register("fish", "core");
}
コード例 #22
0
ファイル: compress.c プロジェクト: Abysim/NyanLion
char *compress_start(Function *global_funcs)
{
  global = global_funcs;

  compressed_files = 0;
  uncompressed_files = 0;
  share_compressed = 0;
  compress_level = 9;

  module_register(MODULE_NAME, compress_table, 1, 1);
  if (!module_depend(MODULE_NAME, "eggdrop", 106, 0)) {
    module_undepend(MODULE_NAME);
    return "This module requires Eggdrop 1.6.0 or later.";
  }

  share_funcs = module_depend(MODULE_NAME, "share", 2, 3);
  if (!share_funcs) {
    module_undepend(MODULE_NAME);
    return "This module requires share module 2.3 or later.";
  }

  uff_addtable(compress_uff_table);
  add_tcl_ints(my_tcl_ints);
  add_tcl_commands(my_tcl_cmds);
  add_help_reference("compress.help");
  return NULL;
}
コード例 #23
0
ファイル: robustirc.c プロジェクト: robustirc/irssi-robustirc
void robustirc_core_init(void) {
    CHAT_PROTOCOL_REC *rec;
    rec = g_new0(CHAT_PROTOCOL_REC, 1);
    rec->name = ROBUSTIRC_PROTOCOL_NAME;
    rec->fullname = "RobustIRC";
    rec->chatnet = "robustirc";
    rec->create_chatnet = create_chatnet;
    rec->create_server_setup = create_server_setup;
    rec->create_server_connect = create_server_connect;
    rec->create_channel_setup = create_channel_setup;
    rec->destroy_server_connect =
        (void (*)(SERVER_CONNECT_REC *))destroy_server_connect;
    rec->server_init_connect = robustirc_server_init_connect;
    rec->server_connect = (void (*)(SERVER_REC *))robustirc_server_connect;
    rec->channel_create =
        (CHANNEL_REC * (*)(SERVER_REC *, const char *,
                           const char *, int))
        irc_channel_create;

    rec->query_create = irc_query_create;
    chat_protocol_register(rec);
    g_free(rec);

    command_set_options("connect", "robustirc");

    signal_add_last("server connect copy", (SIGNAL_FUNC)robustirc_server_connect_copy);
    signal_add_last("server disconnected", (SIGNAL_FUNC)robustirc_server_disconnected);

    connrecs = g_hash_table_new(NULL, NULL);

    robustsession_init();

    module_register(MODULE_NAME, "core");
}
コード例 #24
0
void
fe_xmpp_init(void)
{
	theme_register(fecommon_xmpp_formats);

	signal_add("xmpp server status", sig_server_status);
	signal_add("server add fill", sig_server_add_fill);

	fe_xmpp_messages_init();
	fe_xmpp_queries_init();
	fe_xmpp_status_init();
	fe_xmpp_windows_init();
	fe_rosters_init();
	fe_stanzas_init();
	xmpp_completion_init();
	xmpp_formats_init();
	fe_xep_init();

	module_register("xmpp", "fe");

	/* load irssi-xmpp's fe-text submodule */
	if (irssi_gui == IRSSI_GUI_TEXT) {
		char *cmd_line = g_strconcat(settings_get_str("cmdchars"),
		    "load xmpp text", NULL);
		signal_emit("send command", 1, cmd_line);
		g_free(cmd_line);
	}
}
コード例 #25
0
ファイル: kern_linker.c プロジェクト: runsisi/ufreebsdtcp
static int
linker_file_register_modules(linker_file_t lf)
{
	struct mod_metadata **start, **stop, **mdp;
	const moduledata_t *moddata;
	int first_error, error;

	KLD_DPF(FILE, ("linker_file_register_modules: registering modules"
	    " in %s\n", lf->filename));

	start = SET_BEGIN(modmetadata_set);
	stop = SET_LIMIT(modmetadata_set);

	first_error = 0;
	for (mdp = start; mdp < stop; mdp++) {
		if ((*mdp)->md_type != MDT_MODULE)
			continue;
		moddata = (*mdp)->md_data;
		KLD_DPF(FILE, ("Registering module %s in %s\n",
		    moddata->name, lf->filename));
		error = module_register(moddata, lf);
		if (error) {
			printf("Module %s failed to register: %d\n",
			    moddata->name, error);
			if (first_error == 0)
				first_error = error;
		}
	}
	return (first_error);
}
コード例 #26
0
ファイル: icb-core.c プロジェクト: irssi-import/modules
void icb_core_init(void)
{
	CHAT_PROTOCOL_REC *rec;

	rec = g_new0(CHAT_PROTOCOL_REC, 1);
	rec->name = "ICB";
	rec->fullname = "Internet Citizen's Band";
	rec->chatnet = "icbnet";

        rec->case_insensitive = TRUE;

	rec->create_chatnet = create_chatnet;
        rec->create_server_setup = create_server_setup;
        rec->create_channel_setup = create_channel_setup;
	rec->create_server_connect = create_server_connect;
	rec->destroy_server_connect = destroy_server_connect;

	rec->server_init_connect = icb_server_init_connect;
	rec->server_connect = icb_server_connect;
	rec->channel_create = _channel_create;
	rec->query_create = icb_query_create;

	chat_protocol_register(rec);
        g_free(rec);

	icb_servers_init();
	icb_servers_reconnect_init();
        icb_channels_init();
	icb_protocol_init();
	icb_commands_init();
        icb_session_init();

	module_register("icb", "core");
}
コード例 #27
0
ファイル: divide.c プロジェクト: twinaphex/sdcell
int
divide_init( void )
{
  int error, i;

  divide_idechn0 = libspectrum_ide_alloc( LIBSPECTRUM_IDE_DATA16 );
  divide_idechn1 = libspectrum_ide_alloc( LIBSPECTRUM_IDE_DATA16 );
  
  ui_menu_activate( UI_MENU_ITEM_MEDIA_IDE_DIVIDE_MASTER_EJECT, 0 );
  ui_menu_activate( UI_MENU_ITEM_MEDIA_IDE_DIVIDE_SLAVE_EJECT, 0 );

  if( settings_current.divide_master_file ) {
    error = libspectrum_ide_insert( divide_idechn0, LIBSPECTRUM_IDE_MASTER,
				    settings_current.divide_master_file );
    if( error ) return error;
    ui_menu_activate( UI_MENU_ITEM_MEDIA_IDE_DIVIDE_MASTER_EJECT, 1 );
  }

  if( settings_current.divide_slave_file ) {
    error = libspectrum_ide_insert( divide_idechn0, LIBSPECTRUM_IDE_SLAVE,
				    settings_current.divide_slave_file );
    if( error ) return error;
    ui_menu_activate( UI_MENU_ITEM_MEDIA_IDE_DIVIDE_SLAVE_EJECT, 1 );
  }

  module_register( &divide_module_info );
  for( i = 0; i < 2; i++ ) divide_memory_map_romcs[i].bank = MEMORY_BANK_ROMCS;

  if( periph_register_paging_events( event_type_string, &page_event,
				     &unpage_event ) )
    return 1;

  return 0;
}
コード例 #28
0
void charChecker_init(void) {
	charChecker_module.name = name;
	charChecker_module.enable = charChecker_enable;
	charChecker_module.disable = charChecker_disable;
	charChecker_module.event = charChecker_event;

	module_register(&charChecker_module);
}
コード例 #29
0
static int
scld_init( void *context )
{
  module_register( &scld_module_info );
  periph_register( PERIPH_TYPE_SCLD, &scld_periph );

  return 0;
}
コード例 #30
0
ファイル: printer.c プロジェクト: matthewbauer/fuse-libretro
static void printer_zxp_init(void)
{
zxpstylus=zxpspeed=zxpheight=zxpnewspeed=zxplineofchar=0;
zxppixel=-1;
module_register(&printer_zxp_module_info);
periph_register(PERIPH_TYPE_ZXPRINTER,&printer_zxp_periph);
periph_register(PERIPH_TYPE_ZXPRINTER_FULL_DECODE,&printer_zxp_periph_full_decode);
periph_register(PERIPH_TYPE_PARALLEL_PRINTER,&printer_parallel_periph);
}