diff options
author | Sebastien Helleu <flashcode@flashtux.org> | 2010-02-18 22:02:55 +0100 |
---|---|---|
committer | Sebastien Helleu <flashcode@flashtux.org> | 2010-02-18 22:02:55 +0100 |
commit | d2ec8d133db7da8910538c13c500e65959d041ae (patch) | |
tree | ed5d7c76368c64b51a7ce1e7b7fb2bf0c6b327f1 | |
parent | 832a4c1466ec5d0cff30a3ad5205de4c64178237 (diff) | |
download | weechat-d2ec8d133db7da8910538c13c500e65959d041ae.zip |
Add mechanism DH-BLOWFISH for SASL authentication with IRC server
33 files changed, 718 insertions, 2808 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 1b65a92ff..900d5d912 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -56,6 +56,7 @@ ENDIF(DEFINED INCLUDEDIR) OPTION(DISABLE_NCURSES "Disable Ncurses interface") OPTION(ENABLE_GTK "Enable GTK interface") OPTION(DISABLE_NLS "Disable Native Language Support") +OPTION(DISABLE_GCRYPT "Disable libgcrypt support") OPTION(DISABLE_GNUTLS "Disable SSLv3/TLS connection support") OPTION(DISABLE_LARGEFILE "Disable Large File Support") OPTION(DISABLE_ALIAS "Disable Alias plugin") @@ -26,7 +26,8 @@ Version 0.3.2 (under dev!) and in buffer infolist * api: add description of arguments for functions hook_info and hook_infolist * api: fix function "color" in Lua script API -* irc: add SASL authentication (task #8829) +* irc: add SASL authentication, with PLAIN and DH-BLOWFISH mechanisms + (task #8829) * irc: fix crash with SSL connection if option ssl_cert is set (bug #28752) * irc: fix bug with SSL connection (fails sometimes when ssl_verify is on) (bug #28741) diff --git a/cmake/FindGcrypt.cmake b/cmake/FindGcrypt.cmake new file mode 100644 index 000000000..f4c730100 --- /dev/null +++ b/cmake/FindGcrypt.cmake @@ -0,0 +1,47 @@ +# Copyright (c) 2003-2010 by FlashCode <flashcode@flashtux.org> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# + +# - Find Gcrypt +# This module finds if libgcrypt is installed and determines where +# the include files and libraries are. +# +# This code sets the following variables: +# +# GCRYPT_CFLAGS = cflags to use to compile +# GCRYPT_LDFLAGS = ldflags to use to compile +# + +FIND_PROGRAM(LIBGCRYPT_CONFIG_EXECUTABLE NAMES libgcrypt-config) + +set(GCRYPT_LDFLAGS) +set(GCRYPT_CFLAGS) + +IF(LIBGCRYPT_CONFIG_EXECUTABLE) + + EXEC_PROGRAM(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS) + EXEC_PROGRAM(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS) + + IF(${GCRYPT_CFLAGS} MATCHES "\n") + SET(GCRYPT_CFLAGS " ") + ENDIF(${GCRYPT_CFLAGS} MATCHES "\n") + + IF(GCRYPT_LDFLAGS AND GCRYPT_CFLAGS) + SET(GCRYPT_FOUND TRUE) + ENDIF(GCRYPT_LDFLAGS AND GCRYPT_CFLAGS) + +ENDIF(LIBGCRYPT_CONFIG_EXECUTABLE) + +MARK_AS_ADVANCED(GCRYPT_CFLAGS GCRYPT_LDFLAGS) diff --git a/configure.in b/configure.in index 002c3a19f..2fe02c20f 100644 --- a/configure.in +++ b/configure.in @@ -96,6 +96,7 @@ AC_CHECK_FUNCS([gethostbyname gethostname getsockname gettimeofday inet_ntoa mem AH_VERBATIM([PREFIX], [#undef PREFIX]) AH_VERBATIM([WEECHAT_LIBDIR], [#undef WEECHAT_LIBDIR]) AH_VERBATIM([WEECHAT_SHAREDIR], [#undef WEECHAT_SHAREDIR]) +AH_VERBATIM([HAVE_GCRYPT], [#undef HAVE_GCRYPT]) AH_VERBATIM([HAVE_GNUTLS], [#undef HAVE_GNUTLS]) AH_VERBATIM([HAVE_FLOCK], [#undef HAVE_FLOCK]) AH_VERBATIM([PLUGIN_ALIAS], [#undef PLUGIN_ALIAS]) @@ -120,6 +121,7 @@ AC_ARG_ENABLE(ncurses, [ --disable-ncurses turn off ncurses interfac AC_ARG_ENABLE(wxwidgets, [ --enable-wxwidgets turn on WxWidgets interface (default=off)],enable_wxwidgets=$enableval,enable_wxwidgets=no) AC_ARG_ENABLE(gtk, [ --enable-gtk turn on Gtk interface (default=off)],enable_gtk=$enableval,enable_gtk=no) AC_ARG_ENABLE(qt, [ --enable-qt turn on Qt interface (default=off)],enable_qt=$enableval,enable_qt=no) +AC_ARG_ENABLE(gcrypt, [ --disable-gcrypt turn off gcrypt support (default=compiled if found)],enable_gcrypt=$enableval,enable_gcrypt=yes) AC_ARG_ENABLE(gnutls, [ --disable-gnutls turn off gnutls support (default=compiled if found)],enable_gnutls=$enableval,enable_gnutls=yes) AC_ARG_ENABLE(largefile, [ --disable-largefile turn off Large File Support (default=on)],enable_largefile=$enableval,enable_largefile=yes) AC_ARG_ENABLE(alias, [ --disable-alias turn off Alias plugin (default=compiled)],enable_alias=$enableval,enable_alias=yes) @@ -739,21 +741,51 @@ else fi # ------------------------------------------------------------------------------ +# gcrypt +# ------------------------------------------------------------------------------ + +if test "x$enable_gcrypt" = "xyes" ; then + AC_CHECK_HEADER(gcrypt.h,ac_found_gcrypt_header="yes",ac_found_gcrypt_header="no") + AC_CHECK_LIB(gcrypt,gcry_check_version,ac_found_gcrypt_lib="yes",ac_found_gcrypt_lib="no") + + AC_MSG_CHECKING(for gcrypt headers and librairies) + if test "x$ac_found_gcrypt_header" = "xno" -o "x$ac_found_gcrypt_lib" = "xno" ; then + AC_MSG_RESULT(no) + AC_MSG_WARN([ +*** libgcrypt was not found. You may want to get it from ftp://ftp.gnupg.org/gcrypt/libgcrypt/ +*** WeeChat will be built without gcrypt support. +*** Some features like SASL authentication with IRC server using mechanism DH-BLOWFISH will be disabled.]) + enable_gcrypt="no" + not_found="$not_found gcrypt" + else + AC_MSG_RESULT(yes) + GCRYPT_CFLAGS=`libgcrypt-config --cflags` + GCRYPT_LFLAGS=`libgcrypt-config --libs` + AC_SUBST(GCRYPT_CFLAGS) + AC_SUBST(GCRYPT_LFLAGS) + AC_DEFINE(HAVE_GCRYPT) + CFLAGS="$CFLAGS -DHAVE_GCRYPT" + fi +else + not_asked="$not_asked gcrypt" +fi + +# ------------------------------------------------------------------------------ # gnutls # ------------------------------------------------------------------------------ if test "x$enable_gnutls" = "xyes" ; then - AC_CHECK_HEADER(gnutls/gnutls.h,ac_found_gnutls_header="yes",ac_found_gnutls_header="no") - AC_CHECK_LIB(gnutls,gnutls_global_init,ac_found_gnutls_lib="yes",ac_found_gnutls_lib="no") - - AC_MSG_CHECKING(for gnutls headers and librairies) - if test "x$ac_found_gnutls_header" = "xno" -o "x$ac_found_gnutls_lib" = "xno" ; then - AC_MSG_RESULT(no) - AC_MSG_WARN([ + AC_CHECK_HEADER(gnutls/gnutls.h,ac_found_gnutls_header="yes",ac_found_gnutls_header="no") + AC_CHECK_LIB(gnutls,gnutls_global_init,ac_found_gnutls_lib="yes",ac_found_gnutls_lib="no") + + AC_MSG_CHECKING(for gnutls headers and librairies) + if test "x$ac_found_gnutls_header" = "xno" -o "x$ac_found_gnutls_lib" = "xno" ; then + AC_MSG_RESULT(no) + AC_MSG_WARN([ *** libgnutls was not found. You may want to get it from ftp://ftp.gnutls.org/pub/gnutls/ *** WeeChat will be built without GnuTLS support.]) - enable_gnutls="no" - not_found="$not_found gnutls" + enable_gnutls="no" + not_found="$not_found gnutls" else AC_MSG_RESULT(yes) GNUTLS_CFLAGS=`pkg-config gnutls --cflags` @@ -932,6 +964,7 @@ CFLAGS="$CFLAGS -DWEECHAT_VERSION=\\\"$VERSION\\\"" # output Makefiles # ------------------------------------------------------------------------------ +AM_CONDITIONAL(HAVE_GCRYPT, test "$enable_gcrypt" = "yes") AM_CONDITIONAL(HAVE_GNUTLS, test "$enable_gnutls" = "yes") AM_CONDITIONAL(HAVE_FLOCK, test "$enable_flock" = "yes") AM_CONDITIONAL(GUI_NCURSES, test "$enable_ncurses" = "yes") @@ -1058,6 +1091,9 @@ if test "x$enable_xfer" = "xyes"; then fi listoptional="" +if test "x$enable_gcrypt" = "xyes"; then + listoptional="$listoptional gcrypt" +fi if test "x$enable_gnutls" = "xyes"; then listoptional="$listoptional gnutls" fi diff --git a/doc/en/autogen/user/irc_options.txt b/doc/en/autogen/user/irc_options.txt index 2b578c097..ab91d7c1b 100644 --- a/doc/en/autogen/user/irc_options.txt +++ b/doc/en/autogen/user/irc_options.txt @@ -311,13 +311,18 @@ * *irc.server_default.sasl_mechanism* ** description: mechanism for SASL authentication ** type: integer -** values: plain (default value: plain) +** values: plain, dh-blowfish (default value: plain) * *irc.server_default.sasl_password* ** description: password for SASL authentication ** type: string ** values: any string (default value: "") +* *irc.server_default.sasl_timeout* +** description: timeout (in seconds) before giving up SASL authentication +** type: integer +** values: 1 .. 3600 (default value: 15) + * *irc.server_default.sasl_username* ** description: username for SASL authentication ** type: string diff --git a/doc/fr/autogen/user/irc_options.txt b/doc/fr/autogen/user/irc_options.txt index a43459358..69e55706c 100644 --- a/doc/fr/autogen/user/irc_options.txt +++ b/doc/fr/autogen/user/irc_options.txt @@ -311,13 +311,18 @@ * *irc.server_default.sasl_mechanism* ** description: mécanisme pour l'authentification SASL ** type: entier -** valeurs: plain (valeur par défaut: plain) +** valeurs: plain, dh-blowfish (valeur par défaut: plain) * *irc.server_default.sasl_password* ** description: mot de passe pour l'authentification SASL ** type: chaîne ** valeurs: toute chaîne (valeur par défaut: "") +* *irc.server_default.sasl_timeout* +** description: délai d'attende maximum (en secondes) avant d'abandonner l'authentification SASL +** type: entier +** valeurs: 1 .. 3600 (valeur par défaut: 15) + * *irc.server_default.sasl_username* ** description: nom d'utilisateur pour l'authentification SASL ** type: chaîne diff --git a/doc/it/autogen/user/irc_options.txt b/doc/it/autogen/user/irc_options.txt index 5cc326e69..f1d3266d6 100644 --- a/doc/it/autogen/user/irc_options.txt +++ b/doc/it/autogen/user/irc_options.txt @@ -311,13 +311,18 @@ * *irc.server_default.sasl_mechanism* ** descrizione: mechanism for SASL authentication ** tipo: intero -** valori: plain (valore predefinito: plain) +** valori: plain, dh-blowfish (valore predefinito: plain) * *irc.server_default.sasl_password* ** descrizione: password for SASL authentication ** tipo: stringa ** valori: qualsiasi stringa (valore predefinito: "") +* *irc.server_default.sasl_timeout* +** descrizione: timeout (in seconds) before giving up SASL authentication +** tipo: intero +** valori: 1 .. 3600 (valore predefinito: 15) + * *irc.server_default.sasl_username* ** descrizione: username for SASL authentication ** tipo: stringa diff --git a/po/POTFILES.in b/po/POTFILES.in index e041de561..cfffb1dfd 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -139,6 +139,8 @@ ./src/plugins/irc/irc-protocol.h ./src/plugins/irc/irc-raw.c ./src/plugins/irc/irc-raw.h +./src/plugins/irc/irc-sasl.c +./src/plugins/irc/irc-sasl.h ./src/plugins/irc/irc-server.c ./src/plugins/irc/irc-server.h ./src/plugins/logger/logger.c @@ -6,8 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.2-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-02-15 11:45+0100\n" -"PO-Revision-Date: 2010-01-23 11:56+0100\n" +"POT-Creation-Date: 2010-02-18 19:55+0100\n" +"PO-Revision-Date: 2010-02-18 19:52+0100\n" "Last-Translator: Jiri Golembiovsky <golemj@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" "MIME-Version: 1.0\n" @@ -4036,6 +4036,9 @@ msgstr "" msgid "password for SASL authentication" msgstr "" +msgid "timeout (in seconds) before giving up SASL authentication" +msgstr "" + msgid "automatically connect to server when WeeChat is starting" msgstr "automaticky připojit k serveru, když je WeeChat spouštěn" @@ -4430,6 +4433,11 @@ msgid "%s%s: this buffer is not a channel!" msgstr "%s%s: tenhle buffer není kanál!" #, c-format +msgid "" +"%s%s: error building answer for SASL authentication, using mechanism \"%s\"" +msgstr "" + +#, c-format msgid "%s%s: client capability, server supports: %s" msgstr "" @@ -4445,6 +4453,18 @@ msgstr "" msgid "%s%s: client capability, enabled: %s" msgstr "" +#, fuzzy, c-format +msgid "" +"%s%s: cannot authenticate with SASL and mechanism DH-BLOWFISH because " +"WeeChat was not built with libgcrypt support" +msgstr "" +"%s%s: nemohu se připojit pomocí SSL, protže WeeChat nebyl sestaven s " +"podporou GNUtls" + +#, fuzzy, c-format +msgid "%s%s: client capability, refused: %s" +msgstr "%s%s: nekorektní znaková sada: \"%s\"" + #, c-format msgid "%sYou have been invited to %s%s%s by %s%s%s" msgstr "%sByl jsi pozván na %s%s%s od %s%s%s" @@ -6165,90 +6185,3 @@ msgstr "[info [argumenty]]" #, fuzzy msgid "Pointer" msgstr "celé číslo" - -#~ msgid "[-o]" -#~ msgstr "[-o]" - -#~ msgid "-o: send uptime to current buffer as input" -#~ msgstr "-o: poslat čas běhu na aktuální kanál jako vstup" - -#~ msgid "-o: send version to current buffer as input" -#~ msgstr "-c: pošle verzi jako vstup pro aktuální buffer" - -#~ msgid "time format for buffers" -#~ msgstr "formát času pro buffer" - -#~ msgid "%s%s: cannot find nick for sending message" -#~ msgstr "%s%s: nemohu najít přezdívku pro poslání zprávy" - -#~ msgid "text: text to send" -#~ msgstr "text: texk k poslání" - -#, fuzzy -#~ msgid "%s%s: error creating msgbuffer \"%s\" => \"%s\"" -#~ msgstr "%s%s: chyba vytváření znakové sady \"%s\" => \"%s\"" - -#~ msgid "%s%s: error: \"%s\"" -#~ msgstr "%s%s: chyba: \"%s\"" - -#~ msgid "%s%s: missing argument for \"%s\" option" -#~ msgstr "%s%s: chybí argument pro volbu \"%s\"" - -#~ msgid "%s%s unable to run function \"%s\"" -#~ msgstr "%s%s nemůžu spustit funkci \"%s\"" - -#~ msgid "%sUnknown CTCP %s%s%s received from %s%s%s: %s" -#~ msgstr "%sNeznámý CTCP %s%s%s obdržen od %s%s%s: %s" - -#~ msgid "%sUnknown CTCP %s%s%s received from %s%s%s" -#~ msgstr "%sNeznámý CTCP %s%s%s obdržen od %s%s%s" - -#~ msgid "list of %s scripts" -#~ msgstr "seznam %s skriptů" - -#, fuzzy -#~ msgid "%s%s: bind error on port %d" -#~ msgstr "%s: poslouchám na portu %d" - -#~ msgid "%s: new client @ %s" -#~ msgstr "%s: nový klient @ %s" - -#~ msgid "enable relay" -#~ msgstr "přesměrování povoleno" - -#~ msgid "" -#~ "port number (or range of ports) that relay plugin listens on (syntax: a " -#~ "single port, ie. 5000 or a port range, ie. 5000-5015, it's recommended to " -#~ "use ports greater than 1024, because only root can use ports below 1024)" -#~ msgstr "" -#~ "číslo portu (nebo rozsah portů), na kterých poslouchá plugin pro " -#~ "přesměrování (syntaxe: jeden port, např. 5000 nebo rozsah portů, např. " -#~ "5000-5015, je doporučeno používat porty větší než 1024, protože porty pod " -#~ "1024 může používat pouze root)" - -#~ msgid "%s%s: option \"listen_port_range\" is not defined" -#~ msgstr "%s%s: volba \"listen_port_range\" není definována" - -#~ msgid "%s%s: cannot find available port for listening" -#~ msgstr "%s%s: nemůžu najít dostupný port pro poslouchání" - -#~ msgid "" -#~ " list: list relay clients\n" -#~ "listfull: list relay clients (verbose)\n" -#~ "\n" -#~ "Without argument, this command opens buffer with list of relay clients." -#~ msgstr "" -#~ " list: vypíše klienty pro přesměrování\n" -#~ "listfull: vypíše klienty pro přesměrování(s detaily)\n" -#~ "\n" -#~ "Spuštění příkazu bez parametrů otevře buffer se seznamem přenosových " -#~ "klientů." - -#~ msgid "" -#~ " channel: channel where user is\n" -#~ "nickname: nickname to kick and ban\n" -#~ " comment: comment for kick" -#~ msgstr "" -#~ " kanál: kanál na kterém je uživatel\n" -#~ "přezdívka: přezdívka, kterou vykopnout a zakázat\n" -#~ " komentář: komentář pro vykopnutí" @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.2-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-02-15 11:45+0100\n" -"PO-Revision-Date: 2010-02-09 16:11+0100\n" +"POT-Creation-Date: 2010-02-18 19:55+0100\n" +"PO-Revision-Date: 2010-02-18 19:52+0100\n" "Last-Translator: Nils G <weechatter@arcor.de>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" "MIME-Version: 1.0\n" @@ -4220,6 +4220,9 @@ msgstr "" msgid "password for SASL authentication" msgstr "" +msgid "timeout (in seconds) before giving up SASL authentication" +msgstr "" + msgid "automatically connect to server when WeeChat is starting" msgstr "Automatisch mit dem Server verbinden, wenn WeeChat gestartet wird" @@ -4631,6 +4634,11 @@ msgid "%s%s: this buffer is not a channel!" msgstr "%s%s: Dieser Buffer ist kein Channel!" #, c-format +msgid "" +"%s%s: error building answer for SASL authentication, using mechanism \"%s\"" +msgstr "" + +#, c-format msgid "%s%s: client capability, server supports: %s" msgstr "" @@ -4646,6 +4654,18 @@ msgstr "" msgid "%s%s: client capability, enabled: %s" msgstr "" +#, fuzzy, c-format +msgid "" +"%s%s: cannot authenticate with SASL and mechanism DH-BLOWFISH because " +"WeeChat was not built with libgcrypt support" +msgstr "" +"%s%s SSL-Verbindung nicht möglich, da WeeChat nicht mit GNUtls-Support " +"kompiliert wurde" + +#, fuzzy, c-format +msgid "%s%s: client capability, refused: %s" +msgstr "%s%s: Ungültiger Zeichensatz: \"%s\"" + #, c-format msgid "%sYou have been invited to %s%s%s by %s%s%s" msgstr "%sDu bist in den Channel %s%s%s von %s%s%s eingeladen worden" @@ -6409,16 +6429,3 @@ msgstr "[arguments]" #, fuzzy msgid "Pointer" msgstr "integer" - -#~ msgid "[-o]" -#~ msgstr "[-o]" - -#~ msgid "-o: send uptime to current buffer as input" -#~ msgstr "" -#~ "-o: sendet die Weechat-Uptime, als Mitteilung, in den aktuellen Channel" - -#~ msgid "-o: send version to current buffer as input" -#~ msgstr "-o: schickt Version in den aktuellen Buffer" - -#~ msgid "time format for buffers" -#~ msgstr "Zeitformatierung für Buffer" @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.2-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-02-15 11:45+0100\n" -"PO-Revision-Date: 2010-01-23 11:56+0100\n" +"POT-Creation-Date: 2010-02-18 19:55+0100\n" +"PO-Revision-Date: 2010-02-18 19:53+0100\n" "Last-Translator: Elián Hanisch <lambdae2@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" "MIME-Version: 1.0\n" @@ -4122,6 +4122,10 @@ msgstr "usar SSL para la comunicación del servidor" msgid "password for SASL authentication" msgstr "usar SSL para la comunicación del servidor" +#, fuzzy +msgid "timeout (in seconds) before giving up SASL authentication" +msgstr "usar SSL para la comunicación del servidor" + msgid "automatically connect to server when WeeChat is starting" msgstr "conectarse automáticamente al servidor cuando WeeChat se inicia" @@ -4525,6 +4529,11 @@ msgid "%s%s: this buffer is not a channel!" msgstr "%s%s: ¡este buffer no es un canal!" #, c-format +msgid "" +"%s%s: error building answer for SASL authentication, using mechanism \"%s\"" +msgstr "" + +#, c-format msgid "%s%s: client capability, server supports: %s" msgstr "" @@ -4540,6 +4549,18 @@ msgstr "" msgid "%s%s: client capability, enabled: %s" msgstr "" +#, fuzzy, c-format +msgid "" +"%s%s: cannot authenticate with SASL and mechanism DH-BLOWFISH because " +"WeeChat was not built with libgcrypt support" +msgstr "" +"%s%s: no es posible conectarse con SSL debido a que WeeChat no fue compilado " +"con soporte GnuTLS" + +#, fuzzy, c-format +msgid "%s%s: client capability, refused: %s" +msgstr "%s%s: set de caracteres inválido: \"%s\"" + #, c-format msgid "%sYou have been invited to %s%s%s by %s%s%s" msgstr "%sUsted ha sido invitado a %s%s%s por %s%s%s" @@ -6295,792 +6316,3 @@ msgstr "[argumentos]" #, fuzzy msgid "Pointer" msgstr "entero" - -#~ msgid "[-o]" -#~ msgstr "[-o]" - -#~ msgid "-o: send uptime to current buffer as input" -#~ msgstr "-o: envía el tiempo de uso al canal actual" - -#~ msgid "-o: send version to current buffer as input" -#~ msgstr "-o: envía la versión a la entrada del buffer actual" - -#~ msgid "time format for buffers" -#~ msgstr "formato de hora para los buffers" - -#~ msgid "%s%s: cannot find nick for sending message" -#~ msgstr "%s%s: no se pudo encontrar el apodo para enviarle el mensaje" - -#~ msgid "text: text to send" -#~ msgstr "texto: texto a enviar" - -#, fuzzy -#~ msgid "%s%s: error creating msgbuffer \"%s\" => \"%s\"" -#~ msgstr "%s%s: error al crear el set de caracteres \"%s\" => \"%s\"" - -#~ msgid "%s%s: error: \"%s\"" -#~ msgstr "%s%s: error: \"%s\"" - -#~ msgid "%s%s: missing argument for \"%s\" option" -#~ msgstr "%s%s: falta el argumento para la opción \"%s\"" - -#, fuzzy -#~ msgid "%s%s unable to run function \"%s\"" -#~ msgstr "No es posible escribir un fichero de log para un búfer\n" - -#~ msgid "%sUnknown CTCP %s%s%s received from %s%s%s: %s" -#~ msgstr "%sCTCP desconocido %s%s%s recibido de %s%s%s: %s" - -#, fuzzy -#~ msgid "%sUnknown CTCP %s%s%s received from %s%s%s" -#~ msgstr "%sCTCP desconocido %s%s%s recibido de %s%s" - -#, fuzzy -#~ msgid "list of %s scripts" -#~ msgstr "Lista de alias:\n" - -#, fuzzy -#~ msgid "%s%s: bind error on port %d" -#~ msgstr "%s no ha sido posible crear el socket\n" - -#, fuzzy -#~ msgid "" -#~ "port number (or range of ports) that relay plugin listens on (syntax: a " -#~ "single port, ie. 5000 or a port range, ie. 5000-5015, it's recommended to " -#~ "use ports greater than 1024, because only root can use ports below 1024)" -#~ msgstr "" -#~ "restringe el dcc de salida a utilizar únicamente los puertos del rango " -#~ "especificado (útil para NAT) (sintaxis: un puerto simple, e.g. 5000, o un " -#~ "rango de puertos, e.g. 5000-5015, un valor vacío significa cualquier " -#~ "puerto)" - -#, fuzzy -#~ msgid "%s%s: cannot find available port for listening" -#~ msgstr "%s no puede encontrar un puerto disponible para el DCC\n" - -#~ msgid "" -#~ " channel: channel where user is\n" -#~ "nickname: nickname to kick and ban\n" -#~ " comment: comment for kick" -#~ msgstr "" -#~ " canal: canal donde está el usuario\n" -#~ " apodo: apodo a expulsar y vetar\n" -#~ "comentario: comentario de la expulsión" - -#, fuzzy -#~ msgid "list of alias" -#~ msgstr "Lista de alias:\n" - -#~ msgid "alias_name" -#~ msgstr "alias" - -#, fuzzy -#~ msgid "No alias found" -#~ msgstr "Ningún alias definido.\n" - -#~ msgid "%s%s: error sending data to IRC server (%s)" -#~ msgstr "%s%s: error al enviar datos al servidor IRC (%s)" - -#~ msgid "%s%s: cannot read data from socket, disconnecting from server..." -#~ msgstr "" -#~ "%s%s: no ha sido posible leer datos del socket, desconectando del " -#~ "servidor..." - -#~ msgid "nicks" -#~ msgstr "apodos" - -#~ msgid "ops" -#~ msgstr "ops" - -#~ msgid "halfops" -#~ msgstr "semi-ops" - -#~ msgid "voices" -#~ msgstr "voces" - -#~ msgid "%sCTCP %sVERSION%s reply from %s%s%s: %s" -#~ msgstr "%sCTCP %sVERSION%s respuesta de %s%s%s: %s" - -#~ msgid "%sCTCP %sVERSION%s received from %s%s%s: %s" -#~ msgstr "%sCTCP %sVERSION%s recibido de %s%s%s: %s" - -#~ msgid "%sCTCP %sVERSION%s received from %s%s" -#~ msgstr "%sCTCP %sVERSION%s recibido de %s%s" - -#~ msgid "%sReceived a CTCP %sSOUND%s \"%s\" from %s%s" -#~ msgstr "%sRecibido a CTCP %sSOUND%s \"%s\" de %s%s" - -#~ msgid "%sCTCP %sPING%s received from %s%s" -#~ msgstr "%sCTCP %sPING%s recibido de %s%s" - -#, fuzzy -#~ msgid "text color for nick name in input line" -#~ msgstr "color para los nombres de usuario" - -#, fuzzy -#~ msgid "text color for nicklist separator" -#~ msgstr "color para el separador de alias" - -#, fuzzy -#~ msgid "servers" -#~ msgstr "servidor" - -#, fuzzy -#~ msgid "%s%s: auto-reconnection is cancelled" -#~ msgstr "La reconexión automática está anulada\n" - -#, fuzzy -#~ msgid "list, add or remove Jabber servers" -#~ msgstr "lista, añde o elimina servidores" - -#, fuzzy -#~ msgid "" -#~ "[list [servername]] | [listfull [servername]] | [add servername username " -#~ "hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | " -#~ "[copy servername newservername] | [rename servername newservername] | " -#~ "[keep servername] | [del servername] | [switch]" -#~ msgstr "" -#~ "[nombre_de_servidor] | [nombre_de_servidor nombre/IP puerto [-auto | -" -#~ "noauto] [-ipv6] [-ssl] [-pwd contraseña] [-nicks alias1 alias2 alias3] [-" -#~ "username nombre de usuario] [-realname nombre_real] [-command comando] [-" -#~ "autojoin canal[,canal]] ] | [del nombre_de_servidor]" - -#, fuzzy -#~ msgid "" -#~ " list: list servers (no parameter implies this list)\n" -#~ " listfull: list servers with detailed info for each server\n" -#~ " add: create a new server\n" -#~ "servername: server name, for internal and display use\n" -#~ " username: username to use on server\n" -#~ " hostname: name or IP address of server, with optional port (default: " -#~ "5222)\n" -#~ " password: password for username on server\n" -#~ " auto: automatically connect to server when WeeChat starts\n" -#~ " noauto: do not connect to server when WeeChat starts (default)\n" -#~ " ipv6: use IPv6 protocol\n" -#~ " tls: use TLS cryptographic protocol\n" -#~ " sasl: use SASL for authentication\n" -#~ " copy: duplicate a server\n" -#~ " rename: rename a server\n" -#~ " keep: keep server in config file (for temporary servers only)\n" -#~ " del: delete a server\n" -#~ " switch: switch active server (when one buffer is used for all " -#~ "servers, default key: alt-s on server buffer)\n" -#~ "\n" -#~ "Examples:\n" -#~ " /jabber listfull\n" -#~ " /jabber add jabberfr user jabber.fr/5222 password -tls\n" -#~ " /jabber copy jabberfr jabberfr2\n" -#~ " /jabber rename jabberfr jabbfr\n" -#~ " /jabber del jabberfr\n" -#~ " /jabber switch" -#~ msgstr "" -#~ " nombre_de_servidor: nombre del servidor, para uso interno y para " -#~ "mostrar\n" -#~ "nombre_de_anfitrión: nombre o dirección IP del servidor\n" -#~ " puerto: puerto para el servidor (número entero)\n" -#~ " ipv6: utilizar protocolo IPv6\n" -#~ " ssl: utilizar protocolo SSL\n" -#~ " contraseña: contraseña para el servidor\n" -#~ " alias1: primer alias para el servidor\n" -#~ " alias2: alias alternativo para el servidor\n" -#~ " alias3: segundo alias alternativo para el servidor\n" -#~ " nombre_de_usuario: nombre de usuario\n" -#~ " nombre_real: nombre real del usuario" - -#, fuzzy -#~ msgid "buddy [text]" -#~ msgstr "texto" - -#, fuzzy -#~ msgid "" -#~ "buddy: buddy name for chat\n" -#~ " text: text to send" -#~ msgstr "" -#~ "servicio: nombre del servicio\n" -#~ "texto: texto a enviar" - -#, fuzzy -#~ msgid "connect to Jabber server(s)" -#~ msgstr "conectarse a un servidor" - -#, fuzzy -#~ msgid "" -#~ "[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port " -#~ "port] [-ipv6] [-tls] [-sasl]]" -#~ msgstr "nombre_del_servidor: nombre del servidor al que conectarse" - -#, fuzzy -#~ msgid "" -#~ " -all: connect to all servers\n" -#~ "servername: internal server name to connect\n" -#~ " -nojoin: do not join any MUC (even if autojoin is enabled on server)\n" -#~ " hostname: hostname to connect\n" -#~ " port: port for server (integer, default is 6667)\n" -#~ " ipv6: use IPv6 protocol\n" -#~ " tls: use TLS cryptographic protocol\n" -#~ " saal: use SASL for authentication" -#~ msgstr "nombre_del_servidor: nombre del servidor al que conectarse" - -#, fuzzy -#~ msgid "disconnect from Jabber server(s)" -#~ msgstr "desconectarse de un servidor" - -#, fuzzy -#~ msgid "hostname/port or IP/port for server" -#~ msgstr "nombre de usuario a utilizar en el servidor IRC" - -#, fuzzy -#~ msgid "use TLS cryptographic protocol for server communication" -#~ msgstr "usar el protocolo IPv6 para la comunicación del servidor" - -#, fuzzy -#~ msgid "password" -#~ msgstr "contraseña de usuario" - -#, fuzzy -#~ msgid "local alias" -#~ msgstr "Lista de alias:\n" - -#, fuzzy -#~ msgid "" -#~ "command(s) to run when connected to server (many commands should be " -#~ "separated by ';', use '\\;' for a semicolon, special variables $nick, " -#~ "$muc and $server are replaced by their value)" -#~ msgstr "" -#~ "comando(s) a ejecutar cuando se conecte al servidor (muchos comandos " -#~ "deberían ser separados por ';', utilizar '\\;' para un punto y coma)" - -#, fuzzy -#~ msgid "" -#~ "comma separated list of MUCs to join when connected to server (example: " -#~ "\"#chan1,#chan2,#chan3 key1,key2\")" -#~ msgstr "" -#~ "lista de canales (separados por comas) a unirse cuando se conecte a un " -#~ "servidor (ejemplo: \"#chan1,#chan2,#chan3 key1,key2\")" - -#, fuzzy -#~ msgid "automatically rejoin MUCs when kicked" -#~ msgstr "unirse de nuevo automáticamente a los canales cuando sea expulsado" - -#~ msgid "use same buffer for all servers" -#~ msgstr "usar el mismo búfer para todos los servidores" - -#, fuzzy -#~ msgid "" -#~ "default part message (leaving MUC) ('%v' will be replaced by WeeChat " -#~ "version in string)" -#~ msgstr "" -#~ "mensaje de partida por defecto (abandonando el canal) ('%v' será " -#~ "reemplazado por la versión de WeeChat en la cadena)" - -#, fuzzy -#~ msgid "" -#~ "default quit message (disconnecting from server) ('%v' will be replaced " -#~ "by WeeChat version in string)" -#~ msgstr "" -#~ "mensaje de fin por defecto ('%v' será reemplazado por la versión de " -#~ "WeeChat en la cadena)" - -#, fuzzy -#~ msgid "" -#~ "allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, " -#~ "^Ccxx,yy=color+background, ^Cu=underline, ^Cr=reverse)" -#~ msgstr "" -#~ "permitir al usuario enviar colores con códigos especiales (%B=negrita, %" -#~ "Cxx,yy=color, %U=subrayado, %R=invertido) " - -#, fuzzy -#~ msgid "Jabber debug messages" -#~ msgstr "imprime mensajes de depuración" - -#, fuzzy -#~ msgid "get buffer pointer for a Jabber server/MUC" -#~ msgstr "lista de canales a unirse cuando se conecte a un servidor" - -#, fuzzy -#~ msgid "list of Jabber servers" -#~ msgstr "puerto para el servidor IRC" - -#, fuzzy -#~ msgid "list of MUCs for a Jabber server" -#~ msgstr "lista de canales a unirse cuando se conecte a un servidor" - -#, fuzzy -#~ msgid "list of buddies for a Jabber server or MUC" -#~ msgstr "lista de canales a unirse cuando se conecte a un servidor" - -#, fuzzy -#~ msgid "%s: this buffer is not a MUC!" -#~ msgstr "¡Esta ventana no es un canal!\n" - -#, fuzzy -#~ msgid "%s%s: cannot allocate new MUC" -#~ msgstr "%s no ha sido posible crear un nuevo canal" - -#, fuzzy -#~ msgid "%s%s: reconnecting to server in %d %s" -#~ msgstr "%s: Reconexión al servidor en %d segundos\n" - -#, fuzzy -#~ msgid "%s%s: connected to %s (%s)" -#~ msgstr "%s ¡no conectado al servidor \"%s\"!\n" - -#, fuzzy -#~ msgid "%s%s: GnuTLS init error" -#~ msgstr "%s error de inicialización de gnutls\n" - -#, fuzzy -#~ msgid "%s%s: GnuTLS handshake failed" -#~ msgstr "%s el handshake gnutls ha fallado\n" - -#, fuzzy -#~ msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..." -#~ msgstr "%s: conectando al servidor %s:%d%s%s vía %s proxy %s: %d%s...\n" - -#, fuzzy -#~ msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..." -#~ msgstr "Conectando al servidor %s:%d%s%s vía %s proxy %s:%d%s...\n" - -#, fuzzy -#~ msgid "%s%s: connecting to server %s/%d%s%s%s..." -#~ msgstr "%s: conectando al servidor %s:%d%s%s...\n" - -#, fuzzy -#~ msgid "" -#~ "%s%s: username or server not defined for server \"%s\", cannot connect" -#~ msgstr "%s usuario \"%s\" no encontrado para el comando \"%s\"\n" - -#, fuzzy -#~ msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect" -#~ msgstr "%s usuario \"%s\" no encontrado para el comando \"%s\"\n" - -#, fuzzy -#~ msgid "" -#~ "%s%s: cannot connect with TLS because iksemel library was not built with " -#~ "GnuTLS support" -#~ msgstr "" -#~ "%s No ha sido posible conectar con SSL debido a que Weechat no fue " -#~ "compilado con soporte GNUtls\n" - -#, fuzzy -#~ msgid "%s%s: failed to create stream parser" -#~ msgstr "%s no es posible crear el servidor\n" - -#, fuzzy -#~ msgid "%s%s: failed to create id" -#~ msgstr "%s no es posible crear el servidor\n" - -#, fuzzy -#~ msgid "%s%s: reconnecting to server..." -#~ msgstr "%s: Reconectando al servidor...\n" - -#, fuzzy -#~ msgid "%s%s: I/O error (%d)" -#~ msgstr "%sServidor: %s%s\n" - -#, fuzzy -#~ msgid "%s%s: SASL authentication failed (check SASL option and password)" -#~ msgstr "No es posible escribir un fichero de log para un búfer\n" - -#, fuzzy -#~ msgid "%s%s: server disconnected" -#~ msgstr "Servidor %s%s%s creado\n" - -#, fuzzy -#~ msgid "%s%s: stream error" -#~ msgstr "%sServidor: %s%s\n" - -#, fuzzy -#~ msgid "%s%s: login ok" -#~ msgstr "%s no es posible crear el servidor\n" - -#, fuzzy -#~ msgid "%s%s: authentication failed (check SASL option and password)" -#~ msgstr "No es posible escribir un fichero de log para un búfer\n" - -#, fuzzy -#~ msgid "" -#~ "%sError: plugin \"%s\" is compiled for WeeChat %s and you are running " -#~ "version %s, failed to load" -#~ msgstr "" -#~ "%s función \"weechat_plugin_init\" no encontrada en el plugin \"%s\", " -#~ "falló al cargar\n" - -#, fuzzy -#~ msgid "" -#~ "port number (or range of ports) that relay plugin listens on (syntax: a " -#~ "single port, ie. 5000 or a port range, ie. 5000-5015)" -#~ msgstr "" -#~ "restringe el dcc de salida a utilizar únicamente los puertos del rango " -#~ "especificado (útil para NAT) (sintaxis: un puerto simple, e.g. 5000, o un " -#~ "rango de puertos, e.g. 5000-5015, un valor vacío significa cualquier " -#~ "puerto)" - -#, fuzzy -#~ msgid "" -#~ "allow user to send colors with special codes (\"^Cb\"=bold, \"^Ccxx" -#~ "\"=color, \"^Ccxx,yy\"=color+background, \"^Cu\"=underline, \"^Cr" -#~ "\"=reverse)" -#~ msgstr "" -#~ "permitir al usuario enviar colores con códigos especiales (%B=negrita, %" -#~ "Cxx,yy=color, %U=subrayado, %R=invertido) " - -#, fuzzy -#~ msgid "filtered" -#~ msgstr "los usuarios han sido desactivados" - -#, fuzzy -#~ msgid "%s%s: unable to set notify level \"%s\" => \"%s\"" -#~ msgstr "" -#~ "No hay suficiente memoria para el mensaje de la barra de información\n" - -#, fuzzy -#~ msgid "%s%s: missing parameters" -#~ msgstr "%s falta un argumento para la opción --dir\n" - -#, fuzzy -#~ msgid "%s%s: unknown notify level \"%s\"" -#~ msgstr "%s opción desconocida para el comando \"%s\"\n" - -#, fuzzy -#~ msgid "change notify level for current buffer" -#~ msgstr "nombre de canal no encontrado para el búfer" - -#~ msgid "Notify levels:" -#~ msgstr "Niveles de notificación:" - -#~ msgid "[action [args] | number | [[server] [channel]]]" -#~ msgstr "[acción [argumentos] | número | [[servidor] [canal]]]" - -#, fuzzy -#~ msgid "%s%s: command \"%s\" must be executed on irc buffer" -#~ msgstr "" -#~ "%s el comando \"%s\" no puede ejecutarse en una ventana de servidor\n" - -#, fuzzy -#~ msgid " (used by a plugin)" -#~ msgstr " (sin plugins)\n" - -#, fuzzy -#~ msgid "%s%s: unknown/missing channel name for \"%s\" command" -#~ msgstr "%s faltan argumentos para el comando \"%s\"\n" - -#~ msgid "nickname [text]" -#~ msgstr "usuario [texto]" - -#~ msgid "data" -#~ msgstr "datos" - -#~ msgid "data: raw data to send" -#~ msgstr "datos: datos en sucio a enviar" - -#, fuzzy -#~ msgid "" -#~ "%s%s: cannot connect with TLS because WeeChat was not built with GnuTLS " -#~ "support" -#~ msgstr "" -#~ "%s No ha sido posible conectar con SSL debido a que Weechat no fue " -#~ "compilado con soporte GNUtls\n" - -#, fuzzy -#~ msgid "" -#~ "%s%s: cannot connect with SSL since WeeChat was not built with GnuTLS " -#~ "support" -#~ msgstr "" -#~ "%s No ha sido posible conectar con SSL debido a que Weechat no fue " -#~ "compilado con soporte GNUtls\n" - -#, fuzzy -#~ msgid "list of Jabber ignore" -#~ msgstr "puerto para el servidor IRC" - -#, fuzzy -#~ msgid "1 if string is a Jabber channel" -#~ msgstr "lista de usuarios en el canal" - -#, fuzzy -#~ msgid "get nick from Jabber host" -#~ msgstr "banea usuarios o máquinas" - -#, fuzzy -#~ msgid "list of nicks for a Jabber channel" -#~ msgstr "lista de usuarios en el canal" - -#, fuzzy -#~ msgid "" -#~ "[list [servername]] | [listfull [servername]] | [add username server[/" -#~ "port] [-auto | -noauto] [-ipv6] [-ssl]] | [copy servername newservername] " -#~ "| [rename servername newservername] | [keep servername] | [del " -#~ "servername] | [deloutq] | [switch]" -#~ msgstr "" -#~ "[nombre_de_servidor] | [nombre_de_servidor nombre/IP puerto [-auto | -" -#~ "noauto] [-ipv6] [-ssl] [-pwd contraseña] [-nicks alias1 alias2 alias3] [-" -#~ "username nombre de usuario] [-realname nombre_real] [-command comando] [-" -#~ "autojoin canal[,canal]] ] | [del nombre_de_servidor]" - -#, fuzzy -#~ msgid "nicknames to use on Jabber server (separated by comma)" -#~ msgstr "nombre de usuario a utilizar en el servidor IRC" - -#, fuzzy -#~ msgid "user name to use on Jabber server" -#~ msgstr "nombre de usuario para el servidor IRC" - -#, fuzzy -#~ msgid "real name to use on Jabber server" -#~ msgstr "nombre real para el servidor IRC" - -#, fuzzy -#~ msgid "send unknown commands to Jabber server" -#~ msgstr "nombre de usuario para el servidor IRC" - -#, fuzzy -#~ msgid "password for Jabber server" -#~ msgstr "contraseña para el servidor proxy" - -#~ msgid " . type: boolean\n" -#~ msgstr " . tipo: booleano\n" - -#, fuzzy -#~ msgid " . values: \"on\" or \"off\"\n" -#~ msgstr " . valores: 'on' u 'off'\n" - -#, fuzzy -#~ msgid " . default value: \"%s\"\n" -#~ msgstr " . valor por defecto: '%s'\n" - -#~ msgid " . type: string\n" -#~ msgstr " . tipo: cadena\n" - -#~ msgid " . values: " -#~ msgstr " . valores: " - -#~ msgid " . type: integer\n" -#~ msgstr " . tipo: entero\n" - -#~ msgid " . values: between %d and %d\n" -#~ msgstr " . valores: entre %d y %d\n" - -#~ msgid " . default value: %d\n" -#~ msgstr " . valor por defecto: %d\n" - -#~ msgid " . values: any string\n" -#~ msgstr " . valores: cualquier cadena\n" - -#, fuzzy -#~ msgid " . type: char\n" -#~ msgstr " . tipo: color\n" - -#, fuzzy -#~ msgid " . values: any char\n" -#~ msgstr " . valores: cualquier cadena\n" - -#, fuzzy -#~ msgid " . values: any string (limit: %d chars)\n" -#~ msgstr " . valores: cualquier cadena\n" - -#~ msgid " . type: color\n" -#~ msgstr " . tipo: color\n" - -#, fuzzy -#~ msgid " . values: color (depends on GUI used)\n" -#~ msgstr " . valores: entre %d y %d\n" - -#~ msgid " . description: %s\n" -#~ msgstr " . descripción: %s\n" - -#, fuzzy -#~ msgid "%sWarning: %s, line %d: invalid syntax, missing \"=\"" -#~ msgstr "%s %s, línea %d: sintaxis inválida, falta \"=\"\n" - -#, fuzzy -#~ msgid "value not defined" -#~ msgstr "Ningún alias definido.\n" - -#, fuzzy -#~ msgid "hidden" -#~ msgstr "(oculto)" - -#, fuzzy -#~ msgid "" -#~ "%s%s: error creating option \"%s\" for server \"%s\" (server not found)" -#~ msgstr "%s opción de configuración \"%s\" no encontrada\n" - -#, fuzzy -#~ msgid "display nicklist (on buffers with nicklist enabled)" -#~ msgstr "mostrar ventana de usuarios (para las ventanas de canal)" - -#, fuzzy -#~ msgid "" -#~ "max size for nicklist (width or height, depending on nicklist_position (0 " -#~ "= no max size; if min = max and > 0, then size is fixed))" -#~ msgstr "" -#~ "tamaño máximo para la ventana de usuarios (ancho o alto, dependiendo de " -#~ "look_nicklist_position (0 = sin tamaño máximo, si min == max y > 0, " -#~ "entonces se fija el tamaño))" - -#, fuzzy -#~ msgid "" -#~ "min size for nicklist (width or height, depending on nicklist_position (0 " -#~ "= no min size))" -#~ msgstr "" -#~ "tamaño mínimo para la ventana de usuarios (ancho o alto, dependiendo de " -#~ "look_nicklist_position (0 = sin tamaño mínimo))" - -#~ msgid "nicklist position (top, left, right (default), bottom)" -#~ msgstr "" -#~ "posición de la ventana de usuarios (arriba (top), izquierda (left), " -#~ "derecha (right, por defecto), abajo (bottom))" - -#, fuzzy -#~ msgid "%sBinary file not found: \"%s\"" -#~ msgstr "%s plugin \"%s\" no encontrado\n" - -#, fuzzy -#~ msgid "Upgrading WeeChat..." -#~ msgstr "Actualizando Weechat...\n" - -#, fuzzy -#~ msgid "timeout for relay request (in seconds)" -#~ msgstr "tiempo de espera para la petición dcc (en segundos)" - -#, fuzzy -#~ msgid "Open buffer with relay clients list" -#~ msgstr "Búfers abiertos:\n" - -#, fuzzy -#~ msgid "Open buffer with xfer list" -#~ msgstr "Búfers abiertos:\n" - -#, fuzzy -#~ msgid "%s%s: disconnecting client @ %s" -#~ msgstr "%s: Reconexión al servidor en %d segundos\n" - -#, fuzzy -#~ msgid " [Q] Close client list" -#~ msgstr " [Q] Cerrar la vista DCC" - -#, fuzzy -#~ msgid "use a proxy server" -#~ msgstr "nombre de usuario para el servidor proxy" - -#, fuzzy -#~ msgid "text color for title bar" -#~ msgstr "color para la barra de título" - -#, fuzzy -#~ msgid "background color for title bar" -#~ msgstr "color de fondo para la barra de título" - -#, fuzzy -#~ msgid "background color for status bar" -#~ msgstr "color para la barra de estado" - -#, fuzzy -#~ msgid "text color for status bar delimiters" -#~ msgstr "color para los delimitadores de la barra de estado" - -#, fuzzy -#~ msgid "text color for input line" -#~ msgstr "color para el texto de entrada" - -#, fuzzy -#~ msgid "background color for input line" -#~ msgstr "color para el texto de entrada" - -#, fuzzy -#~ msgid "text color for server name in input line" -#~ msgstr "color para el nombre del servidor" - -#, fuzzy -#~ msgid "text color for delimiters in input line" -#~ msgstr "color para los delimitadores de la barra de información" - -#, fuzzy -#~ msgid "text color for nicklist" -#~ msgstr "color para el nombre de usuario" - -#, fuzzy -#~ msgid "background color for nicklist" -#~ msgstr "color de fondo para los nombres de usuario" - -#, fuzzy -#~ msgid "debug: \"%s\" => %d" -#~ msgstr "Alias \"%s\" eliminado\n" - -#, fuzzy -#~ msgid "%s: debug enabled" -#~ msgstr "La tubería FIFO está abierta\n" - -#, fuzzy -#~ msgid "dump | buffer | windows | text" -#~ msgstr "volcar | ventanas" - -#~ msgid "automatically log server messages" -#~ msgstr "registrar automáticamente los mensajes de servidor" - -#~ msgid "automatically log channel chats" -#~ msgstr "registrar automáticamente las conversaciones de canal" - -#~ msgid "automatically log private chats" -#~ msgstr "registrar automáticamente las conversaciones privadas" - -#, fuzzy -#~ msgid "New level for buffer \"%s\" is %d" -#~ msgstr "fecha y hora para las búfers" - -#, fuzzy -#~ msgid "Notify level: %s => %s" -#~ msgstr "Niveles de notificación:" - -#, fuzzy -#~ msgid "Notify level: %s: removed" -#~ msgstr "Niveles de notificación:" - -#, fuzzy -#~ msgid "Error: unable to create \"%s\" directory\n" -#~ msgstr "%s no es posible crear el directorio \"%s\"\n" - -#, fuzzy -#~ msgid "%sError: filter not \"%s\" found" -#~ msgstr "%s plugin \"%s\" no encontrado\n" - -#, fuzzy -#~ msgid "Filter added" -#~ msgstr "los usuarios han sido desactivados" - -#, fuzzy -#~ msgid "%sError: wrong filter number" -#~ msgstr "%s número de búfer incorrecto\n" - -#, fuzzy -#~ msgid "Message filtering is enabled" -#~ msgstr "Ningún alias definido.\n" - -#, fuzzy -#~ msgid "Message filtering is disabled" -#~ msgstr "Ningún alias definido.\n" - -#, fuzzy -#~ msgid "Filters are disabled" -#~ msgstr "los usuarios han sido desactivados" - -#~ msgid "" -#~ "format for input prompt ('%c' is replaced by channel or server, '%n' by " -#~ "nick and '%m' by nick modes)" -#~ msgstr "" -#~ "formato para el prompt de entrada ('%c' es reemplazado por un canal o " -#~ "servidor, '%n' por un nick y '%m' por modos de nick)" - -#, fuzzy -#~ msgid "%s: creating new speller for lang \"%s\"" -#~ msgstr "" -#~ "No hay suficiente memoria para el mensaje de la barra de información\n" - -#, fuzzy -#~ msgid "Charset: %s, %s => %s" -#~ msgstr "Alias \"%s\" => \"%s\" creado\n" - -#~ msgid "-MORE-" -#~ msgstr "-MÁS-" @@ -6,8 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.2-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-02-15 11:45+0100\n" -"PO-Revision-Date: 2010-02-15 10:01+0100\n" +"POT-Creation-Date: 2010-02-18 19:55+0100\n" +"PO-Revision-Date: 2010-02-18 19:56+0100\n" "Last-Translator: FlashCode <flashcode@flashtux.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" "MIME-Version: 1.0\n" @@ -4169,6 +4169,11 @@ msgstr "nom d'utilisateur pour l'authentification SASL" msgid "password for SASL authentication" msgstr "mot de passe pour l'authentification SASL" +msgid "timeout (in seconds) before giving up SASL authentication" +msgstr "" +"délai d'attende maximum (en secondes) avant d'abandonner l'authentification " +"SASL" + msgid "automatically connect to server when WeeChat is starting" msgstr "connexion automatique au serveur quand WeeChat démarre" @@ -4568,6 +4573,13 @@ msgid "%s%s: this buffer is not a channel!" msgstr "%s%s: ce tampon n'est pas un canal !" #, c-format +msgid "" +"%s%s: error building answer for SASL authentication, using mechanism \"%s\"" +msgstr "" +"%s%s: erreur de construction de la réponse pour l'authentification SASL, en " +"utilisant le mécanisme \"%s\"" + +#, c-format msgid "%s%s: client capability, server supports: %s" msgstr "%s%s: client capability, le serveur supporte: %s" @@ -4584,6 +4596,18 @@ msgid "%s%s: client capability, enabled: %s" msgstr "%s%s: client capability, activé: %s" #, c-format +msgid "" +"%s%s: cannot authenticate with SASL and mechanism DH-BLOWFISH because " +"WeeChat was not built with libgcrypt support" +msgstr "" +"%s%s: impossible de s'authentifier avec SASL et le mécanisme DH-BLOWFISH car " +"WeeChat n'a pas été construit avec le support libgcrypt" + +#, c-format +msgid "%s%s: client capability, refused: %s" +msgstr "%s%s: client capability, refusé: %s" + +#, c-format msgid "%sYou have been invited to %s%s%s by %s%s%s" msgstr "%sVous avez été invité sur %s%s%s par %s%s%s" @@ -6341,6 +6365,3 @@ msgstr "Paramètres" msgid "Pointer" msgstr "Pointeur" - -#~ msgid "host" -#~ msgstr "nom d'hôte" @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.2-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-02-15 11:45+0100\n" -"PO-Revision-Date: 2010-01-23 11:57+0100\n" +"POT-Creation-Date: 2010-02-18 19:55+0100\n" +"PO-Revision-Date: 2010-02-18 19:54+0100\n" "Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" "MIME-Version: 1.0\n" @@ -3972,6 +3972,10 @@ msgstr "SSL használata a a kapcsolathoz" msgid "password for SASL authentication" msgstr "SSL használata a a kapcsolathoz" +#, fuzzy +msgid "timeout (in seconds) before giving up SASL authentication" +msgstr "SSL használata a a kapcsolathoz" + msgid "automatically connect to server when WeeChat is starting" msgstr "automatikus csatlakozás a szerverhez a WeeChat indulásakor" @@ -4375,6 +4379,11 @@ msgid "%s%s: this buffer is not a channel!" msgstr "Ez az ablak nem egy szoba!\n" #, c-format +msgid "" +"%s%s: error building answer for SASL authentication, using mechanism \"%s\"" +msgstr "" + +#, c-format msgid "%s%s: client capability, server supports: %s" msgstr "" @@ -4391,6 +4400,18 @@ msgid "%s%s: client capability, enabled: %s" msgstr "" #, fuzzy, c-format +msgid "" +"%s%s: cannot authenticate with SASL and mechanism DH-BLOWFISH because " +"WeeChat was not built with libgcrypt support" +msgstr "" +"%s nem sikerült SSL használattal kapcsolódni, mert a WeeChat GNUtls " +"támogatás nélkül lett fordítva\n" + +#, fuzzy, c-format +msgid "%s%s: client capability, refused: %s" +msgstr "Nem sikerült a(z) \"%s\" naplófájlt írni\n" + +#, fuzzy, c-format msgid "%sYou have been invited to %s%s%s by %s%s%s" msgstr "Meghívást kapott a %s%s%s szobába %s%s felhasználótól\n" @@ -6096,841 +6117,3 @@ msgstr "fogadó típusa [paraméterek]" #, fuzzy msgid "Pointer" msgstr "perc" - -#~ msgid "[-o]" -#~ msgstr "[-o]" - -#, fuzzy -#~ msgid "-o: send uptime to current buffer as input" -#~ msgstr "-o: a futásidő mint IRC üzenet elküldése az aktuális szobába" - -#, fuzzy -#~ msgid "time format for buffers" -#~ msgstr "a pufferek időbélyege" - -#, fuzzy -#~ msgid "%s%s: cannot find nick for sending message" -#~ msgstr "%s nem található név az üzenet küldéséhez\n" - -#~ msgid "text: text to send" -#~ msgstr "szöveg: küldendő szöveg" - -#, fuzzy -#~ msgid "%s%s: error creating msgbuffer \"%s\" => \"%s\"" -#~ msgstr "%s nincs elég memória az információs pult üzenethez\n" - -#, fuzzy -#~ msgid "%s%s: error: \"%s\"" -#~ msgstr "%sSzerver: %s%s\n" - -#, fuzzy -#~ msgid "%s%s: missing argument for \"%s\" option" -#~ msgstr "%s hiányzó argumentum a(z) \"%s\" opciónak\n" - -#, fuzzy -#~ msgid "%s%s unable to run function \"%s\"" -#~ msgstr "Nem sikerült a(z) \"%s\" naplófájlt írni\n" - -#, fuzzy -#~ msgid "%sUnknown CTCP %s%s%s received from %s%s%s: %s" -#~ msgstr "Ismeretlen CTCP %s%s%s érkezett innen: %s%s" - -#, fuzzy -#~ msgid "%sUnknown CTCP %s%s%s received from %s%s%s" -#~ msgstr "Ismeretlen CTCP %s%s%s érkezett innen: %s%s" - -#, fuzzy -#~ msgid "list of %s scripts" -#~ msgstr "Aliaszok listája:\n" - -#, fuzzy -#~ msgid "%s%s: bind error on port %d" -#~ msgstr "%s nem sikerült a csatornát létrehozni\n" - -#, fuzzy -#~ msgid "" -#~ "port number (or range of ports) that relay plugin listens on (syntax: a " -#~ "single port, ie. 5000 or a port range, ie. 5000-5015, it's recommended to " -#~ "use ports greater than 1024, because only root can use ports below 1024)" -#~ msgstr "" -#~ "korlátozza a dcc-t, hogy csak egy bizonyos tartományban lévő portokat " -#~ "használja (NAT esetén hasznos) (szintaxis: egyetlen port, pl. 5000 vagy " -#~ "egy port intervallum, pl. 5000-5015, üresen hagyva tetszőleges port)" - -#, fuzzy -#~ msgid "%s%s: cannot find available port for listening" -#~ msgstr "%s nem sikerült elérhető portot találni a DCC-hez\n" - -#~ msgid "" -#~ " channel: channel where user is\n" -#~ "nickname: nickname to kick and ban\n" -#~ " comment: comment for kick" -#~ msgstr "" -#~ " szoba: a szoba, ahol a felhasználó tartózkodik\n" -#~ " név: a kirúgandó és kitiltandó neve\n" -#~ "megjegyzés: megjegyzés a kirúgáshoz" - -#, fuzzy -#~ msgid "list of alias" -#~ msgstr "Aliaszok listája:\n" - -#~ msgid "alias_name" -#~ msgstr "alias_név" - -#, fuzzy -#~ msgid "Alias:" -#~ msgstr "Aliasz:\n" - -#, fuzzy -#~ msgid "No alias found" -#~ msgstr "Nem találtam aliaszt.\n" - -#, fuzzy -#~ msgid "%s%s: error sending data to IRC server (%s)" -#~ msgstr "%s adatküldési hiba az IRC szerveren\n" - -#, fuzzy -#~ msgid "%s%s: cannot read data from socket, disconnecting from server..." -#~ msgstr "" -#~ "%s nem sikerült adatot olvasni a csatornából, kilépés a szerverről...\n" - -#~ msgid "nicks" -#~ msgstr "név" - -#~ msgid "ops" -#~ msgstr "operátor" - -#~ msgid "halfops" -#~ msgstr "féloperátor" - -#~ msgid "voices" -#~ msgstr "voice" - -#, fuzzy -#~ msgid "%sCTCP %sVERSION%s reply from %s%s%s: %s" -#~ msgstr "CTCP %sVERSION%s válasz %s%s%s felhasználótól: %s\n" - -#, fuzzy -#~ msgid "%sCTCP %sVERSION%s received from %s%s%s: %s" -#~ msgstr "CTCP %sVERSION%s válasz innen: %s%s" - -#, fuzzy -#~ msgid "%sCTCP %sVERSION%s received from %s%s" -#~ msgstr "CTCP %sVERSION%s válasz innen: %s%s" - -#, fuzzy -#~ msgid "%sReceived a CTCP %sSOUND%s \"%s\" from %s%s" -#~ msgstr "CTCP %sSOUND%s (\"%s\") érkezett innen: %s%s\n" - -#, fuzzy -#~ msgid "%sCTCP %sPING%s received from %s%s" -#~ msgstr "CTCP %sPING%s érkezett innen: %s%s\n" - -#, fuzzy -#~ msgid "text color for nick name in input line" -#~ msgstr "nevek színe" - -#, fuzzy -#~ msgid "text color for nicklist separator" -#~ msgstr "névelválasztó színe" - -#, fuzzy -#~ msgid "servers" -#~ msgstr "szerver" - -#, fuzzy -#~ msgid "%s%s: auto-reconnection is cancelled" -#~ msgstr "automata újracsatlakozás megszakítva\n" - -#, fuzzy -#~ msgid "list, add or remove Jabber servers" -#~ msgstr "szerverek listázása, hozzáadása vagy eltávolítása" - -#, fuzzy -#~ msgid "" -#~ "[list [servername]] | [listfull [servername]] | [add servername username " -#~ "hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | " -#~ "[copy servername newservername] | [rename servername newservername] | " -#~ "[keep servername] | [del servername] | [switch]" -#~ msgstr "" -#~ "[list [szervernév]] | [listfull [szervernév]] | [add szervernév gépnév [-" -#~ "port port] [-temp] [-auto | -noauto] [-ipv6] [-ssl] [-pwd jelszó] [-nicks " -#~ "név1 név2 név3] [-username felhasználó] [-realname valódinév] [-command " -#~ "parancs] [-autojoin szoba[,szoba]] ] | [copy szervernév újszervernév] | " -#~ "[rename szervernév újszervernév] | [keep szervernév] | [del szervernév]" - -#, fuzzy -#~ msgid "" -#~ " list: list servers (no parameter implies this list)\n" -#~ " listfull: list servers with detailed info for each server\n" -#~ " add: create a new server\n" -#~ "servername: server name, for internal and display use\n" -#~ " username: username to use on server\n" -#~ " hostname: name or IP address of server, with optional port (default: " -#~ "5222)\n" -#~ " password: password for username on server\n" -#~ " auto: automatically connect to server when WeeChat starts\n" -#~ " noauto: do not connect to server when WeeChat starts (default)\n" -#~ " ipv6: use IPv6 protocol\n" -#~ " tls: use TLS cryptographic protocol\n" -#~ " sasl: use SASL for authentication\n" -#~ " copy: duplicate a server\n" -#~ " rename: rename a server\n" -#~ " keep: keep server in config file (for temporary servers only)\n" -#~ " del: delete a server\n" -#~ " switch: switch active server (when one buffer is used for all " -#~ "servers, default key: alt-s on server buffer)\n" -#~ "\n" -#~ "Examples:\n" -#~ " /jabber listfull\n" -#~ " /jabber add jabberfr user jabber.fr/5222 password -tls\n" -#~ " /jabber copy jabberfr jabberfr2\n" -#~ " /jabber rename jabberfr jabbfr\n" -#~ " /jabber del jabberfr\n" -#~ " /jabber switch" -#~ msgstr "" -#~ " list: szerverek listázása (paraméter nélkül is ez a parancs " -#~ "hívódik meg)\n" -#~ " listfull: szerverek listázása részletes információkkal együtt\n" -#~ " add: új szerver hozzáadása\n" -#~ " szervernév: szerver neve, saját használatra, megjelenítéshez\n" -#~ " gépnév: a szerver neve vagy IP-címe\n" -#~ " port: a szerver portja (egész szám, alapértelmezetten 6667)\n" -#~ " temp: ideiglenes szerver létrehozása (nem kerül be a " -#~ "beállítófájlba)\n" -#~ " auto: automatikus kapcsolódás a szerverhez a WeeChat " -#~ "indulásakor\n" -#~ " noauto: ne kapcsolódjon a szerverhez a WeeChat indulásakor " -#~ "(alapértelmezett)\n" -#~ " ipv6: IPv6 protokoll használata\n" -#~ " ssl: SSL protokoll használata\n" -#~ " jelszó: jelszó a szerverhez\n" -#~ " név1: elsődleges név a szerveren\n" -#~ " név2: alternatív név a szerveren\n" -#~ " név3: második alternatív név a szerveren\n" -#~ "felhasználónév: felhasználónév a szerveren\n" -#~ " valódi név: a felhasználó valódi neve\n" -#~ " copy: szerver másolása\n" -#~ " rename: szerver átnevezése\n" -#~ " keep: szerver mentése a beállítófájlba (csak ideiglenes " -#~ "szervereknél)\n" -#~ " del: szerver törlése\n" -#~ " deloutq: a kimenő üzenettár törlése minden szerverre (minden " -#~ "üzenet amit a WeeChat küldeni készül)" - -#, fuzzy -#~ msgid "buddy [text]" -#~ msgstr "szöveg" - -#, fuzzy -#~ msgid "" -#~ "buddy: buddy name for chat\n" -#~ " text: text to send" -#~ msgstr "" -#~ "szolgáltatás: szolgáltatás neve\n" -#~ " szöveg: küldendő üzenet" - -#, fuzzy -#~ msgid "connect to Jabber server(s)" -#~ msgstr "csatlakozás a szerver(ek)hez" - -#, fuzzy -#~ msgid "" -#~ "[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port " -#~ "port] [-ipv6] [-tls] [-sasl]]" -#~ msgstr "" -#~ "[-all [-nojoin] | szervernév [szervernév ...] [-nojoin] | gépnév [-port " -#~ "port] [-ipv6] [-ssl]]" - -#, fuzzy -#~ msgid "" -#~ " -all: connect to all servers\n" -#~ "servername: internal server name to connect\n" -#~ " -nojoin: do not join any MUC (even if autojoin is enabled on server)\n" -#~ " hostname: hostname to connect\n" -#~ " port: port for server (integer, default is 6667)\n" -#~ " ipv6: use IPv6 protocol\n" -#~ " tls: use TLS cryptographic protocol\n" -#~ " saal: use SASL for authentication" -#~ msgstr "" -#~ " -all: kapcsolódás minden szerverhez\n" -#~ "szervernév: a belső szervernév amihez kapcsolódik\n" -#~ " -nojoin: ne lépjen be egyik szobába se (még ha az automata belépés be " -#~ "is van kapcsolva a szerveren) gépnév: gépnév amihez csatlakozik, " -#~ "ideiglenes szerver létrehozása\n" -#~ " port: a szerver portja (egész szám, alapértelmezetten 6667)\n" -#~ " ipv6: IPv6 protokoll használata\n" -#~ " ssl: SSL protokoll használata" - -#, fuzzy -#~ msgid "disconnect from Jabber server(s)" -#~ msgstr "kilépés a szerver(ek)ről" - -#, fuzzy -#~ msgid "hostname/port or IP/port for server" -#~ msgstr "felhasználónév az IRC szerveren" - -#, fuzzy -#~ msgid "use TLS cryptographic protocol for server communication" -#~ msgstr "IPv6 protokoll használata a kapcsolathoz" - -#, fuzzy -#~ msgid "password" -#~ msgstr "felhasználó jelszó" - -#, fuzzy -#~ msgid "local alias" -#~ msgstr "Aliaszok listája:\n" - -#, fuzzy -#~ msgid "" -#~ "command(s) to run when connected to server (many commands should be " -#~ "separated by ';', use '\\;' for a semicolon, special variables $nick, " -#~ "$muc and $server are replaced by their value)" -#~ msgstr "" -#~ "szerverre csatlakozáskor futtatandó parancs(ok) (több parancs esetén " -#~ "azokat ';'-vel kell elválasztani, használja a '\\;' sorozatot, ha " -#~ "pontosvesszőtszeretne írni, a $nick, $channel és $server szavak helyére " -#~ "azok értéke kerül)" - -#, fuzzy -#~ msgid "" -#~ "comma separated list of MUCs to join when connected to server (example: " -#~ "\"#chan1,#chan2,#chan3 key1,key2\")" -#~ msgstr "" -#~ "szobák vesszővel elválasztott listája ahová be akarunk lépni csatlakozás " -#~ "után (például: \"#szoba1,#szoba2,#szoba3 kulcs1,kulcs2\")" - -#, fuzzy -#~ msgid "automatically rejoin MUCs when kicked" -#~ msgstr "automatikus visszalépés a szobába kirúgáskor" - -#~ msgid "use same buffer for all servers" -#~ msgstr "ugyanazon puffer használata minden szerverhez" - -#~ msgid "smart completion for nicks (completes with last speakers first)" -#~ msgstr "okos névkiegészítés (először az utolsó partnerre egészít ki)" - -#, fuzzy -#~ msgid "" -#~ "default part message (leaving MUC) ('%v' will be replaced by WeeChat " -#~ "version in string)" -#~ msgstr "" -#~ "alapértelmezett távozó üzenet (szoba elhagyásakor) (a '%v' változó a " -#~ "WeeChat verziójára cserélődik)" - -#, fuzzy -#~ msgid "" -#~ "default quit message (disconnecting from server) ('%v' will be replaced " -#~ "by WeeChat version in string)" -#~ msgstr "" -#~ "alapértelmezett kilépő üzenet (a '%v' változó a WeeChat verziójára " -#~ "cserélődik)" - -#~ msgid "" -#~ "allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, " -#~ "^Ccxx,yy=color+background, ^Cu=underline, ^Cr=reverse)" -#~ msgstr "" -#~ "színküldés engedélyezése speciális karakterekkel (^Cb=félkövér, " -#~ "^Ccxx=szín, ^Cxx,yy=szín+háttérszín ^Cu=aláhúzás, ^Cr=fordított)" - -#, fuzzy -#~ msgid "Jabber debug messages" -#~ msgstr "hibakereső üzenetek megjelenítése" - -#, fuzzy -#~ msgid "list of Jabber servers" -#~ msgstr "IRC szerver portja" - -#, fuzzy -#~ msgid "list of MUCs for a Jabber server" -#~ msgstr "szobák listája ahová be akarunk lépni csatlakozás után" - -#, fuzzy -#~ msgid "list of buddies for a Jabber server or MUC" -#~ msgstr "szobák listája ahová be akarunk lépni csatlakozás után" - -#, fuzzy -#~ msgid "%s: this buffer is not a MUC!" -#~ msgstr "Ez az ablak nem egy szoba!\n" - -#, fuzzy -#~ msgid "%s%s: cannot allocate new MUC" -#~ msgstr "%s nem sikerült új csatornát lefoglalni" - -#, fuzzy -#~ msgid "%s%s: reconnecting to server in %d %s" -#~ msgstr "%s: Újracsatlakozás a szerverhez %d másodperc múlva\n" - -#, fuzzy -#~ msgid "%s%s: connected to %s (%s)" -#~ msgstr "%s nincs csatlakozva a \"%s\" szerverhez!\n" - -#, fuzzy -#~ msgid "%s%s: GnuTLS init error" -#~ msgstr "%s gnutls inicializációs hiba\n" - -#, fuzzy -#~ msgid "%s%s: GnuTLS handshake failed" -#~ msgstr "%s gnutls kézfogás sikertelen\n" - -#, fuzzy -#~ msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..." -#~ msgstr "" -#~ "%s: csatlakozás a(z) %s:%d%s%s szerverhez %s proxy kiszolgálón keresztül: " -#~ "%s:%d%s...\n" - -#, fuzzy -#~ msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..." -#~ msgstr "" -#~ "Csatlakozás a(z) %s:%d%s%s szerverhez %s proxy kiszolgálón keresztül: %s:%" -#~ "d%s...\n" - -#, fuzzy -#~ msgid "%s%s: connecting to server %s/%d%s%s%s..." -#~ msgstr "%s: csatlakozás a(z) %s:%d%s%s szerverhez...\n" - -#, fuzzy -#~ msgid "" -#~ "%s%s: username or server not defined for server \"%s\", cannot connect" -#~ msgstr "%s név \"%s\" nem található a \"%s\" parancshoz\n" - -#, fuzzy -#~ msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect" -#~ msgstr "%s név \"%s\" nem található a \"%s\" parancshoz\n" - -#, fuzzy -#~ msgid "" -#~ "%s%s: cannot connect with TLS because iksemel library was not built with " -#~ "GnuTLS support" -#~ msgstr "" -#~ "%s nem sikerült SSL használattal kapcsolódni, mert a WeeChat GNUtls " -#~ "támogatás nélkül lett fordítva\n" - -#, fuzzy -#~ msgid "%s%s: failed to create stream parser" -#~ msgstr "%s nem sikerült a szervert létrehozni\n" - -#, fuzzy -#~ msgid "%s%s: failed to create id" -#~ msgstr "%s DCC: nem sikerült a csövet létrehozni\n" - -#, fuzzy -#~ msgid "%s%s: reconnecting to server..." -#~ msgstr "%s: Újracsatlakozás a szerverhez...\n" - -#, fuzzy -#~ msgid "%s%s: I/O error (%d)" -#~ msgstr "%sSzerver: %s%s\n" - -#, fuzzy -#~ msgid "%s%s: SASL authentication failed (check SASL option and password)" -#~ msgstr "Nem sikerült a(z) \"%s\" naplófájlt írni\n" - -#, fuzzy -#~ msgid "%s%s: server disconnected" -#~ msgstr "A %s%s%s szerver létrehozva\n" - -#, fuzzy -#~ msgid "%s%s: stream error" -#~ msgstr "%sSzerver: %s%s\n" - -#, fuzzy -#~ msgid "%s%s: login ok" -#~ msgstr "%s DCC: nem sikerült forkolni\n" - -#, fuzzy -#~ msgid "%s%s: authentication failed (check SASL option and password)" -#~ msgstr "Nem sikerült a(z) \"%s\" naplófájlt írni\n" - -#, fuzzy -#~ msgid "" -#~ "%sError: plugin \"%s\" is compiled for WeeChat %s and you are running " -#~ "version %s, failed to load" -#~ msgstr "" -#~ "%s a \"weechat_plugin_init\" függvény nem található a \"%s\" modulban, " -#~ "betöltés sikertelen\n" - -#, fuzzy -#~ msgid "" -#~ "port number (or range of ports) that relay plugin listens on (syntax: a " -#~ "single port, ie. 5000 or a port range, ie. 5000-5015)" -#~ msgstr "" -#~ "korlátozza a dcc-t, hogy csak egy bizonyos tartományban lévő portokat " -#~ "használja (NAT esetén hasznos) (szintaxis: egyetlen port, pl. 5000 vagy " -#~ "egy port intervallum, pl. 5000-5015, üresen hagyva tetszőleges port)" - -#, fuzzy -#~ msgid "" -#~ "allow user to send colors with special codes (\"^Cb\"=bold, \"^Ccxx" -#~ "\"=color, \"^Ccxx,yy\"=color+background, \"^Cu\"=underline, \"^Cr" -#~ "\"=reverse)" -#~ msgstr "" -#~ "színküldés engedélyezése speciális karakterekkel (^Cb=félkövér, " -#~ "^Ccxx=szín, ^Cxx,yy=szín+háttérszín ^Cu=aláhúzás, ^Cr=fordított)" - -#, fuzzy -#~ msgid "filtered" -#~ msgstr "a felhasználók le lettek tiltva" - -#, fuzzy -#~ msgid "%s%s: unable to set notify level \"%s\" => \"%s\"" -#~ msgstr "%s nincs elég memória az információs pult üzenethez\n" - -#, fuzzy -#~ msgid "%s%s: missing parameters" -#~ msgstr "%s hiányzó argumentum a(z) \"%s\" opciónak\n" - -#, fuzzy -#~ msgid "%s%s: unknown notify level \"%s\"" -#~ msgstr "%s ismeretlen billentyűparancs \"%s\"\n" - -#, fuzzy -#~ msgid "change notify level for current buffer" -#~ msgstr "szobanév nem található a pufferhez" - -#~ msgid "Notify levels:" -#~ msgstr "Értesítési szintek:" - -#, fuzzy -#~ msgid "" -#~ "smart completion for nicks (completes first with last speakers, " -#~ "highlights or both)" -#~ msgstr "okos névkiegészítés (először az utolsó partnerre egészít ki)" - -#~ msgid "[action [args] | number | [[server] [channel]]]" -#~ msgstr "[utasítás[argumentumok] | szám | [[szerver] [szoba]]]" - -#, fuzzy -#~ msgid "%s%s: command \"%s\" must be executed on irc buffer" -#~ msgstr "%s \"%s\" parancs nem futtatható a szerverablakban\n" - -#, fuzzy -#~ msgid " (used by a plugin)" -#~ msgstr " (nem található bővítőmodul)\n" - -#, fuzzy -#~ msgid "%s%s: unknown/missing channel name for \"%s\" command" -#~ msgstr "%s hiányzó argumentum a \"%s\" parancsnak\n" - -#~ msgid "nickname [text]" -#~ msgstr "becenév [szöveg]" - -#~ msgid "data" -#~ msgstr "adat" - -#~ msgid "data: raw data to send" -#~ msgstr "adat: küldendő nyers üzenet" - -#, fuzzy -#~ msgid "" -#~ "%s%s: cannot connect with TLS because WeeChat was not built with GnuTLS " -#~ "support" -#~ msgstr "" -#~ "%s nem sikerült SSL használattal kapcsolódni, mert a WeeChat GNUtls " -#~ "támogatás nélkül lett fordítva\n" - -#, fuzzy -#~ msgid "" -#~ "%s%s: cannot connect with SSL since WeeChat was not built with GnuTLS " -#~ "support" -#~ msgstr "" -#~ "%s nem sikerült SSL használattal kapcsolódni, mert a WeeChat GNUtls " -#~ "támogatás nélkül lett fordítva\n" - -#, fuzzy -#~ msgid "list of Jabber ignore" -#~ msgstr "IRC szerver portja" - -#, fuzzy -#~ msgid "1 if string is a Jabber channel" -#~ msgstr "felhasználók listája a szobában" - -#, fuzzy -#~ msgid "get nick from Jabber host" -#~ msgstr "név vagy gép letiltása" - -#, fuzzy -#~ msgid "list of nicks for a Jabber channel" -#~ msgstr "felhasználók listája a szobában" - -#, fuzzy -#~ msgid "" -#~ "[list [servername]] | [listfull [servername]] | [add username server[/" -#~ "port] [-auto | -noauto] [-ipv6] [-ssl]] | [copy servername newservername] " -#~ "| [rename servername newservername] | [keep servername] | [del " -#~ "servername] | [deloutq] | [switch]" -#~ msgstr "" -#~ "[list [szervernév]] | [listfull [szervernév]] | [add szervernév gépnév [-" -#~ "port port] [-temp] [-auto | -noauto] [-ipv6] [-ssl] [-pwd jelszó] [-nicks " -#~ "név1 név2 név3] [-username felhasználó] [-realname valódinév] [-command " -#~ "parancs] [-autojoin szoba[,szoba]] ] | [copy szervernév újszervernév] | " -#~ "[rename szervernév újszervernév] | [keep szervernév] | [del szervernév]" - -#, fuzzy -#~ msgid "nicknames to use on Jabber server (separated by comma)" -#~ msgstr "felhasználónév az IRC szerveren" - -#, fuzzy -#~ msgid "user name to use on Jabber server" -#~ msgstr "használni kívánt felhasználónév az IRC szerveren" - -#, fuzzy -#~ msgid "real name to use on Jabber server" -#~ msgstr "az IRC szerveren használt valódi név" - -#, fuzzy -#~ msgid "send unknown commands to Jabber server" -#~ msgstr "ismeretlen parancsok küldése az IRC szervernek" - -#, fuzzy -#~ msgid "password for Jabber server" -#~ msgstr "jelszó a proxy szerverhez" - -#~ msgid " . type: boolean\n" -#~ msgstr " . típus: logikai\n" - -#, fuzzy -#~ msgid " . values: \"on\" or \"off\"\n" -#~ msgstr " . értékek: 'on' vagy 'off'\n" - -#, fuzzy -#~ msgid " . default value: \"%s\"\n" -#~ msgstr " . alapérték: '%s'\n" - -#~ msgid " . type: string\n" -#~ msgstr " . típus: szöveg\n" - -#~ msgid " . values: " -#~ msgstr " . értékek: " - -#~ msgid " . type: integer\n" -#~ msgstr " . típus: szám\n" - -#~ msgid " . values: between %d and %d\n" -#~ msgstr " . értékek: %d és %d között\n" - -#~ msgid " . default value: %d\n" -#~ msgstr " . alapérték: %d\n" - -#~ msgid " . values: any string\n" -#~ msgstr " . érték: bármilyen szöveg\n" - -#~ msgid " . type: char\n" -#~ msgstr " . típus: karakter\n" - -#~ msgid " . values: any char\n" -#~ msgstr " . érték: bármilyen karakter\n" - -#~ msgid " . values: any string (limit: %d chars)\n" -#~ msgstr " . érték: bármilyen szöveg (korlát: %d karakter)\n" - -#~ msgid " . type: color\n" -#~ msgstr " . típus: szín\n" - -#, fuzzy -#~ msgid " . values: color (depends on GUI used)\n" -#~ msgstr " . értékek: %d és %d között\n" - -#~ msgid " . description: %s\n" -#~ msgstr " . leírás : %s\n" - -#, fuzzy -#~ msgid "%sWarning: %s, line %d: invalid syntax, missing \"=\"" -#~ msgstr "%s %s, %d. sor: érvénytelen szintaxis, hiányzó \"=\"\n" - -#, fuzzy -#~ msgid "value not defined" -#~ msgstr "Nincs aliasz definiálva.\n" - -#, fuzzy -#~ msgid "hidden" -#~ msgstr "(rejtett)" - -#, fuzzy -#~ msgid "" -#~ "%s%s: error creating option \"%s\" for server \"%s\" (server not found)" -#~ msgstr "%s a \"%s\" opció nem található\n" - -#, fuzzy -#~ msgid "display nicklist (on buffers with nicklist enabled)" -#~ msgstr "névlista ablak mutatása (szobaablakban)" - -#, fuzzy -#~ msgid "" -#~ "max size for nicklist (width or height, depending on nicklist_position (0 " -#~ "= no max size; if min = max and > 0, then size is fixed))" -#~ msgstr "" -#~ "névlista maximális mérete (szélesség vagy magasság a " -#~ "look_nicklist_position opciónak megfelelően (0 = nincs maximális érték; " -#~ "ha min = max és > 0, akkor a méret fix))" - -#, fuzzy -#~ msgid "" -#~ "min size for nicklist (width or height, depending on nicklist_position (0 " -#~ "= no min size))" -#~ msgstr "" -#~ "névlista minimális mérete (szélesség vagy magasság a " -#~ "look_nicklist_position opciónak megfelelően (0 = nincs minimális érték))" - -#~ msgid "nicklist position (top, left, right (default), bottom)" -#~ msgstr "névlista helye (top, left, right (alapértelmezett), bottom)" - -#~ msgid "separator between chat and nicklist" -#~ msgstr "a névlista és a beszélgetőablak közti elválasztó" - -#, fuzzy -#~ msgid "%sBinary file not found: \"%s\"" -#~ msgstr "%s a \"%s\" modul nem található\n" - -#, fuzzy -#~ msgid "Upgrading WeeChat..." -#~ msgstr "WeeChat frissítése...\n" - -#, fuzzy -#~ msgid "timeout for relay request (in seconds)" -#~ msgstr "dcc kérések időkorlátja (másodpercben)" - -#, fuzzy -#~ msgid "Open buffer with relay clients list" -#~ msgstr "Nyitott pufferek:\n" - -#, fuzzy -#~ msgid "Open buffer with xfer list" -#~ msgstr "Nyitott pufferek:\n" - -#, fuzzy -#~ msgid "%s%s: disconnecting client @ %s" -#~ msgstr "%s: Újracsatlakozás a szerverhez %d másodperc múlva\n" - -#, fuzzy -#~ msgid " [Q] Close client list" -#~ msgstr " [Q] DCC nézet bezárása" - -#, fuzzy -#~ msgid "use a proxy server" -#~ msgstr "felhasználónév a proxy szerverhez" - -#, fuzzy -#~ msgid "text color for title bar" -#~ msgstr "címsor színe" - -#, fuzzy -#~ msgid "background color for title bar" -#~ msgstr "címsor háttere" - -#, fuzzy -#~ msgid "background color for status bar" -#~ msgstr "státuszsor színe" - -#, fuzzy -#~ msgid "text color for status bar delimiters" -#~ msgstr "státuszsor határolójel színe" - -#, fuzzy -#~ msgid "text color for input line" -#~ msgstr "szövegbeviteli mező színe" - -#, fuzzy -#~ msgid "background color for input line" -#~ msgstr "szövegbeviteli mező színe" - -#, fuzzy -#~ msgid "text color for server name in input line" -#~ msgstr "szerver nevének színe" - -#, fuzzy -#~ msgid "text color for delimiters in input line" -#~ msgstr "információs pult határolóinak színe" - -#, fuzzy -#~ msgid "text color for nicklist" -#~ msgstr "név színe" - -#, fuzzy -#~ msgid "background color for nicklist" -#~ msgstr "nevek háttere" - -#, fuzzy -#~ msgid "debug: \"%s\" => %d" -#~ msgstr "A \"%s\" aliasz eltávolítva\n" - -#, fuzzy -#~ msgid "%s: debug enabled" -#~ msgstr "FIFO cső nyitva\n" - -#~ msgid "automatically log server messages" -#~ msgstr "szerverüzenetek automatikus naplózása" - -#~ msgid "automatically log channel chats" -#~ msgstr "szobabeszélgetések automatikus naplózása" - -#~ msgid "automatically log private chats" -#~ msgstr "személyes beszélgetése automatikus naplózása" - -#, fuzzy -#~ msgid "New level for buffer \"%s\" is %d" -#~ msgstr "a pufferek időbélyege" - -#, fuzzy -#~ msgid "Notify level: %s => %s" -#~ msgstr "Értesítési szintek:" - -#, fuzzy -#~ msgid "Notify level: %s: removed" -#~ msgstr "Értesítési szintek:" - -#, fuzzy -#~ msgid "Error: unable to create \"%s\" directory\n" -#~ msgstr "%s nem sikerült a \"%s\" könyvtárat létrehozni\n" - -#, fuzzy -#~ msgid "%sError: filter not \"%s\" found" -#~ msgstr "%s a \"%s\" modul nem található\n" - -#, fuzzy -#~ msgid "Filter added" -#~ msgstr "a felhasználók le lettek tiltva" - -#, fuzzy -#~ msgid "%sError: wrong filter number" -#~ msgstr "%s helytelen pufferszám\n" - -#, fuzzy -#~ msgid "Message filtering is enabled" -#~ msgstr "Nincs aliasz definiálva.\n" - -#, fuzzy -#~ msgid "Message filtering is disabled" -#~ msgstr "Nincs aliasz definiálva.\n" - -#, fuzzy -#~ msgid "Filters are disabled" -#~ msgstr "a felhasználók le lettek tiltva" - -#~ msgid "" -#~ "format for input prompt ('%c' is replaced by channel or server, '%n' by " -#~ "nick and '%m' by nick modes)" -#~ msgstr "" -#~ "beviteli mező kinézete ('%c' helyére a szoba vagy a szerver, '%n' helyére " -#~ "a név és '%m' helyére a mód kerül)" - -#~ msgid "Text search (exact): " -#~ msgstr "Szöveg keresése (pontos): " - -#~ msgid "Text search: " -#~ msgstr "Szöveg keresése: " - -#, fuzzy -#~ msgid "%s: creating new speller for lang \"%s\"" -#~ msgstr "%s nincs elég memória az információs pult üzenethez\n" - -#, fuzzy -#~ msgid "Charset: %s, %s => %s" -#~ msgstr "A \"%s\" => \"%s\" aliasz elkészült\n" - -#~ msgid " Paste %d lines ? [ctrl-Y] Yes [ctrl-N] No" -#~ msgstr " Beszúrható %d sor? [ctrl-Y] Igen [ctrl-N] Nem" - -#~ msgid "-MORE-" -#~ msgstr "-TOVÁBB-" @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: Weechat 0.3.2-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-02-15 11:45+0100\n" -"PO-Revision-Date: 2010-01-23 11:57+0100\n" +"POT-Creation-Date: 2010-02-18 19:55+0100\n" +"PO-Revision-Date: 2010-02-18 19:54+0100\n" "Last-Translator: Marco Paolone <marcopaolone@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" "MIME-Version: 1.0\n" @@ -4121,6 +4121,9 @@ msgstr "" msgid "password for SASL authentication" msgstr "" +msgid "timeout (in seconds) before giving up SASL authentication" +msgstr "" + msgid "automatically connect to server when WeeChat is starting" msgstr "connette automaticamente ai server all'avvio di WeeChat" @@ -4523,6 +4526,11 @@ msgid "%s%s: this buffer is not a channel!" msgstr "%s%s: questo buffer non è un canale!" #, c-format +msgid "" +"%s%s: error building answer for SASL authentication, using mechanism \"%s\"" +msgstr "" + +#, c-format msgid "%s%s: client capability, server supports: %s" msgstr "" @@ -4538,6 +4546,18 @@ msgstr "" msgid "%s%s: client capability, enabled: %s" msgstr "" +#, fuzzy, c-format +msgid "" +"%s%s: cannot authenticate with SASL and mechanism DH-BLOWFISH because " +"WeeChat was not built with libgcrypt support" +msgstr "" +"%s%s: impossibile connettersi via SSL poiché WeeChat non è stato compilato " +"con il supporto a GnuTLS" + +#, fuzzy, c-format +msgid "%s%s: client capability, refused: %s" +msgstr "%s%s: set di caratter invalido: \"%s\"" + #, c-format msgid "%sYou have been invited to %s%s%s by %s%s%s" msgstr "%sSei stato invitato su %s%s%s da %s%s%s" @@ -6270,15 +6290,3 @@ msgstr "[argomenti]" #, fuzzy msgid "Pointer" msgstr "intero" - -#~ msgid "[-o]" -#~ msgstr "[-o]" - -#~ msgid "-o: send uptime to current buffer as input" -#~ msgstr "-o: invia l'uptime al buffer corrente come input" - -#~ msgid "-o: send version to current buffer as input" -#~ msgstr "-o: invia versione al buffer corrente come input" - -#~ msgid "time format for buffers" -#~ msgstr "formato dell'ora per i buffer" @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.0-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-02-15 11:45+0100\n" -"PO-Revision-Date: 2010-02-09 15:52+0100\n" +"POT-Creation-Date: 2010-02-18 19:55+0100\n" +"PO-Revision-Date: 2010-02-18 19:54+0100\n" "Last-Translator: Krzysztof Koroscik <soltys@szluug.org>\n" "Language-Team: Polish\n" "MIME-Version: 1.0\n" @@ -4120,6 +4120,9 @@ msgstr "" msgid "password for SASL authentication" msgstr "" +msgid "timeout (in seconds) before giving up SASL authentication" +msgstr "" + msgid "automatically connect to server when WeeChat is starting" msgstr "automatycznie połącz się z serwerem przy uruchamianiu WeeChat" @@ -4519,6 +4522,11 @@ msgid "%s%s: this buffer is not a channel!" msgstr "%s%s: to nie jest bufor kanału" #, c-format +msgid "" +"%s%s: error building answer for SASL authentication, using mechanism \"%s\"" +msgstr "" + +#, c-format msgid "%s%s: client capability, server supports: %s" msgstr "" @@ -4534,6 +4542,18 @@ msgstr "" msgid "%s%s: client capability, enabled: %s" msgstr "" +#, fuzzy, c-format +msgid "" +"%s%s: cannot authenticate with SASL and mechanism DH-BLOWFISH because " +"WeeChat was not built with libgcrypt support" +msgstr "" +"%s%s: nie można połączyć używając SSL, ponieważ WeeChat został skompilowany " +"bez wsparcia dla GnuTLS" + +#, fuzzy, c-format +msgid "%s%s: client capability, refused: %s" +msgstr "%s%s: nieprawidłowe kodowanie: \"%s\"" + #, c-format msgid "%sYou have been invited to %s%s%s by %s%s%s" msgstr "%sZostałeś zaproszony na %s%s%s przez %s%s%s" @@ -6257,148 +6277,3 @@ msgstr "[argumenty]" #, fuzzy msgid "Pointer" msgstr "liczba" - -#~ msgid "[-o]" -#~ msgstr "[-o]" - -#~ msgid "-o: send uptime to current buffer as input" -#~ msgstr "-o: wysyła czas pracy jako wejście do obecnego bufora" - -#~ msgid "-o: send version to current buffer as input" -#~ msgstr "-o: wysyła wersję jako wejście do obecnego bufora" - -#~ msgid "time format for buffers" -#~ msgstr "format czasu dla buforów" - -#~ msgid "%s%s: cannot find nick for sending message" -#~ msgstr "%s%s: nie można znaleźć nicku do wysłania wiadomości" - -#~ msgid "text: text to send" -#~ msgstr "tekst: tekst do wysłania" - -#~ msgid "%s%s: error: \"%s\"" -#~ msgstr "%s%s: błąd: \"%s\"" - -#~ msgid "%s%s: missing argument for \"%s\" option" -#~ msgstr "%s%s: brakuje argumentu dla opcji \"%s\"" - -#~ msgid "" -#~ " -all: connect to all servers\n" -#~ "servername: internal server name to connect\n" -#~ " -nojoin: do not join any channel (even if autojoin is enabled on " -#~ "server)\n" -#~ " hostname: hostname to connect\n" -#~ " port: port for server (integer, default is 6667)\n" -#~ " ipv6: use IPv6 protocol\n" -#~ " ssl: use SSL protocol" -#~ msgstr "" -#~ " -all: łączy się ze wszystkimi serwerami\n" -#~ "nazwa_serwera: wewnętrzna nazwa serwera do połączenia\n" -#~ " -nojoin: nie wchodź na żaden kanał (nawet jeśli serwer posiada " -#~ "zdefiniowane kanały, z któreymi sam ma się połączyć)\n" -#~ " nazwa_hosta: nazwa hosta, z która ma sie połączyć\n" -#~ " port: port serwera (liczba całkowita, domyślnie 6667)\n" -#~ " ipv6: użyj protokołu IPv6\n" -#~ " ssl: użyj protokołu SSL " - -#~ msgid "" -#~ " channel: channel where user is\n" -#~ "nickname: nickname to kick and ban\n" -#~ " comment: comment for kick" -#~ msgstr "" -#~ " kanał: kanał, na którym znajduje się użytkownik\n" -#~ "nick: osoba do wykopania i zbanowania\n" -#~ " komentarz: powód " - -#~ msgid "%sUnknown CTCP %s%s%s received from %s%s%s: %s" -#~ msgstr "%sNieznane CTCP %s%s%s otrzymano od %s%s%s: %s" - -#~ msgid "%sUnknown CTCP %s%s%s received from %s%s%s" -#~ msgstr "%sNieznane CTCP %s%s%s otrzymano od %s%s%s" - -#~ msgid "%s: new client @ %s" -#~ msgstr "%s: nowy klient @ %s" - -#~ msgid "" -#~ " list: list relay clients\n" -#~ "listfull: list relay clients (verbose)\n" -#~ "\n" -#~ "Without argument, this command opens buffer with list of relay clients." -#~ msgstr "" -#~ " list: lista klientów do przekazania\n" -#~ "listfull: lista klientów do przekazania (szczegułowa)\n" -#~ "\n" -#~ "Bez argumentów komenda otworzy bufor z lista zdalnych klientów." - -#~ msgid "enable relay" -#~ msgstr "włącz przekazywanie" - -#~ msgid "" -#~ "port number (or range of ports) that relay plugin listens on (syntax: a " -#~ "single port, ie. 5000 or a port range, ie. 5000-5015, it's recommended to " -#~ "use ports greater than 1024, because only root can use ports below 1024)" -#~ msgstr "" -#~ "numer portu (albo przedział), na którym nasłuchuje wtyczka relay " -#~ "(składnia: pojedynczy port, np. 5000 lub przedział portó, np. 5000-5015, " -#~ "zaleca się stosowanie portów powyżej 1024, ponieważ tylko root może " -#~ "używać portów poniżej 1024)" - -#~ msgid "%s%s: option \"listen_port_range\" is not defined" -#~ msgstr "%s%s: nie zdefiniowana opcja \"listen_port_range\" " - -#~ msgid "%s%s: cannot find available port for listening" -#~ msgstr "%s%s: nie można znaleźc dostępnego portu do nasłuchu" - -#~ msgid "%s%s unable to run function \"%s\"" -#~ msgstr "%s%s nie można wykonać funkcji \"%s\"" - -#~ msgid "list of %s scripts" -#~ msgstr "lista skryptów %s " - -#~ msgid "Alias:" -#~ msgstr "Alias:" - -#~ msgid "No alias found" -#~ msgstr "Nie znaleziono żadnego aliasu" - -#~ msgid "alias_name" -#~ msgstr "nazwa_aliasu" - -#~ msgid "%sCTCP %sVERSION%s reply from %s%s%s: %s" -#~ msgstr "%sCTCP %sVERSION%s odpowiedź od %s%s%s: %s" - -#~ msgid "%sCTCP %sVERSION%s received from %s%s%s: %s" -#~ msgstr "%sCTCP %sVERSION%s otrzymano od %s%s%s: %s" - -#~ msgid "%sCTCP %sVERSION%s received from %s%s" -#~ msgstr "%sCTCP %sVERSION%s otrzymano od %s%s" - -#~ msgid "%sReceived a CTCP %sSOUND%s \"%s\" from %s%s" -#~ msgstr "%sOtrzymano CTCP %sSOUND%s \"%s\" od %s%s" - -#~ msgid "%sCTCP %sPING%s received from %s%s" -#~ msgstr "%sCTCP %sPING%s otrzymane od %s%s" - -#~ msgid "nicks" -#~ msgstr "nicki" - -#~ msgid "ops" -#~ msgstr "opy" - -#~ msgid "halfops" -#~ msgstr "halfopy" - -#~ msgid "voices" -#~ msgstr "voice" - -#~ msgid "%s%s: cannot read data from socket, disconnecting from server..." -#~ msgstr "%s%s: nie można odczytać danych z gniazda, rozłączam z serwerem..." - -#~ msgid "text color for nick name in input line" -#~ msgstr "kolor nicku w wprowadzonej lini" - -#~ msgid "Bar \"%s\" is now hidden" -#~ msgstr "Pasek \"%s\" został ukryty" - -#~ msgid "Bar \"%s\" is now visible" -#~ msgstr "Pasek \"%s\" jest teraz widoczny" @@ -6,8 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.2-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-02-15 11:45+0100\n" -"PO-Revision-Date: 2010-01-23 11:57+0100\n" +"POT-Creation-Date: 2010-02-18 19:55+0100\n" +"PO-Revision-Date: 2010-02-18 19:55+0100\n" "Last-Translator: Pavel Shevchuk <stlwrt@gmail.com>\n" "Language-Team: weechat-dev <weechat-dev@nongnu.org>\n" "MIME-Version: 1.0\n" @@ -3973,6 +3973,10 @@ msgstr "использовать SSL при связи с сервером" msgid "password for SASL authentication" msgstr "использовать SSL при связи с сервером" +#, fuzzy +msgid "timeout (in seconds) before giving up SASL authentication" +msgstr "использовать SSL при связи с сервером" + msgid "automatically connect to server when WeeChat is starting" msgstr "подключаться к серверу автоматически при запуске WeeChat" @@ -4377,6 +4381,11 @@ msgid "%s%s: this buffer is not a channel!" msgstr "Это окно не является каналом!\n" #, c-format +msgid "" +"%s%s: error building answer for SASL authentication, using mechanism \"%s\"" +msgstr "" + +#, c-format msgid "%s%s: client capability, server supports: %s" msgstr "" @@ -4393,6 +4402,18 @@ msgid "%s%s: client capability, enabled: %s" msgstr "" #, fuzzy, c-format +msgid "" +"%s%s: cannot authenticate with SASL and mechanism DH-BLOWFISH because " +"WeeChat was not built with libgcrypt support" +msgstr "" +"%s невозможно соединиться с использованием SSL, так как WeeChat собран без " +"поддержки GNUtls\n" + +#, fuzzy, c-format +msgid "%s%s: client capability, refused: %s" +msgstr "Не могу записать лог-файл \"%s\"\n" + +#, fuzzy, c-format msgid "%sYou have been invited to %s%s%s by %s%s%s" msgstr "Вас пригласил на %s%s%s пользователь %s%s\n" @@ -6094,832 +6115,3 @@ msgstr "адресат тип [аргументы]" #, fuzzy msgid "Pointer" msgstr "минута" - -#~ msgid "[-o]" -#~ msgstr "[-o]" - -#, fuzzy -#~ msgid "-o: send uptime to current buffer as input" -#~ msgstr "-o: отправить uptime сообщением в текущий канал" - -#, fuzzy -#~ msgid "time format for buffers" -#~ msgstr "время в буферах" - -#, fuzzy -#~ msgid "%s%s: cannot find nick for sending message" -#~ msgstr "%s не могу найти адресата сообщения\n" - -#~ msgid "text: text to send" -#~ msgstr "текст: отправляемый текст" - -#, fuzzy -#~ msgid "%s%s: error creating msgbuffer \"%s\" => \"%s\"" -#~ msgstr "%s недостаточно памяти для сообщения в строке информации\n" - -#, fuzzy -#~ msgid "%s%s: error: \"%s\"" -#~ msgstr "%sСервер: %s%s\n" - -#, fuzzy -#~ msgid "%s%s: missing argument for \"%s\" option" -#~ msgstr "%s нет аргумента для параметра \"%s\"\n" - -#, fuzzy -#~ msgid "%s%s unable to run function \"%s\"" -#~ msgstr "Не могу записать лог-файл \"%s\"\n" - -#, fuzzy -#~ msgid "%sUnknown CTCP %s%s%s received from %s%s%s: %s" -#~ msgstr "Получен неизвестный CTCP %s%s%s от %s%s" - -#, fuzzy -#~ msgid "%sUnknown CTCP %s%s%s received from %s%s%s" -#~ msgstr "Получен неизвестный CTCP %s%s%s от %s%s" - -#, fuzzy -#~ msgid "list of %s scripts" -#~ msgstr "Список сокращений:\n" - -#, fuzzy -#~ msgid "%s%s: bind error on port %d" -#~ msgstr "%s невозможно создать сокет\n" - -#, fuzzy -#~ msgid "" -#~ "port number (or range of ports) that relay plugin listens on (syntax: a " -#~ "single port, ie. 5000 or a port range, ie. 5000-5015, it's recommended to " -#~ "use ports greater than 1024, because only root can use ports below 1024)" -#~ msgstr "" -#~ "привязывает исходящие DCС соединения к определённому интервалу портов " -#~ "(полезно для NAT) (синтаксис: определённый порт, например 5000, или " -#~ "интервал портов, например 5000-5015, пустое значение означает любой порт)" - -#, fuzzy -#~ msgid "%s%s: cannot find available port for listening" -#~ msgstr "%s не могу найти свободный порт для DCC\n" - -#~ msgid "" -#~ " channel: channel where user is\n" -#~ "nickname: nickname to kick and ban\n" -#~ " comment: comment for kick" -#~ msgstr "" -#~ " канал: канал, на котором присутствует пользователь\n" -#~ " ник: цель для кика и бана\n" -#~ "комментарий: причина кика" - -#, fuzzy -#~ msgid "list of alias" -#~ msgstr "Список сокращений:\n" - -#~ msgid "alias_name" -#~ msgstr "сокращение" - -#, fuzzy -#~ msgid "Alias:" -#~ msgstr "Сокращение:\n" - -#, fuzzy -#~ msgid "No alias found" -#~ msgstr "Сокращения не найдены.\n" - -#, fuzzy -#~ msgid "%s%s: error sending data to IRC server (%s)" -#~ msgstr "%s ошибка при отправке данных IRC серверу\n" - -#, fuzzy -#~ msgid "%s%s: cannot read data from socket, disconnecting from server..." -#~ msgstr "" -#~ "%s невозможно прочитать данные из сокета, отключаюсь от сервера...\n" - -#~ msgid "nicks" -#~ msgstr "ники" - -#~ msgid "ops" -#~ msgstr "опы" - -#~ msgid "halfops" -#~ msgstr "полуопы" - -#~ msgid "voices" -#~ msgstr "войсы" - -#, fuzzy -#~ msgid "%sCTCP %sVERSION%s reply from %s%s%s: %s" -#~ msgstr "Ответ на CTCP %sVERSION%s от %s%s%s: %s\n" - -#, fuzzy -#~ msgid "%sCTCP %sVERSION%s received from %s%s%s: %s" -#~ msgstr "Получен CTCP %sVERSION%s от %s%s" - -#, fuzzy -#~ msgid "%sCTCP %sVERSION%s received from %s%s" -#~ msgstr "Получен CTCP %sVERSION%s от %s%s" - -#, fuzzy -#~ msgid "%sReceived a CTCP %sSOUND%s \"%s\" from %s%s" -#~ msgstr "Получен CTCP %sSOUND%s \"%s\" от %s%s\n" - -#, fuzzy -#~ msgid "%sCTCP %sPING%s received from %s%s" -#~ msgstr "Получен CTCP %sPING%s от %s%s\n" - -#, fuzzy -#~ msgid "text color for nick name in input line" -#~ msgstr "цвет ников" - -#, fuzzy -#~ msgid "text color for nicklist separator" -#~ msgstr "цвет разделителя ников" - -#, fuzzy -#~ msgid "servers" -#~ msgstr "сервер" - -#, fuzzy -#~ msgid "%s%s: auto-reconnection is cancelled" -#~ msgstr "Авто-переподключение отменено\n" - -#, fuzzy -#~ msgid "list, add or remove Jabber servers" -#~ msgstr "перечислить, добавить или удалить серверы" - -#, fuzzy -#~ msgid "" -#~ "[list [servername]] | [listfull [servername]] | [add servername username " -#~ "hostname[/port] password [-auto | -noauto] [-ipv6] [-tls] [-sasl]] | " -#~ "[copy servername newservername] | [rename servername newservername] | " -#~ "[keep servername] | [del servername] | [switch]" -#~ msgstr "" -#~ "[list [сервер]] | [listfull [сервер]] | [add сервер адрес [-port порт] [-" -#~ "temp] [-auto | -noauto] [-ipv6] [-ssl] [-pwd пароль] [-nicks ник1 ник2 " -#~ "ник3] [-username имя_пользователя] [-realname реальное_имя] [-command " -#~ "команда] [-autojoin канал[,канал]] ] | [copy сервер новый_сервер] | " -#~ "[rename сервер новое_имя] | [keep сервер] | [del сервер]" - -#, fuzzy -#~ msgid "" -#~ " list: list servers (no parameter implies this list)\n" -#~ " listfull: list servers with detailed info for each server\n" -#~ " add: create a new server\n" -#~ "servername: server name, for internal and display use\n" -#~ " username: username to use on server\n" -#~ " hostname: name or IP address of server, with optional port (default: " -#~ "5222)\n" -#~ " password: password for username on server\n" -#~ " auto: automatically connect to server when WeeChat starts\n" -#~ " noauto: do not connect to server when WeeChat starts (default)\n" -#~ " ipv6: use IPv6 protocol\n" -#~ " tls: use TLS cryptographic protocol\n" -#~ " sasl: use SASL for authentication\n" -#~ " copy: duplicate a server\n" -#~ " rename: rename a server\n" -#~ " keep: keep server in config file (for temporary servers only)\n" -#~ " del: delete a server\n" -#~ " switch: switch active server (when one buffer is used for all " -#~ "servers, default key: alt-s on server buffer)\n" -#~ "\n" -#~ "Examples:\n" -#~ " /jabber listfull\n" -#~ " /jabber add jabberfr user jabber.fr/5222 password -tls\n" -#~ " /jabber copy jabberfr jabberfr2\n" -#~ " /jabber rename jabberfr jabbfr\n" -#~ " /jabber del jabberfr\n" -#~ " /jabber switch" -#~ msgstr "" -#~ " list: перечислить серверы (отсутствие параметров подразумевает этот " -#~ "список)\n" -#~ "listfull: перечислить серверы с подробностями\n" -#~ " add: создать новый сервер\n" -#~ " сервер: имя сервера\n" -#~ "hostname: адрес сервера\n" -#~ " port: порт сервера (целочисленное значение)\n" -#~ " temp: создать временный сервер (не сохраняется в конфигурационном " -#~ "файле)\n" -#~ " auto: автоматически подключаться к серверу при запуске WeeChat\n" -#~ " noauto: не подключаться автоматически к серверу при запуске WeeChat\n" -#~ " ipv6: использовать протокол IPv6\n" -#~ " ssl: использовать протокол SSL\n" -#~ "password: пароль от сервера\n" -#~ " nick1: ник на сервере\n" -#~ " nick2: альтернативный ник на сервере\n" -#~ " nick3: запасной альтернативный ник на сервере\n" -#~ "username: имя пользователя\n" -#~ "realname: настоящее имя\n" -#~ " copy: создать копию сервера\n" -#~ " rename: переименовать сервер\n" -#~ " keep: сохранить временный сервер\n" -#~ " del: удалить сервер deloutq: очистить очередь исходящих сообщений " -#~ "для всех серверов (сообщения, отправляемые WeeChatом)" - -#, fuzzy -#~ msgid "buddy [text]" -#~ msgstr "текст" - -#, fuzzy -#~ msgid "" -#~ "buddy: buddy name for chat\n" -#~ " text: text to send" -#~ msgstr "" -#~ "сервис: название сервиса\n" -#~ " текст: отправляемый текст" - -#, fuzzy -#~ msgid "connect to Jabber server(s)" -#~ msgstr "подключиться к серверу(-ам)" - -#, fuzzy -#~ msgid "" -#~ "[-all [-nojoin] | servername [servername ...] [-nojoin] | hostname [-port " -#~ "port] [-ipv6] [-tls] [-sasl]]" -#~ msgstr "" -#~ "[-all [-nojoin] | сервер [servername ...] [-nojoin] | адрес [-port порт] " -#~ "[-ipv6] [-ssl]]" - -#, fuzzy -#~ msgid "" -#~ " -all: connect to all servers\n" -#~ "servername: internal server name to connect\n" -#~ " -nojoin: do not join any MUC (even if autojoin is enabled on server)\n" -#~ " hostname: hostname to connect\n" -#~ " port: port for server (integer, default is 6667)\n" -#~ " ipv6: use IPv6 protocol\n" -#~ " tls: use TLS cryptographic protocol\n" -#~ " saal: use SASL for authentication" -#~ msgstr "" -#~ " -all: переподключиться ко всем серверам\n" -#~ " сервер: название сервера для переподключения\n" -#~ "-nojoin: не заходить на каналы (даже если автозаход включен для сервера)\n" -#~ " адрес: адрес сервера, создавая временный сервер\n" -#~ " порт: порт сервера (число, по-умолчанию - 6667)\n" -#~ " ipv6: использовать протокол IPv6\n" -#~ " ssl: использовать протокол SSL" - -#, fuzzy -#~ msgid "disconnect from Jabber server(s)" -#~ msgstr "отключиться от сервера(-ов)" - -#, fuzzy -#~ msgid "hostname/port or IP/port for server" -#~ msgstr "ник, используемый на IRC сервере" - -#, fuzzy -#~ msgid "use TLS cryptographic protocol for server communication" -#~ msgstr "использовать IPv6 при связи с сервером" - -#, fuzzy -#~ msgid "password" -#~ msgstr "пользователь пароль" - -#, fuzzy -#~ msgid "local alias" -#~ msgstr "Список сокращений:\n" - -#, fuzzy -#~ msgid "" -#~ "command(s) to run when connected to server (many commands should be " -#~ "separated by ';', use '\\;' for a semicolon, special variables $nick, " -#~ "$muc and $server are replaced by their value)" -#~ msgstr "" -#~ "команды, выполняемые при подключении к серверу (несколько команд должны " -#~ "быть разделены символом ';', используйте '\\;' вместо обычной точки с " -#~ "запятой, специальные переменные $nick, $channel и $server заменяются на " -#~ "соответствующие значения)" - -#, fuzzy -#~ msgid "" -#~ "comma separated list of MUCs to join when connected to server (example: " -#~ "\"#chan1,#chan2,#chan3 key1,key2\")" -#~ msgstr "" -#~ "разделённый запятыми список каналов, на которые заходить при подключении " -#~ "к серверу (например, \"#chan1,#chan2,#chan3 key1,key2\")" - -#, fuzzy -#~ msgid "automatically rejoin MUCs when kicked" -#~ msgstr "автоматически перезаходить на каналы после кика" - -#~ msgid "use same buffer for all servers" -#~ msgstr "один буфер для всех серверов" - -#~ msgid "smart completion for nicks (completes with last speakers first)" -#~ msgstr "умное дополнение ников (начинает перебор с последних собеседников)" - -#, fuzzy -#~ msgid "" -#~ "default part message (leaving MUC) ('%v' will be replaced by WeeChat " -#~ "version in string)" -#~ msgstr "сообщение покидания канала ('%v' будет заменён на версию WeeChat)" - -#, fuzzy -#~ msgid "" -#~ "default quit message (disconnecting from server) ('%v' will be replaced " -#~ "by WeeChat version in string)" -#~ msgstr "" -#~ "сообщение о выходе по-умолчанию ('%v' будет заменён на версию WeeChat)" - -#~ msgid "" -#~ "allow user to send colors with special codes (^Cb=bold, ^Ccxx=color, " -#~ "^Ccxx,yy=color+background, ^Cu=underline, ^Cr=reverse)" -#~ msgstr "" -#~ "позволить отправлять цвета специальными кодами (^Cb=жирный, " -#~ "^Ccxx=цветной, ^Ccxx,yy=цветной+фон, ^Cu=подчёркнутый, " -#~ "^Cr=инвертированный)" - -#, fuzzy -#~ msgid "Jabber debug messages" -#~ msgstr "выводить отладочные сообщения" - -#, fuzzy -#~ msgid "list of Jabber servers" -#~ msgstr "порт IRC сервера" - -#, fuzzy -#~ msgid "list of MUCs for a Jabber server" -#~ msgstr "Список каналов, на которые заходить при соединении с сервером" - -#, fuzzy -#~ msgid "list of buddies for a Jabber server or MUC" -#~ msgstr "Список каналов, на которые заходить при соединении с сервером" - -#, fuzzy -#~ msgid "%s: this buffer is not a MUC!" -#~ msgstr "Это окно не является каналом!\n" - -#, fuzzy -#~ msgid "%s%s: cannot allocate new MUC" -#~ msgstr "%s не могу расположить новый канал" - -#, fuzzy -#~ msgid "%s%s: reconnecting to server in %d %s" -#~ msgstr "%s: Повторное подключение к серверу через %d секунд\n" - -#, fuzzy -#~ msgid "%s%s: connected to %s (%s)" -#~ msgstr "%s не подключен к серверу \"%s\"!\n" - -#, fuzzy -#~ msgid "%s%s: GnuTLS init error" -#~ msgstr "%s ошибка инициализации gnutls\n" - -#, fuzzy -#~ msgid "%s%s: GnuTLS handshake failed" -#~ msgstr "%s инициализация gnutls не удалось\n" - -#, fuzzy -#~ msgid "%s%s: connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..." -#~ msgstr "%s: подключение к серверу %s:%d%s%s через %s proxy %s:%d%s...\n" - -#, fuzzy -#~ msgid "Connecting to server %s/%d%s%s%s via %s proxy %s/%d%s..." -#~ msgstr "Подключаюсь к серверу %s:%d%s%s через %s proxy %s:%d%s...\n" - -#, fuzzy -#~ msgid "%s%s: connecting to server %s/%d%s%s%s..." -#~ msgstr "%s: поключаюсь к серверу %s:%d%s%s...\n" - -#, fuzzy -#~ msgid "" -#~ "%s%s: username or server not defined for server \"%s\", cannot connect" -#~ msgstr "%s ник \"%s\" не найден для команды \"%s\"\n" - -#, fuzzy -#~ msgid "%s%s: hostname/IP not defined for server \"%s\", cannot connect" -#~ msgstr "%s ник \"%s\" не найден для команды \"%s\"\n" - -#, fuzzy -#~ msgid "" -#~ "%s%s: cannot connect with TLS because iksemel library was not built with " -#~ "GnuTLS support" -#~ msgstr "" -#~ "%s невозможно соединиться с использованием SSL, так как WeeChat собран " -#~ "без поддержки GNUtls\n" - -#, fuzzy -#~ msgid "%s%s: failed to create stream parser" -#~ msgstr "%s не могу создать сервер\n" - -#, fuzzy -#~ msgid "%s%s: failed to create id" -#~ msgstr "%s DCC: не могу создать pipe\n" - -#, fuzzy -#~ msgid "%s%s: reconnecting to server..." -#~ msgstr "%s: Повторное соединение...\n" - -#, fuzzy -#~ msgid "%s%s: I/O error (%d)" -#~ msgstr "%sСервер: %s%s\n" - -#, fuzzy -#~ msgid "%s%s: SASL authentication failed (check SASL option and password)" -#~ msgstr "Не могу записать лог-файл \"%s\"\n" - -#, fuzzy -#~ msgid "%s%s: server disconnected" -#~ msgstr "Сервер %s%s%s создан\n" - -#, fuzzy -#~ msgid "%s%s: stream error" -#~ msgstr "%sСервер: %s%s\n" - -#, fuzzy -#~ msgid "%s%s: login ok" -#~ msgstr "%s DCC: не могу forkнуться\n" - -#, fuzzy -#~ msgid "%s%s: authentication failed (check SASL option and password)" -#~ msgstr "Не могу записать лог-файл \"%s\"\n" - -#, fuzzy -#~ msgid "" -#~ "%sError: plugin \"%s\" is compiled for WeeChat %s and you are running " -#~ "version %s, failed to load" -#~ msgstr "" -#~ "%s функция \"weechat_plugin_init\" не найдена в plugin'е \"%s\", загрузка " -#~ "не удалась\n" - -#, fuzzy -#~ msgid "" -#~ "port number (or range of ports) that relay plugin listens on (syntax: a " -#~ "single port, ie. 5000 or a port range, ie. 5000-5015)" -#~ msgstr "" -#~ "привязывает исходящие DCС соединения к определённому интервалу портов " -#~ "(полезно для NAT) (синтаксис: определённый порт, например 5000, или " -#~ "интервал портов, например 5000-5015, пустое значение означает любой порт)" - -#, fuzzy -#~ msgid "" -#~ "allow user to send colors with special codes (\"^Cb\"=bold, \"^Ccxx" -#~ "\"=color, \"^Ccxx,yy\"=color+background, \"^Cu\"=underline, \"^Cr" -#~ "\"=reverse)" -#~ msgstr "" -#~ "позволить отправлять цвета специальными кодами (^Cb=жирный, " -#~ "^Ccxx=цветной, ^Ccxx,yy=цветной+фон, ^Cu=подчёркнутый, " -#~ "^Cr=инвертированный)" - -#, fuzzy -#~ msgid "filtered" -#~ msgstr "команда users отключена" - -#, fuzzy -#~ msgid "%s%s: unable to set notify level \"%s\" => \"%s\"" -#~ msgstr "%s недостаточно памяти для сообщения в строке информации\n" - -#, fuzzy -#~ msgid "%s%s: missing parameters" -#~ msgstr "%s нет аргумента для параметра \"%s\"\n" - -#, fuzzy -#~ msgid "%s%s: unknown notify level \"%s\"" -#~ msgstr "%s неизвестная функция клавиши \"%s\"\n" - -#, fuzzy -#~ msgid "change notify level for current buffer" -#~ msgstr "не найдено имя канала для буфера" - -#~ msgid "Notify levels:" -#~ msgstr "Уровни уведомления:" - -#, fuzzy -#~ msgid "" -#~ "smart completion for nicks (completes first with last speakers, " -#~ "highlights or both)" -#~ msgstr "умное дополнение ников (начинает перебор с последних собеседников)" - -#~ msgid "[action [args] | number | [[server] [channel]]]" -#~ msgstr "[действие [аргументы] | номер | [[сервер] [канал]]]" - -#, fuzzy -#~ msgid "%s%s: command \"%s\" must be executed on irc buffer" -#~ msgstr "%s \"%s\" команда может быть выполнена только в буфере сервера\n" - -#, fuzzy -#~ msgid " (used by a plugin)" -#~ msgstr " (нет pluginа)\n" - -#, fuzzy -#~ msgid "%s%s: unknown/missing channel name for \"%s\" command" -#~ msgstr "%s нет аргументов для \"%s\" команды\n" - -#~ msgid "nickname [text]" -#~ msgstr "ник [текст]" - -#~ msgid "data" -#~ msgstr "данные" - -#~ msgid "data: raw data to send" -#~ msgstr "данные: отправляемые данные" - -#, fuzzy -#~ msgid "" -#~ "%s%s: cannot connect with TLS because WeeChat was not built with GnuTLS " -#~ "support" -#~ msgstr "" -#~ "%s невозможно соединиться с использованием SSL, так как WeeChat собран " -#~ "без поддержки GNUtls\n" - -#, fuzzy -#~ msgid "" -#~ "%s%s: cannot connect with SSL since WeeChat was not built with GnuTLS " -#~ "support" -#~ msgstr "" -#~ "%s невозможно соединиться с использованием SSL, так как WeeChat собран " -#~ "без поддержки GNUtls\n" - -#, fuzzy -#~ msgid "list of Jabber ignore" -#~ msgstr "порт IRC сервера" - -#, fuzzy -#~ msgid "1 if string is a Jabber channel" -#~ msgstr "список ников на канале" - -#, fuzzy -#~ msgid "get nick from Jabber host" -#~ msgstr "банит ник или хост" - -#, fuzzy -#~ msgid "list of nicks for a Jabber channel" -#~ msgstr "список ников на канале" - -#, fuzzy -#~ msgid "" -#~ "[list [servername]] | [listfull [servername]] | [add username server[/" -#~ "port] [-auto | -noauto] [-ipv6] [-ssl]] | [copy servername newservername] " -#~ "| [rename servername newservername] | [keep servername] | [del " -#~ "servername] | [deloutq] | [switch]" -#~ msgstr "" -#~ "[list [сервер]] | [listfull [сервер]] | [add сервер адрес [-port порт] [-" -#~ "temp] [-auto | -noauto] [-ipv6] [-ssl] [-pwd пароль] [-nicks ник1 ник2 " -#~ "ник3] [-username имя_пользователя] [-realname реальное_имя] [-command " -#~ "команда] [-autojoin канал[,канал]] ] | [copy сервер новый_сервер] | " -#~ "[rename сервер новое_имя] | [keep сервер] | [del сервер]" - -#, fuzzy -#~ msgid "nicknames to use on Jabber server (separated by comma)" -#~ msgstr "ник, используемый на IRC сервере" - -#, fuzzy -#~ msgid "user name to use on Jabber server" -#~ msgstr "имя пользователя, используемое на IRC сервере" - -#, fuzzy -#~ msgid "real name to use on Jabber server" -#~ msgstr "настоящее имя, используемое на IRC сервере" - -#, fuzzy -#~ msgid "send unknown commands to Jabber server" -#~ msgstr "отсылать неизвестные команды IRC серверу" - -#, fuzzy -#~ msgid "password for Jabber server" -#~ msgstr "пароль к proxy серверу" - -#~ msgid " . type: boolean\n" -#~ msgstr " . тип: булевый\n" - -#, fuzzy -#~ msgid " . values: \"on\" or \"off\"\n" -#~ msgstr " . значения: 'on' или 'off'\n" - -#, fuzzy -#~ msgid " . default value: \"%s\"\n" -#~ msgstr " . значение по умолчанию: '%s'\n" - -#~ msgid " . type: string\n" -#~ msgstr " . тип: строка\n" - -#~ msgid " . values: " -#~ msgstr " . значения: " - -#~ msgid " . type: integer\n" -#~ msgstr " . тип: целочисленный\n" - -#~ msgid " . values: between %d and %d\n" -#~ msgstr " . значения: от %d до %d\n" - -#~ msgid " . default value: %d\n" -#~ msgstr " . значение по умолчанию: %d\n" - -#~ msgid " . values: any string\n" -#~ msgstr " . значения: любая строка\n" - -#~ msgid " . type: char\n" -#~ msgstr " . тип: символ\n" - -#~ msgid " . values: any char\n" -#~ msgstr " . значения: любой символ\n" - -#~ msgid " . values: any string (limit: %d chars)\n" -#~ msgstr " . значения: любая строка (ограничение: %d символов)\n" - -#~ msgid " . type: color\n" -#~ msgstr " . тип: цвет\n" - -#, fuzzy -#~ msgid " . values: color (depends on GUI used)\n" -#~ msgstr " . значения: от %d до %d\n" - -#~ msgid " . description: %s\n" -#~ msgstr " . описание: %s\n" - -#, fuzzy -#~ msgid "%sWarning: %s, line %d: invalid syntax, missing \"=\"" -#~ msgstr "%s %s, строка %d: некорректный синтаксис, утерян \"=\"\n" - -#, fuzzy -#~ msgid "value not defined" -#~ msgstr "Сокращения не заданы.\n" - -#, fuzzy -#~ msgid "hidden" -#~ msgstr "(скрытый)" - -#, fuzzy -#~ msgid "" -#~ "%s%s: error creating option \"%s\" for server \"%s\" (server not found)" -#~ msgstr "%s параметр конфигурации \"%s\" не найден\n" - -#, fuzzy -#~ msgid "display nicklist (on buffers with nicklist enabled)" -#~ msgstr "показывать список ников (в окнах каналов)" - -#, fuzzy -#~ msgid "" -#~ "max size for nicklist (width or height, depending on nicklist_position (0 " -#~ "= no max size; if min = max and > 0, then size is fixed))" -#~ msgstr "" -#~ "максимальный размер списка пользователей (высота или ширина, в " -#~ "зависимости от look_nicklist_position (0 = без максимального размера; " -#~ "если min = max и > 0, то размер фиксированный))" - -#, fuzzy -#~ msgid "" -#~ "min size for nicklist (width or height, depending on nicklist_position (0 " -#~ "= no min size))" -#~ msgstr "" -#~ "минимальный размер списка пользователей (высота или ширина, в зависимости " -#~ "от look_nicklist_position (0 = без минимального размера))" - -#~ msgid "nicklist position (top, left, right (default), bottom)" -#~ msgstr "" -#~ "расположение списка пользователей (top, left, right(по умолчанию), bottom)" - -#~ msgid "separator between chat and nicklist" -#~ msgstr "разделитель чата и никлиста" - -#, fuzzy -#~ msgid "%sBinary file not found: \"%s\"" -#~ msgstr "%s plugin \"%s\" не найден\n" - -#, fuzzy -#~ msgid "Upgrading WeeChat..." -#~ msgstr "Обновляю WeeChat...\n" - -#, fuzzy -#~ msgid "timeout for relay request (in seconds)" -#~ msgstr "таймаут запросов dcc-соединений (в секундах)" - -#, fuzzy -#~ msgid "Open buffer with relay clients list" -#~ msgstr "Открытые буферы:\n" - -#, fuzzy -#~ msgid "Open buffer with xfer list" -#~ msgstr "Открытые буферы:\n" - -#, fuzzy -#~ msgid "%s%s: disconnecting client @ %s" -#~ msgstr "%s: Повторное подключение к серверу через %d секунд\n" - -#, fuzzy -#~ msgid " [Q] Close client list" -#~ msgstr " [Q] Закрыть окно" - -#, fuzzy -#~ msgid "use a proxy server" -#~ msgstr "имя пользователя, используемое при подключения к proxy-серверу" - -#, fuzzy -#~ msgid "text color for title bar" -#~ msgstr "цвет заголовка" - -#, fuzzy -#~ msgid "background color for title bar" -#~ msgstr "цвет фона заголовка" - -#, fuzzy -#~ msgid "background color for status bar" -#~ msgstr "цвет строки состояния" - -#, fuzzy -#~ msgid "text color for status bar delimiters" -#~ msgstr "цвет разделителей строки состояния" - -#, fuzzy -#~ msgid "text color for input line" -#~ msgstr "цвет вводимого текста" - -#, fuzzy -#~ msgid "background color for input line" -#~ msgstr "цвет вводимого текста" - -#, fuzzy -#~ msgid "text color for server name in input line" -#~ msgstr "цвет названия сервера" - -#, fuzzy -#~ msgid "text color for delimiters in input line" -#~ msgstr "цвет разделителей информационной панели" - -#, fuzzy -#~ msgid "text color for nicklist" -#~ msgstr "цвет ника" - -#, fuzzy -#~ msgid "background color for nicklist" -#~ msgstr "фон ников" - -#, fuzzy -#~ msgid "debug: \"%s\" => %d" -#~ msgstr "Сокращение \"%s\" удалено\n" - -#, fuzzy -#~ msgid "%s: debug enabled" -#~ msgstr "FIFO pipe открыт\n" - -#~ msgid "automatically log server messages" -#~ msgstr "автоматически журналировать сообщения сервера" - -#~ msgid "automatically log channel chats" -#~ msgstr "автоматически журналировать сообщения с каналов" - -#~ msgid "automatically log private chats" -#~ msgstr "автоматически журналировать приваты" - -#, fuzzy -#~ msgid "New level for buffer \"%s\" is %d" -#~ msgstr "время в буферах" - -#, fuzzy -#~ msgid "Notify level: %s => %s" -#~ msgstr "Уровни уведомления:" - -#, fuzzy -#~ msgid "Notify level: %s: removed" -#~ msgstr "Уровни уведомления:" - -#, fuzzy -#~ msgid "Error: unable to create \"%s\" directory\n" -#~ msgstr "%s не могу создать директорию \"%s\"\n" - -#, fuzzy -#~ msgid "%sError: filter not \"%s\" found" -#~ msgstr "%s plugin \"%s\" не найден\n" - -#, fuzzy -#~ msgid "Filter added" -#~ msgstr "команда users отключена" - -#, fuzzy -#~ msgid "%sError: wrong filter number" -#~ msgstr "%s неправильный номер буфера\n" - -#, fuzzy -#~ msgid "Message filtering is enabled" -#~ msgstr "Сокращения не заданы.\n" - -#, fuzzy -#~ msgid "Message filtering is disabled" -#~ msgstr "Сокращения не заданы.\n" - -#, fuzzy -#~ msgid "Filters are disabled" -#~ msgstr "команда users отключена" - -#~ msgid "" -#~ "format for input prompt ('%c' is replaced by channel or server, '%n' by " -#~ "nick and '%m' by nick modes)" -#~ msgstr "" -#~ "формат приглашения ввода ('%c' заменяется на сервер или канал, '%n' на " -#~ "ник, а '%m' - на режимы ника" - -#~ msgid "Text search (exact): " -#~ msgstr "Поиск текста (регистрозависимый): " - -#~ msgid "Text search: " -#~ msgstr "Поиск текста: " - -#, fuzzy -#~ msgid "%s: creating new speller for lang \"%s\"" -#~ msgstr "%s недостаточно памяти для сообщения в строке информации\n" - -#, fuzzy -#~ msgid "Charset: %s, %s => %s" -#~ msgstr "Сокращение \"%s\" => \"%s\" создано\n" - -#~ msgid " Paste %d lines ? [ctrl-Y] Yes [ctrl-N] No" -#~ msgstr " Вставить %d строк ? [ctrl-Y] Да [ctrl-N] Нет" - -#~ msgid "-MORE-" -#~ msgstr "-ДАЛЬШЕ-" diff --git a/po/srcfiles.cmake b/po/srcfiles.cmake index 7ae423990..2f24eb498 100644 --- a/po/srcfiles.cmake +++ b/po/srcfiles.cmake @@ -140,6 +140,8 @@ SET(WEECHAT_SOURCES ./src/plugins/irc/irc-protocol.h ./src/plugins/irc/irc-raw.c ./src/plugins/irc/irc-raw.h +./src/plugins/irc/irc-sasl.c +./src/plugins/irc/irc-sasl.h ./src/plugins/irc/irc-server.c ./src/plugins/irc/irc-server.h ./src/plugins/logger/logger.c diff --git a/po/weechat.pot b/po/weechat.pot index b1d199a21..4e74fae7b 100644 --- a/po/weechat.pot +++ b/po/weechat.pot @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-02-15 11:45+0100\n" +"POT-Creation-Date: 2010-02-18 19:55+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -3387,6 +3387,9 @@ msgstr "" msgid "password for SASL authentication" msgstr "" +msgid "timeout (in seconds) before giving up SASL authentication" +msgstr "" + msgid "automatically connect to server when WeeChat is starting" msgstr "" @@ -3731,6 +3734,11 @@ msgid "%s%s: this buffer is not a channel!" msgstr "" #, c-format +msgid "" +"%s%s: error building answer for SASL authentication, using mechanism \"%s\"" +msgstr "" + +#, c-format msgid "%s%s: client capability, server supports: %s" msgstr "" @@ -3747,6 +3755,16 @@ msgid "%s%s: client capability, enabled: %s" msgstr "" #, c-format +msgid "" +"%s%s: cannot authenticate with SASL and mechanism DH-BLOWFISH because " +"WeeChat was not built with libgcrypt support" +msgstr "" + +#, c-format +msgid "%s%s: client capability, refused: %s" +msgstr "" + +#, c-format msgid "%sYou have been invited to %s%s%s by %s%s%s" msgstr "" diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 7090a77cf..da437f2fa 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -75,6 +75,16 @@ IF(NOT DISABLE_NLS) ENDIF(GETTEXT_FOUND) ENDIF(NOT DISABLE_NLS) +# Check for libgcrypt +IF(NOT DISABLE_GCRYPT) + FIND_PACKAGE(Gcrypt) + + IF(GCRYPT_FOUND) + ADD_DEFINITIONS(-DHAVE_GCRYPT) + LIST(APPEND EXTRA_LIBS "${GCRYPT_LDFLAGS}") + ENDIF(GCRYPT_FOUND) +ENDIF(NOT DISABLE_GCRYPT) + # Check for GnuTLS IF(NOT DISABLE_GNUTLS) FIND_PACKAGE(GnuTLS) diff --git a/src/core/Makefile.am b/src/core/Makefile.am index ebbfcac64..66460b762 100644 --- a/src/core/Makefile.am +++ b/src/core/Makefile.am @@ -14,7 +14,7 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # -INCLUDES = -DLOCALEDIR=\"$(datadir)/locale\" $(GNUTLS_CFLAGS) +INCLUDES = -DLOCALEDIR=\"$(datadir)/locale\" $(GCRYPT_CFLAGS) $(GNUTLS_CFLAGS) noinst_LIBRARIES = lib_weechat_core.a diff --git a/src/core/wee-network.c b/src/core/wee-network.c index 6971c49dd..13d38c233 100644 --- a/src/core/wee-network.c +++ b/src/core/wee-network.c @@ -37,6 +37,10 @@ #include <gnutls/gnutls.h> #endif +#ifdef HAVE_GCRYPT +#include <gcrypt.h> +#endif + #include "weechat.h" #include "wee-network.h" #include "wee-hook.h" @@ -81,6 +85,11 @@ network_init () &hook_connect_gnutls_set_certificates); network_init_ok = 1; #endif +#ifdef HAVE_GCRYPT + gcry_check_version (GCRYPT_VERSION); + gcry_control (GCRYCTL_DISABLE_SECMEM, 0); + gcry_control (GCRYCTL_INITIALIZATION_FINISHED, 0); +#endif } /* diff --git a/src/core/wee-upgrade-file.c b/src/core/wee-upgrade-file.c index 0affb9457..cd453a352 100644 --- a/src/core/wee-upgrade-file.c +++ b/src/core/wee-upgrade-file.c @@ -668,7 +668,7 @@ upgrade_file_read_object (struct t_upgrade_file *upgrade_file) rc = 0; } - end: +end: if (infolist) infolist_free (infolist); if (name) diff --git a/src/gui/curses/Makefile.am b/src/gui/curses/Makefile.am index e20d34630..814f129be 100644 --- a/src/gui/curses/Makefile.am +++ b/src/gui/curses/Makefile.am @@ -26,8 +26,8 @@ weechat_curses_LDADD = ./../../core/lib_weechat_core.a \ ../../core/lib_weechat_core.a \ $(PLUGINS_LFLAGS) \ $(NCURSES_LFLAGS) \ - $(GNUTLS_LFLAGS) \ - $(IKSEMEL_LFLAGS) + $(GCRYPT_LFLAGS) \ + $(GNUTLS_LFLAGS) weechat_curses_SOURCES = gui-curses-bar-window.c \ gui-curses-chat.c \ diff --git a/src/gui/gtk/Makefile.am b/src/gui/gtk/Makefile.am index 42301e482..76e5d8fe5 100644 --- a/src/gui/gtk/Makefile.am +++ b/src/gui/gtk/Makefile.am @@ -26,8 +26,8 @@ weechat_gtk_LDADD = ./../../core/lib_weechat_core.a \ ../../core/lib_weechat_core.a \ $(PLUGINS_LFLAGS) \ $(GTK_LFLAGS) \ - $(GNUTLS_LFLAGS) \ - $(IKSEMEL_LFLAGS) + $(GCRYPT_LFLAGS) \ + $(GNUTLS_LFLAGS) weechat_gtk_SOURCES = gui-gtk-bar-window.c \ gui-gtk-chat.c \ diff --git a/src/plugins/irc/CMakeLists.txt b/src/plugins/irc/CMakeLists.txt index 3e78db57a..65a22a68f 100644 --- a/src/plugins/irc/CMakeLists.txt +++ b/src/plugins/irc/CMakeLists.txt @@ -34,6 +34,7 @@ irc-msgbuffer.c irc-msgbuffer.h irc-nick.c irc-nick.h irc-protocol.c irc-protocol.h irc-raw.c irc-raw.h +irc-sasl.c irc-sasl.h irc-server.c irc-server.h irc-upgrade.c irc-upgrade.h) SET_TARGET_PROPERTIES(irc PROPERTIES PREFIX "") @@ -41,11 +42,17 @@ SET_TARGET_PROPERTIES(irc PROPERTIES PREFIX "") CHECK_INCLUDE_FILES("regex.h" HAVE_REGEX_H) CHECK_FUNCTION_EXISTS(regexec HAVE_REGEXEC) +SET (LINK_LIBS) + IF(GNUTLS_FOUND) INCLUDE_DIRECTORIES(${GNUTLS_INCLUDE_PATH}) - TARGET_LINK_LIBRARIES(irc ${GNUTLS_LIBRARY}) -ELSE(GNUTLS_FOUND) - TARGET_LINK_LIBRARIES(irc) + LIST(APPEND LINK_LIBS ${GNUTLS_LIBRARY}) ENDIF(GNUTLS_FOUND) +IF(GCRYPT_FOUND) + LIST(APPEND LINK_LIBS gcrypt) +ENDIF(GCRYPT_FOUND) + +TARGET_LINK_LIBRARIES(irc ${LINK_LIBS}) + INSTALL(TARGETS irc LIBRARY DESTINATION ${LIBDIR}/plugins) diff --git a/src/plugins/irc/Makefile.am b/src/plugins/irc/Makefile.am index 0846eba1c..6c0777387 100644 --- a/src/plugins/irc/Makefile.am +++ b/src/plugins/irc/Makefile.am @@ -14,7 +14,7 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # -INCLUDES = -DLOCALEDIR=\"$(datadir)/locale\" $(GNUTLS_CFLAGS) +INCLUDES = -DLOCALEDIR=\"$(datadir)/locale\" $(GCRYPT_CFLAGS) $(GNUTLS_CFLAGS) libdir = ${weechat_libdir}/plugins @@ -58,12 +58,14 @@ irc_la_SOURCES = irc.c \ irc-protocol.h \ irc-raw.c \ irc-raw.h \ + irc-sasl.c \ + irc-sasl.h \ irc-server.c \ irc-server.h \ irc-upgrade.c \ irc-upgrade.h irc_la_LDFLAGS = -module -irc_la_LIBADD = $(IRC_LFLAGS) $(GNUTLS_LFLAGS) +irc_la_LIBADD = $(IRC_LFLAGS) $(GCRYPT_LFLAGS) $(GNUTLS_LFLAGS) EXTRA_DIST = CMakeLists.txt diff --git a/src/plugins/irc/irc-config.c b/src/plugins/irc/irc-config.c index aa3c4b160..8ca836f7b 100644 --- a/src/plugins/irc/irc-config.c +++ b/src/plugins/irc/irc-config.c @@ -969,7 +969,7 @@ irc_config_server_new_option (struct t_config_file *config_file, config_file, section, option_name, "integer", N_("mechanism for SASL authentication"), - "plain" /*"plain|dh-blowfish"*/, 0, 0, + "plain|dh-blowfish", 0, 0, default_value, value, null_value_allowed, NULL, NULL, @@ -1000,6 +1000,19 @@ irc_config_server_new_option (struct t_config_file *config_file, callback_change, callback_change_data, NULL, NULL); break; + case IRC_SERVER_OPTION_SASL_TIMEOUT: + new_option = weechat_config_new_option ( + config_file, section, + option_name, "integer", + N_("timeout (in seconds) before giving up SASL " + "authentication"), + NULL, 1, 3600, + default_value, value, + null_value_allowed, + NULL, NULL, + callback_change, callback_change_data, + NULL, NULL); + break; case IRC_SERVER_OPTION_AUTOCONNECT: new_option = weechat_config_new_option ( config_file, section, diff --git a/src/plugins/irc/irc-display.c b/src/plugins/irc/irc-display.c index 1476491f9..a988272b4 100644 --- a/src/plugins/irc/irc-display.c +++ b/src/plugins/irc/irc-display.c @@ -29,8 +29,9 @@ #include "irc-channel.h" #include "irc-command.h" #include "irc-config.h" -#include "irc-server.h" #include "irc-nick.h" +#include "irc-server.h" +#include "irc-sasl.h" /* diff --git a/src/plugins/irc/irc-protocol.c b/src/plugins/irc/irc-protocol.c index dccb23b6f..42f6e52ab 100644 --- a/src/plugins/irc/irc-protocol.c +++ b/src/plugins/irc/irc-protocol.c @@ -44,6 +44,7 @@ #include "irc-mode.h" #include "irc-msgbuffer.h" #include "irc-nick.h" +#include "irc-sasl.h" #include "irc-server.h" @@ -224,8 +225,7 @@ irc_protocol_cmd_authenticate (struct t_irc_server *server, const char *command, int argc, char **argv, char **argv_eol) { const char *sasl_username, *sasl_password; - char *string, *string_base64; - int length_username, length; + char *answer; /* AUTHENTICATE message looks like: AUTHENTICATE + @@ -236,7 +236,7 @@ irc_protocol_cmd_authenticate (struct t_irc_server *server, const char *command, /* make C compiler happy */ (void) command; - (void) argv_eol; + (void) argv; sasl_username = IRC_SERVER_OPTION_STRING(server, IRC_SERVER_OPTION_SASL_USERNAME); @@ -245,33 +245,33 @@ irc_protocol_cmd_authenticate (struct t_irc_server *server, const char *command, if (sasl_username && sasl_username[0] && sasl_password && sasl_password[0]) { - length_username = strlen (sasl_username); - length = ((length_username + 1) * 2) + strlen (sasl_password) + 1; - string = malloc (length); - if (string) + switch (IRC_SERVER_OPTION_INTEGER(server, + IRC_SERVER_OPTION_SASL_MECHANISM)) { - snprintf (string, length, "%s|%s|%s", - sasl_username, sasl_username, sasl_password); - string[length_username] = '\0'; - string[(length_username * 2) + 1] = '\0'; - - if (strcmp (argv[1], "+") == 0) - { - /* mechanism PLAIN */ - string_base64 = malloc (length * 2); - if (string_base64) - { - weechat_string_encode_base64 (string, length - 1, string_base64); - irc_server_sendf (server, 0, "AUTHENTICATE %s", string_base64); - free (string_base64); - } - } - else - { - /* TODO: other mechanisms */ - } - - free (string); + case IRC_SASL_MECHANISM_DH_BLOWFISH: + answer = irc_sasl_mechanism_dh_blowfish (argv_eol[1], + sasl_username, + sasl_password); + break; + case IRC_SASL_MECHANISM_PLAIN: + default: + answer = irc_sasl_mechanism_plain (sasl_username, + sasl_password); + break; + } + if (answer) + { + irc_server_sendf (server, 0, "AUTHENTICATE %s", answer); + free (answer); + } + else + { + weechat_printf (server->buffer, + _("%s%s: error building answer for " + "SASL authentication, using mechanism \"%s\""), + weechat_prefix ("error"), IRC_PLUGIN_NAME, + irc_sasl_mechanism_string[IRC_SERVER_OPTION_INTEGER(server, IRC_SERVER_OPTION_SASL_MECHANISM)]); + irc_server_sendf (server, 0, "CAP END"); } } @@ -287,11 +287,12 @@ irc_protocol_cmd_cap (struct t_irc_server *server, const char *command, int argc, char **argv, char **argv_eol) { char *ptr_caps, **items; - int num_items, sasl, i; + int num_items, sasl, i, timeout; /* CAP message looks like: :server CAP * LS :identify-msg multi-prefix sasl :server CAP * ACK :sasl + :server CAP * NAK :sasl */ IRC_PROTOCOL_MIN_ARGS(4); @@ -348,14 +349,27 @@ irc_protocol_cmd_cap (struct t_irc_server *server, const char *command, ptr_caps = (argv_eol[4][0] == ':') ? argv_eol[4] + 1 : argv_eol[4]; weechat_printf (server->buffer, _("%s%s: client capability, enabled: %s"), - weechat_prefix ("network"), - IRC_PLUGIN_NAME, + weechat_prefix ("network"), IRC_PLUGIN_NAME, ptr_caps); if (strcmp (ptr_caps, "sasl") == 0) { switch (IRC_SERVER_OPTION_INTEGER(server, IRC_SERVER_OPTION_SASL_MECHANISM)) { + case IRC_SASL_MECHANISM_DH_BLOWFISH: +#ifdef HAVE_GCRYPT + irc_server_sendf (server, 0, "AUTHENTICATE DH-BLOWFISH"); +#else + weechat_printf (server->buffer, + _("%s%s: cannot authenticate with SASL " + "and mechanism DH-BLOWFISH because " + "WeeChat was not built with " + "libgcrypt support"), + weechat_prefix ("error"), + IRC_PLUGIN_NAME); + irc_server_sendf (server, 0, "CAP END"); +#endif + break; case IRC_SASL_MECHANISM_PLAIN: default: irc_server_sendf (server, 0, "AUTHENTICATE PLAIN"); @@ -363,12 +377,28 @@ irc_protocol_cmd_cap (struct t_irc_server *server, const char *command, } if (server->hook_timer_sasl) weechat_unhook (server->hook_timer_sasl); - server->hook_timer_sasl = weechat_hook_timer (5 * 1000, 0, 1, + timeout = IRC_SERVER_OPTION_INTEGER(server, + IRC_SERVER_OPTION_SASL_TIMEOUT); + server->hook_timer_sasl = weechat_hook_timer (timeout * 1000, + 0, 1, &irc_server_timer_sasl_cb, server); } } } + else if (strcmp (argv[3], "NAK") == 0) + { + if (argc > 4) + { + ptr_caps = (argv_eol[4][0] == ':') ? argv_eol[4] + 1 : argv_eol[4]; + weechat_printf (server->buffer, + _("%s%s: client capability, refused: %s"), + weechat_prefix ("error"), IRC_PLUGIN_NAME, + ptr_caps); + if (!server->is_connected) + irc_server_sendf (server, 0, "CAP END"); + } + } return WEECHAT_RC_OK; } diff --git a/src/plugins/irc/irc-sasl.c b/src/plugins/irc/irc-sasl.c new file mode 100644 index 000000000..8d8f0c1ab --- /dev/null +++ b/src/plugins/irc/irc-sasl.c @@ -0,0 +1,236 @@ +/* + * Copyright (c) 2003-2010 by FlashCode <flashcode@flashtux.org> + * See README for License detail, AUTHORS for developers list. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +/* irc-sasl.c: SASL authentication with IRC server */ + + +#include <stdlib.h> +#include <stdio.h> +#include <string.h> +#include <arpa/inet.h> + +#ifdef HAVE_GCRYPT +#include <gcrypt.h> +#endif + +#include "../weechat-plugin.h" +#include "irc.h" +#include "irc-sasl.h" + + +char *irc_sasl_mechanism_string[IRC_NUM_SASL_MECHANISMS] = +{ "plain", "dh-blowfish" }; + + +/* + * irc_sasl_mechanism_plain: build answer for SASL authentication, using + * mechanism "PLAIN" + * Note: result must be freed after use + */ + +char * +irc_sasl_mechanism_plain (const char *sasl_username, const char *sasl_password) +{ + char *string, *answer_base64; + int length_username, length; + + length_username = strlen (sasl_username); + length = ((length_username + 1) * 2) + strlen (sasl_password) + 1; + string = malloc (length); + if (string) + { + snprintf (string, length, "%s|%s|%s", + sasl_username, sasl_username, sasl_password); + string[length_username] = '\0'; + string[(length_username * 2) + 1] = '\0'; + + answer_base64 = malloc (length * 2); + if (answer_base64) + weechat_string_encode_base64 (string, length - 1, answer_base64); + + free (string); + } + + return answer_base64; +} + +/* + * irc_sasl_mechanism_dh_blowfish: build answer for SASL authentication, using + * mechanism "DH-BLOWFISH" + * Note: result must be freed after use + * + * data_base64 is a concatenation of 3 strings, + * each string is composed of 2 bytes (length + * of string), followed by content of string: + * 1. a prime number + * 2. a generator number + * 3. server-generated public key + */ + +char * +irc_sasl_mechanism_dh_blowfish (const char *data_base64, + const char *sasl_username, + const char *sasl_password) +{ +#ifdef HAVE_GCRYPT + char *data, *answer, *ptr_answer, *answer_base64; + unsigned char *ptr_data, *secret_bin, *public_bin; + unsigned char *password_clear, *password_crypted; + int length_data, size, num_bits_prime_number, length_key; + int length_username, length_password, length_answer; + size_t num_written; + gcry_mpi_t data_prime_number, data_generator_number, data_server_pub_key; + gcry_mpi_t pub_key, priv_key, secret_mpi; + gcry_cipher_hd_t gcrypt_handle; + + data = NULL; + secret_bin = NULL; + public_bin = NULL; + password_clear = NULL; + password_crypted = NULL; + answer = NULL; + answer_base64 = NULL; + + /* decode data */ + data = malloc (strlen (data_base64) + 1); + length_data = weechat_string_decode_base64 (data_base64, data); + ptr_data = (unsigned char *)data; + + /* extract prime number */ + size = ntohs ((((unsigned int)ptr_data[1]) << 8) | ptr_data[0]); + ptr_data += 2; + length_data -= 2; + if (size > length_data) + goto end; + data_prime_number = gcry_mpi_new (size * 8); + gcry_mpi_scan (&data_prime_number, GCRYMPI_FMT_USG, ptr_data, size, NULL); + num_bits_prime_number = gcry_mpi_get_nbits (data_prime_number); + ptr_data += size; + length_data -= size; + + /* extract generator number */ + size = ntohs ((((unsigned int)ptr_data[1]) << 8) | ptr_data[0]); + ptr_data += 2; + length_data -= 2; + if (size > length_data) + goto end; + data_generator_number = gcry_mpi_new (size * 8); + gcry_mpi_scan (&data_generator_number, GCRYMPI_FMT_USG, ptr_data, size, NULL); + ptr_data += size; + length_data -= size; + + /* extract server-generated public key */ + size = ntohs ((((unsigned int)ptr_data[1]) << 8) | ptr_data[0]); + ptr_data += 2; + length_data -= 2; + if (size > length_data) + goto end; + data_server_pub_key = gcry_mpi_new (size * 8); + gcry_mpi_scan (&data_server_pub_key, GCRYMPI_FMT_USG, ptr_data, size, NULL); + ptr_data += size; + length_data -= size; + + /* generate keys */ + pub_key = gcry_mpi_new (num_bits_prime_number); + priv_key = gcry_mpi_new (num_bits_prime_number); + gcry_mpi_randomize (priv_key, num_bits_prime_number, GCRY_STRONG_RANDOM); + /* pub_key = (g ^ priv_key) % p */ + gcry_mpi_powm (pub_key, data_generator_number, priv_key, data_prime_number); + + /* compute secret_bin */ + length_key = num_bits_prime_number / 8; + secret_bin = malloc (length_key); + secret_mpi = gcry_mpi_new (num_bits_prime_number); + /* secret_mpi = (y ^ priv_key) % p */ + gcry_mpi_powm (secret_mpi, data_server_pub_key, priv_key, data_prime_number); + gcry_mpi_print (GCRYMPI_FMT_USG, secret_bin, length_key, + &num_written, secret_mpi); + + /* create public_bin */ + public_bin = malloc (length_key); + gcry_mpi_print (GCRYMPI_FMT_USG, public_bin, length_key, + &num_written, pub_key); + + /* create password buffers (clear and crypted) */ + length_password = strlen (sasl_password) + + ((8 - (strlen (sasl_password) % 8)) % 8); + password_clear = malloc (length_password); + password_crypted = malloc (length_password); + memset (password_clear, 0, length_password); + memset (password_crypted, 0, length_password); + memcpy (password_clear, sasl_password, strlen (sasl_password)); + + /* crypt password using blowfish */ + if (gcry_cipher_open (&gcrypt_handle, GCRY_CIPHER_BLOWFISH, + GCRY_CIPHER_MODE_ECB, 0) != 0) + goto end; + if (gcry_cipher_setkey (gcrypt_handle, secret_bin, length_key) != 0) + goto end; + if (gcry_cipher_encrypt (gcrypt_handle, + password_crypted, length_password, + password_clear, length_password) != 0) + goto end; + + /* build answer for server, it is concatenation of: + 1. key length (2 bytes) + 2. public key ('length_key' bytes) + 3. sasl_username ('length_username'+1 bytes) + 4. encrypted password ('length_password' bytes) + */ + length_username = strlen (sasl_username); + length_answer = 2 + length_key + length_username + 1 + length_password; + answer = malloc (length_answer); + ptr_answer = answer; + *((unsigned int *)ptr_answer) = htons(length_key); + ptr_answer += 2; + memcpy (ptr_answer, public_bin, length_key); + ptr_answer += length_key; + memcpy (ptr_answer, sasl_username, length_username + 1); + ptr_answer += length_username + 1; + memcpy (ptr_answer, password_crypted, length_password); + ptr_answer += length_password; + + /* encode answer to base64 */ + answer_base64 = malloc (length_answer * 2); + if (answer_base64) + weechat_string_encode_base64 (answer, length_answer, answer_base64); + +end: + if (data) + free (data); + if (secret_bin) + free (secret_bin); + if (public_bin) + free (public_bin); + if (password_clear) + free (password_clear); + if (password_crypted) + free (password_crypted); + if (answer) + free (answer); + + return answer_base64; +#else + /* make C compiler happy */ + (void) data_base64; + (void) sasl_username; + (void) sasl_password; + + return NULL; +#endif +} diff --git a/src/plugins/irc/irc-sasl.h b/src/plugins/irc/irc-sasl.h new file mode 100644 index 000000000..6eb3b75f9 --- /dev/null +++ b/src/plugins/irc/irc-sasl.h @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2003-2010 by FlashCode <flashcode@flashtux.org> + * See README for License detail, AUTHORS for developers list. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + + +#ifndef __WEECHAT_IRC_SASL_H +#define __WEECHAT_IRC_SASL_H 1 + +/* SASL authentication mechanisms */ + +enum t_irc_sasl_mechanism +{ + IRC_SASL_MECHANISM_PLAIN = 0, + IRC_SASL_MECHANISM_DH_BLOWFISH, + /* number of SASL mechanisms */ + IRC_NUM_SASL_MECHANISMS, +}; + +extern char *irc_sasl_mechanism_string[]; + +extern char *irc_sasl_mechanism_plain (const char *sasl_username, + const char *sasl_password); +extern char *irc_sasl_mechanism_dh_blowfish (const char *data_base64, + const char *sasl_username, + const char *sasl_password); + +#endif /* irc-sasl.h */ diff --git a/src/plugins/irc/irc-server.c b/src/plugins/irc/irc-server.c index e59fc5c3b..81172b43a 100644 --- a/src/plugins/irc/irc-server.c +++ b/src/plugins/irc/irc-server.c @@ -49,6 +49,7 @@ #include "irc-nick.h" #include "irc-protocol.h" #include "irc-raw.h" +#include "irc-sasl.h" struct t_irc_server *irc_servers = NULL; @@ -60,7 +61,7 @@ struct t_irc_message *irc_msgq_last_msg = NULL; char *irc_server_option_string[IRC_SERVER_NUM_OPTIONS] = { "addresses", "proxy", "ipv6", "ssl", "ssl_cert", "ssl_dhkey_size", "ssl_verify", - "password", "sasl_mechanism", "sasl_username", "sasl_password", + "password", "sasl_mechanism", "sasl_username", "sasl_password", "sasl_timeout", "autoconnect", "autoreconnect", "autoreconnect_delay", "nicks", "username", "realname", "local_hostname", "command", "command_delay", "autojoin", "autorejoin", "autorejoin_delay", @@ -69,15 +70,12 @@ char *irc_server_option_string[IRC_SERVER_NUM_OPTIONS] = char *irc_server_option_default[IRC_SERVER_NUM_OPTIONS] = { "", "", "off", "off", "", "2048", "on", - "", "plain", "", "", + "", "plain", "", "", "15", "off", "on", "30", "", "", "", "", "", "0", "", "off", "30", }; -char *irc_sasl_mechanism_string[IRC_NUM_SASL_MECHANISMS] = -{ "plain", /*"dh-blowfish"*/ }; - void irc_server_reconnect (struct t_irc_server *server); void irc_server_check_away (); diff --git a/src/plugins/irc/irc-server.h b/src/plugins/irc/irc-server.h index 560fa0346..0581fb555 100644 --- a/src/plugins/irc/irc-server.h +++ b/src/plugins/irc/irc-server.h @@ -44,6 +44,7 @@ enum t_irc_server_option IRC_SERVER_OPTION_SASL_MECHANISM,/* mechanism for SASL authentication */ IRC_SERVER_OPTION_SASL_USERNAME, /* username for SASL authentication */ IRC_SERVER_OPTION_SASL_PASSWORD, /* password for SASL authentication */ + IRC_SERVER_OPTION_SASL_TIMEOUT, /* timeout for SASL authentication */ IRC_SERVER_OPTION_AUTOCONNECT, /* autoconnect to server at startup */ IRC_SERVER_OPTION_AUTORECONNECT, /* autoreconnect when disconnected */ IRC_SERVER_OPTION_AUTORECONNECT_DELAY, /* delay before trying again reco */ @@ -90,16 +91,6 @@ enum t_irc_server_option #define IRC_SERVER_OUTQUEUE_PRIO_LOW 2 #define IRC_SERVER_NUM_OUTQUEUES_PRIO 2 -/* SASL authentication mechanisms */ - -enum t_irc_sasl_mechanism -{ - IRC_SASL_MECHANISM_PLAIN = 0, - /* TODO: IRC_SASL_MECHANISM_DH_BLOWFISH, */ - /* number of SASL mechanisms */ - IRC_NUM_SASL_MECHANISMS, -}; - /* output queue of messages to server (for sending slowly to server) */ struct t_irc_outqueue @@ -185,7 +176,6 @@ extern const int gnutls_prot_prio[]; extern struct t_irc_message *irc_recv_msgq, *irc_msgq_last_msg; extern char *irc_server_option_string[]; extern char *irc_server_option_default[]; -extern char *irc_sasl_mechanism_string[]; extern int irc_server_valid (struct t_irc_server *server); extern int irc_server_search_option (const char *option_name); |