/* * Document-class: Byebug * * == Summary * * This is a singleton class allows controlling byebug. Use it to start/stop * byebug, set/remove breakpoints, etc. */ void Init_byebug() { mByebug = rb_define_module("Byebug"); rb_define_module_function(mByebug, "add_catchpoint", Add_catchpoint, 1); rb_define_module_function(mByebug, "breakpoints", Breakpoints, 0); rb_define_module_function(mByebug, "catchpoints", Catchpoints, 0); rb_define_module_function(mByebug, "contexts", Contexts, 0); rb_define_module_function(mByebug, "current_context", Current_context, 0); rb_define_module_function(mByebug, "debug_load", Debug_load, -1); rb_define_module_function(mByebug, "post_mortem?", Post_mortem, 0); rb_define_module_function(mByebug, "post_mortem=", Set_post_mortem, 1); rb_define_module_function(mByebug, "raised_exception", Raised_exception, 0); rb_define_module_function(mByebug, "start", Start, 0); rb_define_module_function(mByebug, "started?", Started, 0); rb_define_module_function(mByebug, "stop", Stop, 0); rb_define_module_function(mByebug, "thread_context", Thread_context, 1); rb_define_module_function(mByebug, "tracing?", Tracing, 0); rb_define_module_function(mByebug, "tracing=", Set_tracing, 1); rb_define_module_function(mByebug, "verbose?", Verbose, 0); rb_define_module_function(mByebug, "verbose=", Set_verbose, 1); Init_threads_table(mByebug); Init_context(mByebug); Init_breakpoint(mByebug); rb_global_variable(&breakpoints); rb_global_variable(&catchpoints); rb_global_variable(&tracepoints); rb_global_variable(&raised_exception); rb_global_variable(&threads); idPuts = rb_intern("puts"); }
void Init_rkerberos(){ mKerberos = rb_define_module("Kerberos"); cKrb5 = rb_define_class_under(mKerberos, "Krb5", rb_cObject); cKrb5Exception = rb_define_class_under(cKrb5, "Exception", rb_eStandardError); // Allocation functions rb_define_alloc_func(cKrb5, rkrb5_allocate); // Initializers rb_define_method(cKrb5, "initialize", rkrb5_initialize, 0); // Krb5 Methods rb_define_method(cKrb5, "change_password", rkrb5_change_password, 2); rb_define_method(cKrb5, "close", rkrb5_close, 0); rb_define_method(cKrb5, "get_default_realm", rkrb5_get_default_realm, 0); rb_define_method(cKrb5, "get_init_creds_password", rkrb5_get_init_creds_passwd, -1); rb_define_method(cKrb5, "get_init_creds_keytab", rkrb5_get_init_creds_keytab, -1); rb_define_method(cKrb5, "get_default_principal", rkrb5_get_default_principal, 0); rb_define_method(cKrb5, "get_permitted_enctypes", rkrb5_get_permitted_enctypes, 0); rb_define_method(cKrb5, "set_default_realm", rkrb5_set_default_realm, -1); // Aliases rb_define_alias(cKrb5, "default_realm", "get_default_realm"); rb_define_alias(cKrb5, "default_principal", "get_default_principal"); /* 0.1.0: The version of the custom rkerberos library */ rb_define_const(cKrb5, "VERSION", rb_str_new2("0.1.0")); // Encoding type constants /* 0: None */ rb_define_const(cKrb5, "ENCTYPE_NULL", INT2FIX(ENCTYPE_NULL)); /* 1: DES cbc mode with CRC-32 */ rb_define_const(cKrb5, "ENCTYPE_DES_CBC_CRC", INT2FIX(ENCTYPE_DES_CBC_CRC)); /* 2: DES cbc mode with RSA-MD4 */ rb_define_const(cKrb5, "ENCTYPE_DES_CBC_MD4", INT2FIX(ENCTYPE_DES_CBC_MD4)); /* 3: DES cbc mode with RSA-MD5 */ rb_define_const(cKrb5, "ENCTYPE_DES_CBC_MD5", INT2FIX(ENCTYPE_DES_CBC_MD5)); /* 4: DES cbc mode raw */ rb_define_const(cKrb5, "ENCTYPE_DES_CBC_RAW", INT2FIX(ENCTYPE_DES_CBC_RAW)); /* 5: DES-3 cbc mode with NIST-SHA */ rb_define_const(cKrb5, "ENCTYPE_DES3_CBC_SHA", INT2FIX(ENCTYPE_DES3_CBC_SHA)); /* 6: DES-3 cbc mode raw */ rb_define_const(cKrb5, "ENCTYPE_DES3_CBC_RAW", INT2FIX(ENCTYPE_DES3_CBC_RAW)); /* 8: HMAC SHA1 */ rb_define_const(cKrb5, "ENCTYPE_DES_HMAC_SHA1", INT2FIX(ENCTYPE_DES_HMAC_SHA1)); /* 9: DSA with SHA1, CMS signature */ rb_define_const(cKrb5, "ENCTYPE_DSA_SHA1_CMS", INT2FIX(ENCTYPE_DSA_SHA1_CMS)); /* 10: MD5 with RSA, CMS signature */ rb_define_const(cKrb5, "ENCTYPE_MD5_RSA_CMS", INT2FIX(ENCTYPE_MD5_RSA_CMS)); /* 11: SHA1 with RSA, CMS signature */ rb_define_const(cKrb5, "ENCTYPE_SHA1_RSA_CMS", INT2FIX(ENCTYPE_SHA1_RSA_CMS)); /* 12: RC2 cbc mode, CMS enveloped data */ rb_define_const(cKrb5, "ENCTYPE_RC2_CBC_ENV", INT2FIX(ENCTYPE_RC2_CBC_ENV)); /* 13: RSA encryption, CMS enveloped data */ rb_define_const(cKrb5, "ENCTYPE_RSA_ENV", INT2FIX(ENCTYPE_RSA_ENV)); /* 14: RSA w/OEAP encryption, CMS enveloped data */ rb_define_const(cKrb5, "ENCTYPE_RSA_ES_OAEP_ENV", INT2FIX(ENCTYPE_RSA_ES_OAEP_ENV)); /* 15: DES-3 cbc mode, CMS enveloped data */ rb_define_const(cKrb5, "ENCTYPE_DES3_CBC_ENV", INT2FIX(ENCTYPE_DES3_CBC_ENV)); /* 16: DES3 CBC SHA1 */ rb_define_const(cKrb5, "ENCTYPE_DES3_CBC_SHA1", INT2FIX(ENCTYPE_DES3_CBC_SHA1)); /* 17: AES128 CTS HMAC SHA1 96 */ rb_define_const(cKrb5, "ENCTYPE_AES128_CTS_HMAC_SHA1_96", INT2FIX(ENCTYPE_AES128_CTS_HMAC_SHA1_96)); /* 18: AES256 CTS HMAC SHA1 96 */ rb_define_const(cKrb5, "ENCTYPE_AES256_CTS_HMAC_SHA1_96", INT2FIX(ENCTYPE_AES256_CTS_HMAC_SHA1_96)); /* 23: ARCFOUR HMAC */ rb_define_const(cKrb5, "ENCTYPE_ARCFOUR_HMAC", INT2FIX(ENCTYPE_ARCFOUR_HMAC)); /* 24: ARCFOUR HMAC EXP */ rb_define_const(cKrb5, "ENCTYPE_ARCFOUR_HMAC_EXP", INT2FIX(ENCTYPE_ARCFOUR_HMAC_EXP)); /* 511: Unknown */ rb_define_const(cKrb5, "ENCTYPE_UNKNOWN", INT2FIX(ENCTYPE_UNKNOWN)); // Class initialization Init_context(); Init_ccache(); Init_kadm5(); Init_config(); Init_policy(); Init_principal(); Init_keytab(); Init_keytab_entry(); }