author | Michael Krelin <hacker@klever.net> | 2007-07-28 19:23:02 (UTC) |
---|---|---|
committer | Michael Krelin <hacker@klever.net> | 2007-07-28 19:23:02 (UTC) |
commit | 14d8413448409518ec967b895290dbbb5cc0e7f3 (patch) (side-by-side diff) | |
tree | 415348e580b591957a0d7ed4c14e3d2cf27f58e2 | |
parent | 2046805030295f646052c635e525a4ae2ec787cc (diff) | |
download | misc-14d8413448409518ec967b895290dbbb5cc0e7f3.zip misc-14d8413448409518ec967b895290dbbb5cc0e7f3.tar.gz misc-14d8413448409518ec967b895290dbbb5cc0e7f3.tar.bz2 |
net-im/jabberd: added ssl fix to the patch.
Signed-off-by: Michael Krelin <hacker@klever.net>
-rw-r--r-- | net-im/jabberd/Manifest | 22 | ||||
-rw-r--r-- | net-im/jabberd/files/digest-jabberd-2.1.11-r2 (renamed from net-im/jabberd/files/digest-jabberd-2.1.11-r1) | 0 | ||||
-rw-r--r-- | net-im/jabberd/files/jabberd-2.1.11-r2.patch (renamed from net-im/jabberd/files/jabberd-2.1.11-r1.patch) | 38 | ||||
-rw-r--r-- | net-im/jabberd/jabberd-2.1.11-r2.ebuild (renamed from net-im/jabberd/jabberd-2.1.11-r1.ebuild) | 0 |
4 files changed, 46 insertions, 14 deletions
diff --git a/net-im/jabberd/Manifest b/net-im/jabberd/Manifest index 9af6591..c0bfa66 100644 --- a/net-im/jabberd/Manifest +++ b/net-im/jabberd/Manifest @@ -1,28 +1,28 @@ -AUX jabberd-2.1.11-r1.patch 9979 RMD160 bbd543765e41264e544948983e7193b8d50b9b88 SHA1 4e2b56baf5167ec0b3df31757bfe635a58055b55 SHA256 1b5dace5ba604a37e40637ff22eb856daad4f8504fff5337ffb9ffd77298d3bc -MD5 2ee77f6ead80438a246b58de2b0ab73f files/jabberd-2.1.11-r1.patch 9979 -RMD160 bbd543765e41264e544948983e7193b8d50b9b88 files/jabberd-2.1.11-r1.patch 9979 -SHA256 1b5dace5ba604a37e40637ff22eb856daad4f8504fff5337ffb9ffd77298d3bc files/jabberd-2.1.11-r1.patch 9979 +AUX jabberd-2.1.11-r2.patch 11284 RMD160 192d97ba890c98969beedfba7bfad844228dee97 SHA1 97e9bf1a2f9a1b3c89a67440b4cd14cf7e571b50 SHA256 f8ac88a98f1f61bcd0f704209f9b4d507bd324380d38774a34c0246f519b4094 +MD5 bd174b5023d99250951271bd7f6b7d42 files/jabberd-2.1.11-r2.patch 11284 +RMD160 192d97ba890c98969beedfba7bfad844228dee97 files/jabberd-2.1.11-r2.patch 11284 +SHA256 f8ac88a98f1f61bcd0f704209f9b4d507bd324380d38774a34c0246f519b4094 files/jabberd-2.1.11-r2.patch 11284 AUX jabberd-2.1.11.init 1404 RMD160 d93784cc30f573f20cd411a1a18578db46121b26 SHA1 ce0e735adbf539c809568aa2c1d3ee49f565600c SHA256 e9d004e8d83cc59f964b49c44aaf64445593ba8157d4b51df83e5e50f4625094 MD5 eacd752c3b8eb5f2d4914ca8b3580893 files/jabberd-2.1.11.init 1404 RMD160 d93784cc30f573f20cd411a1a18578db46121b26 files/jabberd-2.1.11.init 1404 SHA256 e9d004e8d83cc59f964b49c44aaf64445593ba8157d4b51df83e5e50f4625094 files/jabberd-2.1.11.init 1404 AUX jabberd-2.1.11.pamd 158 RMD160 3143cb1689fbebb51c0d72fa4c6b79ee9c015185 SHA1 5a95607d50b470107e9a0556fb4591688faff02c SHA256 eba4b5cc68b3dd327cfa1afdadbe5adf6d9383f4c79c7661169a4339e40b9a7b MD5 ab77cef855566260d6a779d8d77bc78c files/jabberd-2.1.11.pamd 158 RMD160 3143cb1689fbebb51c0d72fa4c6b79ee9c015185 files/jabberd-2.1.11.pamd 158 SHA256 eba4b5cc68b3dd327cfa1afdadbe5adf6d9383f4c79c7661169a4339e40b9a7b files/jabberd-2.1.11.pamd 158 DIST jabberd-2.1.11.tar.bz2 1034039 RMD160 540f9f510351c369938005acb7013ea41d77f5b8 SHA1 528df89fd1fc638590811bb4f14b2d0d8a498a56 SHA256 e99a70102896ce28e5e427234ddaa852aacd8a38700264741a40f5781919bea8 -EBUILD jabberd-2.1.11-r1.ebuild 2931 RMD160 b853d8d199905d0048a856765aeae27f982453ff SHA1 b0e7159bd13439320fdc4d72c0fe5e4ee8dac6bd SHA256 aa07d173367d7509a04f6482f29c36b9878956fc0542cd65dd539962c97079cb -MD5 38355a04b1112de9d828ba25118a87ad jabberd-2.1.11-r1.ebuild 2931 -RMD160 b853d8d199905d0048a856765aeae27f982453ff jabberd-2.1.11-r1.ebuild 2931 -SHA256 aa07d173367d7509a04f6482f29c36b9878956fc0542cd65dd539962c97079cb jabberd-2.1.11-r1.ebuild 2931 +EBUILD jabberd-2.1.11-r2.ebuild 2931 RMD160 b853d8d199905d0048a856765aeae27f982453ff SHA1 b0e7159bd13439320fdc4d72c0fe5e4ee8dac6bd SHA256 aa07d173367d7509a04f6482f29c36b9878956fc0542cd65dd539962c97079cb +MD5 38355a04b1112de9d828ba25118a87ad jabberd-2.1.11-r2.ebuild 2931 +RMD160 b853d8d199905d0048a856765aeae27f982453ff jabberd-2.1.11-r2.ebuild 2931 +SHA256 aa07d173367d7509a04f6482f29c36b9878956fc0542cd65dd539962c97079cb jabberd-2.1.11-r2.ebuild 2931 MISC ChangeLog 15464 RMD160 bac8facc410dced776f4b5d9f0c4b051100f9409 SHA1 2ed0d2fa838de3b4e1d720f577116af6eba842ec SHA256 7ea8ffdf9c099ca3fc43ccb381100ce6b519de8f6bb582305535491373fb8830 MD5 e71dbcd3a38fc84fc22dac39a6019359 ChangeLog 15464 RMD160 bac8facc410dced776f4b5d9f0c4b051100f9409 ChangeLog 15464 SHA256 7ea8ffdf9c099ca3fc43ccb381100ce6b519de8f6bb582305535491373fb8830 ChangeLog 15464 MISC metadata.xml 399 RMD160 e223c713f74619996bc47a70298aa535f6addf09 SHA1 dc9bc290a5ed00f7101aabd3a40b346112eb40eb SHA256 f68b0864864ad54de5cf072835fc9903e709987261ad1fc102afb0019aa52377 MD5 be8887bde84aab1d4ff9d5a0f5d50141 metadata.xml 399 RMD160 e223c713f74619996bc47a70298aa535f6addf09 metadata.xml 399 SHA256 f68b0864864ad54de5cf072835fc9903e709987261ad1fc102afb0019aa52377 metadata.xml 399 -MD5 c07f7b9a6581fa2f5ea895378ce7f7de files/digest-jabberd-2.1.11-r1 250 -RMD160 cb7aaed13753b29cc9f5a1bce8487647ae3a39f2 files/digest-jabberd-2.1.11-r1 250 -SHA256 6d1563e8ca5a90c87768d01e273bfd6cfbe11c93ff70249fb71eeb074b090a39 files/digest-jabberd-2.1.11-r1 250 +MD5 c07f7b9a6581fa2f5ea895378ce7f7de files/digest-jabberd-2.1.11-r2 250 +RMD160 cb7aaed13753b29cc9f5a1bce8487647ae3a39f2 files/digest-jabberd-2.1.11-r2 250 +SHA256 6d1563e8ca5a90c87768d01e273bfd6cfbe11c93ff70249fb71eeb074b090a39 files/digest-jabberd-2.1.11-r2 250 diff --git a/net-im/jabberd/files/digest-jabberd-2.1.11-r1 b/net-im/jabberd/files/digest-jabberd-2.1.11-r2 index ae7be5e..ae7be5e 100644 --- a/net-im/jabberd/files/digest-jabberd-2.1.11-r1 +++ b/net-im/jabberd/files/digest-jabberd-2.1.11-r2 diff --git a/net-im/jabberd/files/jabberd-2.1.11-r1.patch b/net-im/jabberd/files/jabberd-2.1.11-r2.patch index 6eba147..dbf441a 100644 --- a/net-im/jabberd/files/jabberd-2.1.11-r1.patch +++ b/net-im/jabberd/files/jabberd-2.1.11-r2.patch @@ -131,137 +131,169 @@ index 6f72a5c..cabdc67 100644 @@ -259,12 +263,6 @@ static void _mio_run(mio_t m, int timeout) if(ACT(m, fd, action_WRITE, NULL) == 0) MIO_UNSET_WRITE(m, FD(m,fd)); } - - /* deferred closing fd */ - if(FD(m,fd)->type == type_CLOSED) - { - MIO_FREE_FD(m, fd); - } } } diff --git a/sm/main.c b/sm/main.c index 2f1439d..9f27829 100644 --- a/sm/main.c +++ b/sm/main.c @@ -392,6 +392,7 @@ JABBER_MAIN("jabberd2sm", "Jabber 2 Session Manager", "Jabber Open Source Server xhash_free(sm->acls); xhash_free(sm->features); xhash_free(sm->xmlns); + xhash_free(sm->xmlns_refcount); xhash_free(sm->users); sx_free(sm->router); diff --git a/sm/mod_privacy.c b/sm/mod_privacy.c index 06f9e6e..5abf065 100644 --- a/sm/mod_privacy.c +++ b/sm/mod_privacy.c @@ -205,7 +205,7 @@ static int _privacy_user_load(mod_instance_t mi, user_t user) { continue; } - pool_cleanup(zlist->p, free, zitem->jid); + pool_cleanup(zlist->p, jid_free, zitem->jid); log_debug(ZONE, "jid item with value '%s'", jid_full(zitem->jid)); @@ -696,7 +696,7 @@ static mod_ret_t _privacy_in_sess(mod_instance_t mi, sess_t sess, pkt_t pkt) { return -stanza_err_BAD_REQUEST; } - pool_cleanup(p, free, zitem->jid); + pool_cleanup(p, jid_free, zitem->jid); log_debug(ZONE, "jid item with value '%s'", jid_full(zitem->jid)); diff --git a/storage/authreg_pgsql.c b/storage/authreg_pgsql.c -index 1f15e83..cb68e7d 100644 +index 1f15e83..5f1583d 100644 --- a/storage/authreg_pgsql.c +++ b/storage/authreg_pgsql.c -@@ -304,7 +304,7 @@ int _ar_pgsql_check_sql( authreg_t ar, char * sql, char * types ) { +@@ -302,9 +302,13 @@ int _ar_pgsql_check_sql( authreg_t ar, char * sql, char * types ) { + return 1; + } ++#ifdef HAVE_SSL ++extern int sx_openssl_initialized; ++#endif ++ /** start me up */ int ar_init(authreg_t ar) { - char *host, *port, *dbname, *user, *pass; + char *host, *port, *dbname, *user, *pass, *conninfo; char *create, *select, *setpassword, *delete; char *table, *username, *realm; char *template; -@@ -391,15 +391,22 @@ int ar_init(authreg_t ar) { +@@ -391,15 +395,26 @@ int ar_init(authreg_t ar) { free(setpassword); free(delete); - host = config_get_one(ar->c2s->config, "authreg.pgsql.host", 0); - port = config_get_one(ar->c2s->config, "authreg.pgsql.port", 0); - dbname = config_get_one(ar->c2s->config, "authreg.pgsql.dbname", 0); - user = config_get_one(ar->c2s->config, "authreg.pgsql.user", 0); - pass = config_get_one(ar->c2s->config, "authreg.pgsql.pass", 0); - - log_debug( ZONE, "pgsql connecting as '%s' to database '%s' on %s:%s", user, dbname, host, port ); ++#ifdef HAVE_SSL ++ if(sx_openssl_initialized) ++ PQinitSSL(0); ++#endif + conninfo = config_get_one(ar->c2s->config,"authreg.pgsql.conninfo",0); + if(conninfo) { + /* don't log connection info for it can contain password */ + log_debug( ZONE, "pgsql connecting to the databse"); + conn = PQconnectdb(conninfo); + }else{ + /* compatibility settings */ + host = config_get_one(ar->c2s->config, "authreg.pgsql.host", 0); + port = config_get_one(ar->c2s->config, "authreg.pgsql.port", 0); + dbname = config_get_one(ar->c2s->config, "authreg.pgsql.dbname", 0); + user = config_get_one(ar->c2s->config, "authreg.pgsql.user", 0); + pass = config_get_one(ar->c2s->config, "authreg.pgsql.pass", 0); + log_debug( ZONE, "pgsql connecting as '%s' to database '%s' on %s:%s", user, dbname, host, port ); + conn = PQsetdbLogin(host, port, NULL, NULL, dbname, user, pass); + } - conn = PQsetdbLogin(host, port, NULL, NULL, dbname, user, pass); if(conn == NULL) { log_write(ar->c2s->log, LOG_ERR, "pgsql: unable to allocate database connection state"); return 1; diff --git a/sx/sasl_gsasl.c b/sx/sasl_gsasl.c index 69eeec2..0036c0f 100644 --- a/sx/sasl_gsasl.c +++ b/sx/sasl_gsasl.c @@ -338,6 +338,7 @@ static void _sx_sasl_client_process(sx_t s, sx_plugin_t p, Gsasl_session *sd, ch if(ret != GSASL_OK && ret != GSASL_NEEDS_MORE) { _sx_debug(ZONE, "gsasl_step failed, no sasl for this conn; (%d): %s", ret, gsasl_strerror(ret)); _sx_nad_write(s, _sx_sasl_failure(s, _sasl_err_MALFORMED_REQUEST), 0); + if(buf != NULL) free(buf); return; } } @@ -350,6 +351,7 @@ static void _sx_sasl_client_process(sx_t s, sx_plugin_t p, Gsasl_session *sd, ch if(ret != GSASL_OK && ret != GSASL_NEEDS_MORE) { _sx_debug(ZONE, "gsasl_step failed, no sasl for this conn; (%d): %s", ret, gsasl_strerror(ret)); _sx_nad_write(s, _sx_sasl_failure(s, _sasl_err_MALFORMED_REQUEST), 0); + if(buf != NULL) free(buf); return; } +diff --git a/sx/ssl.c b/sx/ssl.c +index 62c4258..9359f4d 100644 +--- a/sx/ssl.c ++++ b/sx/ssl.c +@@ -628,6 +628,8 @@ static void _sx_ssl_unload(sx_plugin_t p) { + SSL_CTX_free((SSL_CTX *) p->private); + } + ++int sx_openssl_initialized = 0; ++ + /** args: pemfile */ + int sx_ssl_init(sx_env_t env, sx_plugin_t p, va_list args) { + char *pemfile, *cachain; +@@ -653,6 +655,8 @@ int sx_ssl_init(sx_env_t env, sx_plugin_t p, va_list args) { + SSL_library_init(); + SSL_load_error_strings(); + ++ sx_openssl_initialized = 1; ++ + /* create the context */ + ctx = SSL_CTX_new(SSLv23_method()); + if(ctx == NULL) { diff --git a/util/jid.c b/util/jid.c index 695b15f..f4b0021 100644 --- a/util/jid.c +++ b/util/jid.c @@ -332,7 +332,7 @@ static jid_t jid_reset_components_internal(jid_t jid, const unsigned char *node, else { /* allocate new data buffer */ jid->jid_data_len = node_l+domain_l+resource_l+3; - jid->jid_data = malloc(jid->jid_data_len); + jid->jid_data = realloc(jid->jid_data, jid->jid_data_len); } /* copy to buffer */ diff --git a/util/nad.c b/util/nad.c index 2ac8670..eec3c17 100644 --- a/util/nad.c +++ b/util/nad.c @@ -61,7 +61,7 @@ static void _nad_ptr_check(const char *func, nad_t nad) { #define _nad_ptr_check(func,nad) #endif -#define BLOCKSIZE 1024 +#define BLOCKSIZE 128 /** internal: do and return the math and ensure it gets realloc'd */ static int _nad_realloc(void **oblocks, int len) diff --git a/net-im/jabberd/jabberd-2.1.11-r1.ebuild b/net-im/jabberd/jabberd-2.1.11-r2.ebuild index 9445d07..9445d07 100644 --- a/net-im/jabberd/jabberd-2.1.11-r1.ebuild +++ b/net-im/jabberd/jabberd-2.1.11-r2.ebuild |